From 884a24654f56bd2a7f9e049054fc63774f3769f8 Mon Sep 17 00:00:00 2001 From: Yoshi Automation Bot Date: Tue, 24 Jan 2023 08:24:17 -0800 Subject: [PATCH] feat(all): auto-regenerate discovery clients (#1821) --- .../v1/advisorynotifications-api.json | 397 ++ .../v1/advisorynotifications-gen.go | 915 +++ alertcenter/v1beta1/alertcenter-api.json | 54 +- alertcenter/v1beta1/alertcenter-gen.go | 125 +- analyticshub/v1/analyticshub-api.json | 21 +- analyticshub/v1/analyticshub-gen.go | 40 + analyticshub/v1beta1/analyticshub-api.json | 21 +- analyticshub/v1beta1/analyticshub-gen.go | 40 + .../v1/androidmanagement-api.json | 4 +- androidmanagement/v1/androidmanagement-gen.go | 4 +- androidpublisher/v3/androidpublisher-api.json | 12 +- androidpublisher/v3/androidpublisher-gen.go | 18 +- api-list.json | 15 + beyondcorp/v1alpha/beyondcorp-api.json | 8 +- beyondcorp/v1alpha/beyondcorp-gen.go | 1 + bigquery/v2/bigquery-api.json | 7 +- bigquery/v2/bigquery-gen.go | 19 +- chromemanagement/v1/chromemanagement-api.json | 4 +- chromemanagement/v1/chromemanagement-gen.go | 2 +- cloudchannel/v1/cloudchannel-api.json | 6 +- cloudchannel/v1/cloudchannel-gen.go | 26 +- compute/v0.alpha/compute-api.json | 13 +- compute/v0.alpha/compute-gen.go | 13 +- compute/v1/compute-api.json | 4 +- compute/v1/compute-gen.go | 4 +- datacatalog/v1/datacatalog-api.json | 37 +- datacatalog/v1/datacatalog-gen.go | 54 + datacatalog/v1beta1/datacatalog-api.json | 37 +- datacatalog/v1beta1/datacatalog-gen.go | 54 + dataplex/v1/dataplex-api.json | 861 ++- dataplex/v1/dataplex-gen.go | 5158 +++++++++++++---- dataproc/v1/dataproc-api.json | 52 +- dataproc/v1/dataproc-gen.go | 117 +- datastore/v1/datastore-api.json | 27 +- datastore/v1/datastore-gen.go | 36 +- datastore/v1beta3/datastore-api.json | 4 +- datastore/v1beta3/datastore-gen.go | 3 +- dialogflow/v3/dialogflow-api.json | 8 +- dialogflow/v3/dialogflow-gen.go | 2 + dialogflow/v3beta1/dialogflow-api.json | 8 +- dialogflow/v3beta1/dialogflow-gen.go | 2 + displayvideo/v2/displayvideo-api.json | 1686 +++++- displayvideo/v2/displayvideo-gen.go | 3298 ++++++++++- eventarc/v1beta1/eventarc-api.json | 6 +- eventarc/v1beta1/eventarc-gen.go | 12 +- firebase/v1beta1/firebase-api.json | 16 +- firebase/v1beta1/firebase-gen.go | 30 + firestore/v1/firestore-api.json | 23 +- firestore/v1/firestore-gen.go | 21 +- kmsinventory/v1/kmsinventory-api.json | 11 +- kmsinventory/v1/kmsinventory-gen.go | 16 +- metastore/v1/metastore-api.json | 4 +- metastore/v1/metastore-gen.go | 3 +- metastore/v1alpha/metastore-api.json | 4 +- metastore/v1alpha/metastore-gen.go | 3 +- sqladmin/v1/sqladmin-api.json | 10 +- sqladmin/v1/sqladmin-gen.go | 10 +- sqladmin/v1beta4/sqladmin-api.json | 10 +- sqladmin/v1beta4/sqladmin-gen.go | 10 +- vmmigration/v1alpha1/vmmigration-api.json | 4 +- vmmigration/v1alpha1/vmmigration-gen.go | 4 +- 61 files changed, 12040 insertions(+), 1374 deletions(-) create mode 100644 advisorynotifications/v1/advisorynotifications-api.json create mode 100644 advisorynotifications/v1/advisorynotifications-gen.go diff --git a/advisorynotifications/v1/advisorynotifications-api.json b/advisorynotifications/v1/advisorynotifications-api.json new file mode 100644 index 00000000000..a990846352d --- /dev/null +++ b/advisorynotifications/v1/advisorynotifications-api.json @@ -0,0 +1,397 @@ +{ + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "See, edit, configure, and delete your Google Cloud data and see the email address for your Google Account." + } + } + } + }, + "basePath": "", + "baseUrl": "https://advisorynotifications.googleapis.com/", + "batchPath": "batch", + "canonicalName": "Advisorynotifications", + "description": "", + "discoveryVersion": "v1", + "documentationLink": "https://cloud.google.com/advisory-notifications", + "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": "advisorynotifications:v1", + "kind": "discovery#restDescription", + "mtlsRootUrl": "https://advisorynotifications.mtls.googleapis.com/", + "name": "advisorynotifications", + "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": { + "organizations": { + "resources": { + "locations": { + "resources": { + "notifications": { + "methods": { + "get": { + "description": "Gets a notification.", + "flatPath": "v1/organizations/{organizationsId}/locations/{locationsId}/notifications/{notificationsId}", + "httpMethod": "GET", + "id": "advisorynotifications.organizations.locations.notifications.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "languageCode": { + "description": "ISO code for requested localization language. If unset, will be interpereted as \"en\". If the requested language is valid, but not supported for this notification, English will be returned with an \"Not applicable\" LocalizationState. If the ISO code is invalid (i.e. not a real language), this RPC will throw an error.", + "location": "query", + "type": "string" + }, + "name": { + "description": "Required. A name of the notification to retrieve. Format: organizations/{organization}/locations/{location}/notifications/{notification}.", + "location": "path", + "pattern": "^organizations/[^/]+/locations/[^/]+/notifications/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "GoogleCloudAdvisorynotificationsV1Notification" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists notifications under a given parent.", + "flatPath": "v1/organizations/{organizationsId}/locations/{locationsId}/notifications", + "httpMethod": "GET", + "id": "advisorynotifications.organizations.locations.notifications.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "languageCode": { + "description": "ISO code for requested localization language. If unset, will be interpereted as \"en\". If the requested language is valid, but not supported for this notification, English will be returned with an \"Not applicable\" LocalizationState. If the ISO code is invalid (i.e. not a real language), this RPC will throw an error.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "The maximum number of notifications to return. The service may return fewer than this value. If unspecified or equal to 0, at most 50 notifications will be returned. The maximum value is 50; values above 50 will be coerced to 50.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "A page token returned from a previous request. When paginating, all other parameters provided in the request must match the call that returned the page token.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The parent, which owns this collection of notifications. Must be of the form \"organizations/{organization}/locations/{location}\".", + "location": "path", + "pattern": "^organizations/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + }, + "view": { + "description": "Specifies which parts of the notification resource should be returned in the response.", + "enum": [ + "NOTIFICATION_VIEW_UNSPECIFIED", + "BASIC", + "FULL" + ], + "enumDescriptions": [ + "Not specified, equivalent to BASIC.", + "Server responses only include title, creation time and Notification ID. Note: for internal use responses also include the last update time, the latest message text and whether notification has attachments.", + "Include everything." + ], + "location": "query", + "type": "string" + } + }, + "path": "v1/{+parent}/notifications", + "response": { + "$ref": "GoogleCloudAdvisorynotificationsV1ListNotificationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } + } + } + } + }, + "revision": "20230115", + "rootUrl": "https://advisorynotifications.googleapis.com/", + "schemas": { + "GoogleCloudAdvisorynotificationsV1Attachment": { + "description": "Attachment with specific information about the issue.", + "id": "GoogleCloudAdvisorynotificationsV1Attachment", + "properties": { + "csv": { + "$ref": "GoogleCloudAdvisorynotificationsV1Csv", + "description": "A CSV file attachment. Max size is 10 MB." + }, + "displayName": { + "description": "The title of the attachment.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudAdvisorynotificationsV1Csv": { + "description": "A representation of a CSV file attachment, as a list of column headers and a list of data rows.", + "id": "GoogleCloudAdvisorynotificationsV1Csv", + "properties": { + "dataRows": { + "description": "The list of data rows in a CSV file, as string arrays rather than as a single comma-separated string.", + "items": { + "$ref": "GoogleCloudAdvisorynotificationsV1CsvCsvRow" + }, + "type": "array" + }, + "headers": { + "description": "The list of headers for data columns in a CSV file.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudAdvisorynotificationsV1CsvCsvRow": { + "description": "A representation of a single data row in a CSV file.", + "id": "GoogleCloudAdvisorynotificationsV1CsvCsvRow", + "properties": { + "entries": { + "description": "The data entries in a CSV file row, as a string array rather than a single comma-separated string.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudAdvisorynotificationsV1ListNotificationsResponse": { + "description": "Response of ListNotifications endpoint.", + "id": "GoogleCloudAdvisorynotificationsV1ListNotificationsResponse", + "properties": { + "nextPageToken": { + "description": "A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages.", + "type": "string" + }, + "notifications": { + "description": "List of notifications under a given parent.", + "items": { + "$ref": "GoogleCloudAdvisorynotificationsV1Notification" + }, + "type": "array" + }, + "totalSize": { + "description": "Estimation of a total number of notifications.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "GoogleCloudAdvisorynotificationsV1Message": { + "description": "A message which contains notification details.", + "id": "GoogleCloudAdvisorynotificationsV1Message", + "properties": { + "attachments": { + "description": "The attachments to download.", + "items": { + "$ref": "GoogleCloudAdvisorynotificationsV1Attachment" + }, + "type": "array" + }, + "body": { + "$ref": "GoogleCloudAdvisorynotificationsV1MessageBody", + "description": "The message content." + }, + "createTime": { + "description": "The Message creation timestamp.", + "format": "google-datetime", + "type": "string" + }, + "localizationTime": { + "description": "Time when Message was localized", + "format": "google-datetime", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudAdvisorynotificationsV1MessageBody": { + "description": "A message body containing text.", + "id": "GoogleCloudAdvisorynotificationsV1MessageBody", + "properties": { + "text": { + "$ref": "GoogleCloudAdvisorynotificationsV1Text", + "description": "The text content of the message body." + } + }, + "type": "object" + }, + "GoogleCloudAdvisorynotificationsV1Notification": { + "description": "A notification object for notifying customers about security and privacy issues.", + "id": "GoogleCloudAdvisorynotificationsV1Notification", + "properties": { + "createTime": { + "description": "Output only. Time the notification was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "messages": { + "description": "A list of messages in the notification.", + "items": { + "$ref": "GoogleCloudAdvisorynotificationsV1Message" + }, + "type": "array" + }, + "name": { + "description": "The resource name of the notification. Format: organizations/{organization}/locations/{location}/notifications/{notification}.", + "type": "string" + }, + "subject": { + "$ref": "GoogleCloudAdvisorynotificationsV1Subject", + "description": "The subject line of the notification." + } + }, + "type": "object" + }, + "GoogleCloudAdvisorynotificationsV1Subject": { + "description": "A subject line of a notification.", + "id": "GoogleCloudAdvisorynotificationsV1Subject", + "properties": { + "text": { + "$ref": "GoogleCloudAdvisorynotificationsV1Text", + "description": "The text content." + } + }, + "type": "object" + }, + "GoogleCloudAdvisorynotificationsV1Text": { + "description": "A text object containing the English text and its localized copies.", + "id": "GoogleCloudAdvisorynotificationsV1Text", + "properties": { + "enText": { + "description": "The English copy.", + "type": "string" + }, + "localizationState": { + "description": "Status of the localization.", + "enum": [ + "LOCALIZATION_STATE_UNSPECIFIED", + "LOCALIZATION_STATE_NOT_APPLICABLE", + "LOCALIZATION_STATE_PENDING", + "LOCALIZATION_STATE_COMPLETED" + ], + "enumDescriptions": [ + "Not used.", + "Localization is not applicable for requested language. This can happen when: - The requested language was not supported by Advisory Notifications at the time of localization (including notifications created before the localization feature was launched). - The requested language is English, so only the English text is returned.", + "Localization for requested language is in progress, and not ready yet.", + "Localization for requested language is completed." + ], + "type": "string" + }, + "localizedText": { + "description": "The requested localized copy (if applicable).", + "type": "string" + } + }, + "type": "object" + } + }, + "servicePath": "", + "title": "Advisory Notifications API", + "version": "v1", + "version_module": true +} \ No newline at end of file diff --git a/advisorynotifications/v1/advisorynotifications-gen.go b/advisorynotifications/v1/advisorynotifications-gen.go new file mode 100644 index 00000000000..1d2741b4b3d --- /dev/null +++ b/advisorynotifications/v1/advisorynotifications-gen.go @@ -0,0 +1,915 @@ +// Copyright 2023 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 advisorynotifications provides access to the Advisory Notifications API. +// +// For product documentation, see: https://cloud.google.com/advisory-notifications +// +// # Creating a client +// +// Usage example: +// +// import "google.golang.org/api/advisorynotifications/v1" +// ... +// ctx := context.Background() +// advisorynotificationsService, err := advisorynotifications.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 option.WithAPIKey: +// +// advisorynotificationsService, err := advisorynotifications.NewService(ctx, option.WithAPIKey("AIza...")) +// +// To use an OAuth token (e.g., a user token obtained via a three-legged OAuth flow), use option.WithTokenSource: +// +// config := &oauth2.Config{...} +// // ... +// token, err := config.Exchange(ctx, ...) +// advisorynotificationsService, err := advisorynotifications.NewService(ctx, option.WithTokenSource(config.TokenSource(ctx, token))) +// +// See https://godoc.org/google.golang.org/api/option/ for details on options. +package advisorynotifications // import "google.golang.org/api/advisorynotifications/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 + +const apiId = "advisorynotifications:v1" +const apiName = "advisorynotifications" +const apiVersion = "v1" +const basePath = "https://advisorynotifications.googleapis.com/" +const mtlsBasePath = "https://advisorynotifications.mtls.googleapis.com/" + +// OAuth2 scopes used by this API. +const ( + // See, edit, configure, and delete your Google Cloud data and see the + // email address for your Google Account. + CloudPlatformScope = "https://www.googleapis.com/auth/cloud-platform" +) + +// NewService creates a new Service. +func NewService(ctx context.Context, opts ...option.ClientOption) (*Service, error) { + scopesOption := internaloption.WithDefaultScopes( + "https://www.googleapis.com/auth/cloud-platform", + ) + // NOTE: prepend, so we don't override user-specified scopes. + opts = append([]option.ClientOption{scopesOption}, opts...) + opts = append(opts, internaloption.WithDefaultEndpoint(basePath)) + opts = append(opts, internaloption.WithDefaultMTLSEndpoint(mtlsBasePath)) + 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} + s.Organizations = NewOrganizationsService(s) + return s, nil +} + +type Service struct { + client *http.Client + BasePath string // API endpoint base URL + UserAgent string // optional additional User-Agent fragment + + Organizations *OrganizationsService +} + +func (s *Service) userAgent() string { + if s.UserAgent == "" { + return googleapi.UserAgent + } + return googleapi.UserAgent + " " + s.UserAgent +} + +func NewOrganizationsService(s *Service) *OrganizationsService { + rs := &OrganizationsService{s: s} + rs.Locations = NewOrganizationsLocationsService(s) + return rs +} + +type OrganizationsService struct { + s *Service + + Locations *OrganizationsLocationsService +} + +func NewOrganizationsLocationsService(s *Service) *OrganizationsLocationsService { + rs := &OrganizationsLocationsService{s: s} + rs.Notifications = NewOrganizationsLocationsNotificationsService(s) + return rs +} + +type OrganizationsLocationsService struct { + s *Service + + Notifications *OrganizationsLocationsNotificationsService +} + +func NewOrganizationsLocationsNotificationsService(s *Service) *OrganizationsLocationsNotificationsService { + rs := &OrganizationsLocationsNotificationsService{s: s} + return rs +} + +type OrganizationsLocationsNotificationsService struct { + s *Service +} + +// GoogleCloudAdvisorynotificationsV1Attachment: Attachment with +// specific information about the issue. +type GoogleCloudAdvisorynotificationsV1Attachment struct { + // Csv: A CSV file attachment. Max size is 10 MB. + Csv *GoogleCloudAdvisorynotificationsV1Csv `json:"csv,omitempty"` + + // DisplayName: The title of the attachment. + DisplayName string `json:"displayName,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Csv") 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. "Csv") 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 *GoogleCloudAdvisorynotificationsV1Attachment) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudAdvisorynotificationsV1Attachment + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudAdvisorynotificationsV1Csv: A representation of a CSV file +// attachment, as a list of column headers and a list of data rows. +type GoogleCloudAdvisorynotificationsV1Csv struct { + // DataRows: The list of data rows in a CSV file, as string arrays + // rather than as a single comma-separated string. + DataRows []*GoogleCloudAdvisorynotificationsV1CsvCsvRow `json:"dataRows,omitempty"` + + // Headers: The list of headers for data columns in a CSV file. + Headers []string `json:"headers,omitempty"` + + // ForceSendFields is a list of field names (e.g. "DataRows") 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. "DataRows") 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 *GoogleCloudAdvisorynotificationsV1Csv) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudAdvisorynotificationsV1Csv + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudAdvisorynotificationsV1CsvCsvRow: A representation of a +// single data row in a CSV file. +type GoogleCloudAdvisorynotificationsV1CsvCsvRow struct { + // Entries: The data entries in a CSV file row, as a string array rather + // than a single comma-separated string. + Entries []string `json:"entries,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Entries") 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. "Entries") 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 *GoogleCloudAdvisorynotificationsV1CsvCsvRow) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudAdvisorynotificationsV1CsvCsvRow + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudAdvisorynotificationsV1ListNotificationsResponse: Response +// of ListNotifications endpoint. +type GoogleCloudAdvisorynotificationsV1ListNotificationsResponse struct { + // NextPageToken: A token, which can be sent as `page_token` to retrieve + // the next page. If this field is omitted, there are no subsequent + // pages. + NextPageToken string `json:"nextPageToken,omitempty"` + + // Notifications: List of notifications under a given parent. + Notifications []*GoogleCloudAdvisorynotificationsV1Notification `json:"notifications,omitempty"` + + // TotalSize: Estimation of a total number of notifications. + TotalSize int64 `json:"totalSize,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "NextPageToken") 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. "NextPageToken") 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 *GoogleCloudAdvisorynotificationsV1ListNotificationsResponse) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudAdvisorynotificationsV1ListNotificationsResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudAdvisorynotificationsV1Message: A message which contains +// notification details. +type GoogleCloudAdvisorynotificationsV1Message struct { + // Attachments: The attachments to download. + Attachments []*GoogleCloudAdvisorynotificationsV1Attachment `json:"attachments,omitempty"` + + // Body: The message content. + Body *GoogleCloudAdvisorynotificationsV1MessageBody `json:"body,omitempty"` + + // CreateTime: The Message creation timestamp. + CreateTime string `json:"createTime,omitempty"` + + // LocalizationTime: Time when Message was localized + LocalizationTime string `json:"localizationTime,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Attachments") 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. "Attachments") 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 *GoogleCloudAdvisorynotificationsV1Message) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudAdvisorynotificationsV1Message + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudAdvisorynotificationsV1MessageBody: A message body +// containing text. +type GoogleCloudAdvisorynotificationsV1MessageBody struct { + // Text: The text content of the message body. + Text *GoogleCloudAdvisorynotificationsV1Text `json:"text,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Text") 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. "Text") 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 *GoogleCloudAdvisorynotificationsV1MessageBody) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudAdvisorynotificationsV1MessageBody + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudAdvisorynotificationsV1Notification: A notification object +// for notifying customers about security and privacy issues. +type GoogleCloudAdvisorynotificationsV1Notification struct { + // CreateTime: Output only. Time the notification was created. + CreateTime string `json:"createTime,omitempty"` + + // Messages: A list of messages in the notification. + Messages []*GoogleCloudAdvisorynotificationsV1Message `json:"messages,omitempty"` + + // Name: The resource name of the notification. Format: + // organizations/{organization}/locations/{location}/notifications/{notif + // ication}. + Name string `json:"name,omitempty"` + + // Subject: The subject line of the notification. + Subject *GoogleCloudAdvisorynotificationsV1Subject `json:"subject,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // 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 *GoogleCloudAdvisorynotificationsV1Notification) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudAdvisorynotificationsV1Notification + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudAdvisorynotificationsV1Subject: A subject line of a +// notification. +type GoogleCloudAdvisorynotificationsV1Subject struct { + // Text: The text content. + Text *GoogleCloudAdvisorynotificationsV1Text `json:"text,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Text") 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. "Text") 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 *GoogleCloudAdvisorynotificationsV1Subject) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudAdvisorynotificationsV1Subject + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudAdvisorynotificationsV1Text: A text object containing the +// English text and its localized copies. +type GoogleCloudAdvisorynotificationsV1Text struct { + // EnText: The English copy. + EnText string `json:"enText,omitempty"` + + // LocalizationState: Status of the localization. + // + // Possible values: + // "LOCALIZATION_STATE_UNSPECIFIED" - Not used. + // "LOCALIZATION_STATE_NOT_APPLICABLE" - Localization is not + // applicable for requested language. This can happen when: - The + // requested language was not supported by Advisory Notifications at the + // time of localization (including notifications created before the + // localization feature was launched). - The requested language is + // English, so only the English text is returned. + // "LOCALIZATION_STATE_PENDING" - Localization for requested language + // is in progress, and not ready yet. + // "LOCALIZATION_STATE_COMPLETED" - Localization for requested + // language is completed. + LocalizationState string `json:"localizationState,omitempty"` + + // LocalizedText: The requested localized copy (if applicable). + LocalizedText string `json:"localizedText,omitempty"` + + // ForceSendFields is a list of field names (e.g. "EnText") 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. "EnText") 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 *GoogleCloudAdvisorynotificationsV1Text) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudAdvisorynotificationsV1Text + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// method id "advisorynotifications.organizations.locations.notifications.get": + +type OrganizationsLocationsNotificationsGetCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Gets a notification. +// +// - name: A name of the notification to retrieve. Format: +// organizations/{organization}/locations/{location}/notifications/{not +// ification}. +func (r *OrganizationsLocationsNotificationsService) Get(name string) *OrganizationsLocationsNotificationsGetCall { + c := &OrganizationsLocationsNotificationsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// LanguageCode sets the optional parameter "languageCode": ISO code for +// requested localization language. If unset, will be interpereted as +// "en". If the requested language is valid, but not supported for this +// notification, English will be returned with an "Not applicable" +// LocalizationState. If the ISO code is invalid (i.e. not a real +// language), this RPC will throw an error. +func (c *OrganizationsLocationsNotificationsGetCall) LanguageCode(languageCode string) *OrganizationsLocationsNotificationsGetCall { + 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 *OrganizationsLocationsNotificationsGetCall) Fields(s ...googleapi.Field) *OrganizationsLocationsNotificationsGetCall { + 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 *OrganizationsLocationsNotificationsGetCall) IfNoneMatch(entityTag string) *OrganizationsLocationsNotificationsGetCall { + 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 *OrganizationsLocationsNotificationsGetCall) Context(ctx context.Context) *OrganizationsLocationsNotificationsGetCall { + 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 *OrganizationsLocationsNotificationsGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *OrganizationsLocationsNotificationsGetCall) 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, "v1/{+name}") + 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{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "advisorynotifications.organizations.locations.notifications.get" call. +// Exactly one of *GoogleCloudAdvisorynotificationsV1Notification or +// error will be non-nil. Any non-2xx status code is an error. Response +// headers are in either +// *GoogleCloudAdvisorynotificationsV1Notification.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 *OrganizationsLocationsNotificationsGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudAdvisorynotificationsV1Notification, 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 := &GoogleCloudAdvisorynotificationsV1Notification{ + 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 notification.", + // "flatPath": "v1/organizations/{organizationsId}/locations/{locationsId}/notifications/{notificationsId}", + // "httpMethod": "GET", + // "id": "advisorynotifications.organizations.locations.notifications.get", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "languageCode": { + // "description": "ISO code for requested localization language. If unset, will be interpereted as \"en\". If the requested language is valid, but not supported for this notification, English will be returned with an \"Not applicable\" LocalizationState. If the ISO code is invalid (i.e. not a real language), this RPC will throw an error.", + // "location": "query", + // "type": "string" + // }, + // "name": { + // "description": "Required. A name of the notification to retrieve. Format: organizations/{organization}/locations/{location}/notifications/{notification}.", + // "location": "path", + // "pattern": "^organizations/[^/]+/locations/[^/]+/notifications/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+name}", + // "response": { + // "$ref": "GoogleCloudAdvisorynotificationsV1Notification" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "advisorynotifications.organizations.locations.notifications.list": + +type OrganizationsLocationsNotificationsListCall struct { + s *Service + parent string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// List: Lists notifications under a given parent. +// +// - parent: The parent, which owns this collection of notifications. +// Must be of the form +// "organizations/{organization}/locations/{location}". +func (r *OrganizationsLocationsNotificationsService) List(parent string) *OrganizationsLocationsNotificationsListCall { + c := &OrganizationsLocationsNotificationsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + return c +} + +// LanguageCode sets the optional parameter "languageCode": ISO code for +// requested localization language. If unset, will be interpereted as +// "en". If the requested language is valid, but not supported for this +// notification, English will be returned with an "Not applicable" +// LocalizationState. If the ISO code is invalid (i.e. not a real +// language), this RPC will throw an error. +func (c *OrganizationsLocationsNotificationsListCall) LanguageCode(languageCode string) *OrganizationsLocationsNotificationsListCall { + c.urlParams_.Set("languageCode", languageCode) + return c +} + +// PageSize sets the optional parameter "pageSize": The maximum number +// of notifications to return. The service may return fewer than this +// value. If unspecified or equal to 0, at most 50 notifications will be +// returned. The maximum value is 50; values above 50 will be coerced to +// 50. +func (c *OrganizationsLocationsNotificationsListCall) PageSize(pageSize int64) *OrganizationsLocationsNotificationsListCall { + c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) + return c +} + +// PageToken sets the optional parameter "pageToken": A page token +// returned from a previous request. When paginating, all other +// parameters provided in the request must match the call that returned +// the page token. +func (c *OrganizationsLocationsNotificationsListCall) PageToken(pageToken string) *OrganizationsLocationsNotificationsListCall { + c.urlParams_.Set("pageToken", pageToken) + return c +} + +// View sets the optional parameter "view": Specifies which parts of the +// notification resource should be returned in the response. +// +// Possible values: +// +// "NOTIFICATION_VIEW_UNSPECIFIED" - Not specified, equivalent to +// +// BASIC. +// +// "BASIC" - Server responses only include title, creation time and +// +// Notification ID. Note: for internal use responses also include the +// last update time, the latest message text and whether notification +// has attachments. +// +// "FULL" - Include everything. +func (c *OrganizationsLocationsNotificationsListCall) View(view string) *OrganizationsLocationsNotificationsListCall { + c.urlParams_.Set("view", view) + 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 *OrganizationsLocationsNotificationsListCall) Fields(s ...googleapi.Field) *OrganizationsLocationsNotificationsListCall { + 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 *OrganizationsLocationsNotificationsListCall) IfNoneMatch(entityTag string) *OrganizationsLocationsNotificationsListCall { + 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 *OrganizationsLocationsNotificationsListCall) Context(ctx context.Context) *OrganizationsLocationsNotificationsListCall { + 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 *OrganizationsLocationsNotificationsListCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *OrganizationsLocationsNotificationsListCall) 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, "v1/{+parent}/notifications") + 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{ + "parent": c.parent, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "advisorynotifications.organizations.locations.notifications.list" call. +// Exactly one of +// *GoogleCloudAdvisorynotificationsV1ListNotificationsResponse or error +// will be non-nil. Any non-2xx status code is an error. Response +// headers are in either +// *GoogleCloudAdvisorynotificationsV1ListNotificationsResponse.ServerRes +// ponse.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 *OrganizationsLocationsNotificationsListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudAdvisorynotificationsV1ListNotificationsResponse, 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 := &GoogleCloudAdvisorynotificationsV1ListNotificationsResponse{ + 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 notifications under a given parent.", + // "flatPath": "v1/organizations/{organizationsId}/locations/{locationsId}/notifications", + // "httpMethod": "GET", + // "id": "advisorynotifications.organizations.locations.notifications.list", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "languageCode": { + // "description": "ISO code for requested localization language. If unset, will be interpereted as \"en\". If the requested language is valid, but not supported for this notification, English will be returned with an \"Not applicable\" LocalizationState. If the ISO code is invalid (i.e. not a real language), this RPC will throw an error.", + // "location": "query", + // "type": "string" + // }, + // "pageSize": { + // "description": "The maximum number of notifications to return. The service may return fewer than this value. If unspecified or equal to 0, at most 50 notifications will be returned. The maximum value is 50; values above 50 will be coerced to 50.", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "pageToken": { + // "description": "A page token returned from a previous request. When paginating, all other parameters provided in the request must match the call that returned the page token.", + // "location": "query", + // "type": "string" + // }, + // "parent": { + // "description": "Required. The parent, which owns this collection of notifications. Must be of the form \"organizations/{organization}/locations/{location}\".", + // "location": "path", + // "pattern": "^organizations/[^/]+/locations/[^/]+$", + // "required": true, + // "type": "string" + // }, + // "view": { + // "description": "Specifies which parts of the notification resource should be returned in the response.", + // "enum": [ + // "NOTIFICATION_VIEW_UNSPECIFIED", + // "BASIC", + // "FULL" + // ], + // "enumDescriptions": [ + // "Not specified, equivalent to BASIC.", + // "Server responses only include title, creation time and Notification ID. Note: for internal use responses also include the last update time, the latest message text and whether notification has attachments.", + // "Include everything." + // ], + // "location": "query", + // "type": "string" + // } + // }, + // "path": "v1/{+parent}/notifications", + // "response": { + // "$ref": "GoogleCloudAdvisorynotificationsV1ListNotificationsResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// 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 *OrganizationsLocationsNotificationsListCall) Pages(ctx context.Context, f func(*GoogleCloudAdvisorynotificationsV1ListNotificationsResponse) 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) + } +} diff --git a/alertcenter/v1beta1/alertcenter-api.json b/alertcenter/v1beta1/alertcenter-api.json index f7aa260332a..a7782ba5ce4 100644 --- a/alertcenter/v1beta1/alertcenter-api.json +++ b/alertcenter/v1beta1/alertcenter-api.json @@ -159,7 +159,7 @@ "type": "string" }, "customerId": { - "description": "Optional. The unique identifier of the Google Workspace organization account of the customer the alert is associated with. Inferred from the caller identity if not provided.", + "description": "Optional. The unique identifier of the Google Workspace account of the customer the alert is associated with. The `customer_id` must have the initial \"C\" stripped (for example, `046psxkn`). Inferred from the caller identity if not provided. [Find your customer ID](https://support.google.com/cloudidentity/answer/10070793).", "location": "query", "type": "string" } @@ -188,7 +188,7 @@ "type": "string" }, "customerId": { - "description": "Optional. The unique identifier of the Google Workspace organization account of the customer the alert is associated with. Inferred from the caller identity if not provided.", + "description": "Optional. The unique identifier of the Google Workspace account of the customer the alert is associated with. The `customer_id` must have the initial \"C\" stripped (for example, `046psxkn`). Inferred from the caller identity if not provided. [Find your customer ID](https://support.google.com/cloudidentity/answer/10070793).", "location": "query", "type": "string" } @@ -217,7 +217,7 @@ "type": "string" }, "customerId": { - "description": "Optional. The unique identifier of the Google Workspace organization account of the customer the alert metadata is associated with. Inferred from the caller identity if not provided.", + "description": "Optional. The unique identifier of the Google Workspace account of the customer the alert metadata is associated with. The `customer_id` must have the initial \"C\" stripped (for example, `046psxkn`). Inferred from the caller identity if not provided. [Find your customer ID](https://support.google.com/cloudidentity/answer/10070793).", "location": "query", "type": "string" } @@ -238,7 +238,7 @@ "parameterOrder": [], "parameters": { "customerId": { - "description": "Optional. The unique identifier of the Google Workspace organization account of the customer the alerts are associated with. Inferred from the caller identity if not provided.", + "description": "Optional. The unique identifier of the Google Workspace account of the customer the alerts are associated with. The `customer_id` must have the initial \"C\" stripped (for example, `046psxkn`). Inferred from the caller identity if not provided. [Find your customer ID](https://support.google.com/cloudidentity/answer/10070793).", "location": "query", "type": "string" }, @@ -319,7 +319,7 @@ "type": "string" }, "customerId": { - "description": "Optional. The unique identifier of the Google Workspace organization account of the customer the alert is associated with. Inferred from the caller identity if not provided.", + "description": "Optional. The unique identifier of the Google Workspace account of the customer the alert is associated with. The `customer_id` must have the initial \"C\" stripped (for example, `046psxkn`). Inferred from the caller identity if not provided. [Find your customer ID](https://support.google.com/cloudidentity/answer/10070793).", "location": "query", "type": "string" } @@ -351,7 +351,7 @@ "type": "string" }, "customerId": { - "description": "Optional. The unique identifier of the Google Workspace organization account of the customer the alert feedback are associated with. Inferred from the caller identity if not provided.", + "description": "Optional. The unique identifier of the Google Workspace account of the customer the alert is associated with. The `customer_id` must have the initial \"C\" stripped (for example, `046psxkn`). Inferred from the caller identity if not provided. [Find your customer ID](https://support.google.com/cloudidentity/answer/10070793).", "location": "query", "type": "string" }, @@ -383,7 +383,7 @@ "parameterOrder": [], "parameters": { "customerId": { - "description": "Optional. The unique identifier of the Google Workspace organization account of the customer the alert settings are associated with. Inferred from the caller identity if not provided.", + "description": "Optional. The unique identifier of the Google Workspace account of the customer the alert settings are associated with. The `customer_id` must/ have the initial \"C\" stripped (for example, `046psxkn`). Inferred from the caller identity if not provided. [Find your customer ID](https://support.google.com/cloudidentity/answer/10070793).", "location": "query", "type": "string" } @@ -404,7 +404,7 @@ "parameterOrder": [], "parameters": { "customerId": { - "description": "Optional. The unique identifier of the Google Workspace organization account of the customer the alert settings are associated with. Inferred from the caller identity if not provided.", + "description": "Optional. The unique identifier of the Google Workspace account of the customer the alert settings are associated with. The `customer_id` must have the initial \"C\" stripped (for example, `046psxkn`). Inferred from the caller identity if not provided. [Find your customer ID](https://support.google.com/cloudidentity/answer/10070793).", "location": "query", "type": "string" } @@ -423,7 +423,7 @@ } } }, - "revision": "20221219", + "revision": "20230123", "rootUrl": "https://alertcenter.googleapis.com/", "schemas": { "AbuseDetected": { @@ -630,7 +630,7 @@ "type": "string" }, "customerId": { - "description": "Output only. The unique identifier of the Google account of the customer.", + "description": "Output only. The unique identifier of the Google Workspace account of the customer.", "type": "string" }, "data": { @@ -697,7 +697,7 @@ "type": "string" }, "customerId": { - "description": "Output only. The unique identifier of the Google account of the customer.", + "description": "Output only. The unique identifier of the Google Workspace account of the customer.", "type": "string" }, "email": { @@ -740,7 +740,7 @@ "type": "string" }, "customerId": { - "description": "Output only. The unique identifier of the Google account of the customer.", + "description": "Output only. The unique identifier of the Google Workspace account of the customer.", "type": "string" }, "etag": { @@ -915,14 +915,14 @@ "id": "BatchDeleteAlertsRequest", "properties": { "alertId": { - "description": "Required. list of alert IDs.", + "description": "Required. The list of alert IDs to delete.", "items": { "type": "string" }, "type": "array" }, "customerId": { - "description": "Optional. The unique identifier of the Google Workspace organization account of the customer the alerts are associated with.", + "description": "Optional. The unique identifier of the Google Workspace account of the customer the alerts are associated with. The `customer_id` must have the initial \"C\" stripped (for example, `046psxkn`). Inferred from the caller identity if not provided. [Find your customer ID](https://support.google.com/cloudidentity/answer/10070793).", "type": "string" } }, @@ -936,7 +936,7 @@ "additionalProperties": { "$ref": "Status" }, - "description": "The status details for each failed alert_id.", + "description": "The status details for each failed `alert_id`.", "type": "object" }, "successAlertIds": { @@ -954,14 +954,14 @@ "id": "BatchUndeleteAlertsRequest", "properties": { "alertId": { - "description": "Required. list of alert IDs.", + "description": "Required. The list of alert IDs to undelete.", "items": { "type": "string" }, "type": "array" }, "customerId": { - "description": "Optional. The unique identifier of the Google Workspace organization account of the customer the alerts are associated with.", + "description": "Optional. The unique identifier of the Google Workspace account of the customer the alerts are associated with. The `customer_id` must have the initial \"C\" stripped (for example, `046psxkn`). Inferred from the caller identity if not provided. [Find your customer ID](https://support.google.com/cloudidentity/answer/10070793).", "type": "string" } }, @@ -975,7 +975,7 @@ "additionalProperties": { "$ref": "Status" }, - "description": "The status details for each failed alert_id.", + "description": "The status details for each failed `alert_id`.", "type": "object" }, "successAlertIds": { @@ -1604,19 +1604,19 @@ "ACTION_TYPE_UNSPECIFIED", "DRIVE_BLOCK_EXTERNAL_SHARING", "DRIVE_WARN_ON_EXTERNAL_SHARING", + "DELETE_WEBPROTECT_EVIDENCE", "ALERT", "RULE_ACTIVATE", - "RULE_DEACTIVATE", - "DELETE_WEBPROTECT_EVIDENCE" + "RULE_DEACTIVATE" ], "enumDescriptions": [ "Action type is unspecified.", "Block sharing a file externally.", "Show a warning message when sharing a file externally.", + "Delete web protect evidence file", "Send alert.", "Activate Rule Action", - "Deactivate Rule Action", - "Chrome actions Delete web protect evidence file" + "Deactivate Rule Action" ], "type": "string" }, @@ -1648,19 +1648,19 @@ "ACTION_TYPE_UNSPECIFIED", "DRIVE_BLOCK_EXTERNAL_SHARING", "DRIVE_WARN_ON_EXTERNAL_SHARING", + "DELETE_WEBPROTECT_EVIDENCE", "ALERT", "RULE_ACTIVATE", - "RULE_DEACTIVATE", - "DELETE_WEBPROTECT_EVIDENCE" + "RULE_DEACTIVATE" ], "enumDescriptions": [ "Action type is unspecified.", "Block sharing a file externally.", "Show a warning message when sharing a file externally.", + "Delete web protect evidence file", "Send alert.", "Activate Rule Action", - "Deactivate Rule Action", - "Chrome actions Delete web protect evidence file" + "Deactivate Rule Action" ], "type": "string" }, @@ -1942,7 +1942,7 @@ "id": "UndeleteAlertRequest", "properties": { "customerId": { - "description": "Optional. The unique identifier of the Google Workspace organization account of the customer the alert is associated with. Inferred from the caller identity if not provided.", + "description": "Optional. The unique identifier of the Google Workspace account of the customer the alert is associated with. The `customer_id` must have the initial \"C\" stripped (for example, `046psxkn`). Inferred from the caller identity if not provided. [Find your customer ID](https://support.google.com/cloudidentity/answer/10070793).", "type": "string" } }, diff --git a/alertcenter/v1beta1/alertcenter-gen.go b/alertcenter/v1beta1/alertcenter-gen.go index d9fcfc49d0f..a7f804aa71d 100644 --- a/alertcenter/v1beta1/alertcenter-gen.go +++ b/alertcenter/v1beta1/alertcenter-gen.go @@ -436,8 +436,8 @@ type Alert struct { // CreateTime: Output only. The time this alert was created. CreateTime string `json:"createTime,omitempty"` - // CustomerId: Output only. The unique identifier of the Google account - // of the customer. + // CustomerId: Output only. The unique identifier of the Google + // Workspace account of the customer. CustomerId string `json:"customerId,omitempty"` // Data: Optional. The data associated with this alert, for example @@ -527,8 +527,8 @@ type AlertFeedback struct { // CreateTime: Output only. The time this feedback was created. CreateTime string `json:"createTime,omitempty"` - // CustomerId: Output only. The unique identifier of the Google account - // of the customer. + // CustomerId: Output only. The unique identifier of the Google + // Workspace account of the customer. CustomerId string `json:"customerId,omitempty"` // Email: Output only. The email of the user that provided the feedback. @@ -582,8 +582,8 @@ type AlertMetadata struct { // Assignee: The email address of the user assigned to the alert. Assignee string `json:"assignee,omitempty"` - // CustomerId: Output only. The unique identifier of the Google account - // of the customer. + // CustomerId: Output only. The unique identifier of the Google + // Workspace account of the customer. CustomerId string `json:"customerId,omitempty"` // Etag: Optional. `etag` is used for optimistic concurrency control as @@ -873,11 +873,15 @@ func (s *BadWhitelist) MarshalJSON() ([]byte, error) { // BatchDeleteAlertsRequest: A request to perform batch delete on // alerts. type BatchDeleteAlertsRequest struct { - // AlertId: Required. list of alert IDs. + // AlertId: Required. The list of alert IDs to delete. AlertId []string `json:"alertId,omitempty"` // CustomerId: Optional. The unique identifier of the Google Workspace - // organization account of the customer the alerts are associated with. + // account of the customer the alerts are associated with. The + // `customer_id` must have the initial "C" stripped (for example, + // `046psxkn`). Inferred from the caller identity if not provided. Find + // your customer ID + // (https://support.google.com/cloudidentity/answer/10070793). CustomerId string `json:"customerId,omitempty"` // ForceSendFields is a list of field names (e.g. "AlertId") to @@ -906,7 +910,7 @@ func (s *BatchDeleteAlertsRequest) MarshalJSON() ([]byte, error) { // BatchDeleteAlertsResponse: Response to batch delete operation on // alerts. type BatchDeleteAlertsResponse struct { - // FailedAlertStatus: The status details for each failed alert_id. + // FailedAlertStatus: The status details for each failed `alert_id`. FailedAlertStatus map[string]Status `json:"failedAlertStatus,omitempty"` // SuccessAlertIds: The successful list of alert IDs. @@ -943,11 +947,15 @@ func (s *BatchDeleteAlertsResponse) MarshalJSON() ([]byte, error) { // BatchUndeleteAlertsRequest: A request to perform batch undelete on // alerts. type BatchUndeleteAlertsRequest struct { - // AlertId: Required. list of alert IDs. + // AlertId: Required. The list of alert IDs to undelete. AlertId []string `json:"alertId,omitempty"` // CustomerId: Optional. The unique identifier of the Google Workspace - // organization account of the customer the alerts are associated with. + // account of the customer the alerts are associated with. The + // `customer_id` must have the initial "C" stripped (for example, + // `046psxkn`). Inferred from the caller identity if not provided. Find + // your customer ID + // (https://support.google.com/cloudidentity/answer/10070793). CustomerId string `json:"customerId,omitempty"` // ForceSendFields is a list of field names (e.g. "AlertId") to @@ -976,7 +984,7 @@ func (s *BatchUndeleteAlertsRequest) MarshalJSON() ([]byte, error) { // BatchUndeleteAlertsResponse: Response to batch undelete operation on // alerts. type BatchUndeleteAlertsResponse struct { - // FailedAlertStatus: The status details for each failed alert_id. + // FailedAlertStatus: The status details for each failed `alert_id`. FailedAlertStatus map[string]Status `json:"failedAlertStatus,omitempty"` // SuccessAlertIds: The successful list of alert IDs. @@ -2082,11 +2090,10 @@ type RuleViolationInfo struct { // "DRIVE_BLOCK_EXTERNAL_SHARING" - Block sharing a file externally. // "DRIVE_WARN_ON_EXTERNAL_SHARING" - Show a warning message when // sharing a file externally. + // "DELETE_WEBPROTECT_EVIDENCE" - Delete web protect evidence file // "ALERT" - Send alert. // "RULE_ACTIVATE" - Activate Rule Action // "RULE_DEACTIVATE" - Deactivate Rule Action - // "DELETE_WEBPROTECT_EVIDENCE" - Chrome actions Delete web protect - // evidence file SuppressedActionTypes []string `json:"suppressedActionTypes,omitempty"` // Trigger: Trigger of the rule. @@ -2107,11 +2114,10 @@ type RuleViolationInfo struct { // "DRIVE_BLOCK_EXTERNAL_SHARING" - Block sharing a file externally. // "DRIVE_WARN_ON_EXTERNAL_SHARING" - Show a warning message when // sharing a file externally. + // "DELETE_WEBPROTECT_EVIDENCE" - Delete web protect evidence file // "ALERT" - Send alert. // "RULE_ACTIVATE" - Activate Rule Action // "RULE_DEACTIVATE" - Deactivate Rule Action - // "DELETE_WEBPROTECT_EVIDENCE" - Chrome actions Delete web protect - // evidence file TriggeredActionTypes []string `json:"triggeredActionTypes,omitempty"` // TriggeringUserEmail: Email of the user who caused the violation. @@ -2605,8 +2611,11 @@ func (s *TransferMisconfiguration) MarshalJSON() ([]byte, error) { // marked for deletion. type UndeleteAlertRequest struct { // CustomerId: Optional. The unique identifier of the Google Workspace - // organization account of the customer the alert is associated with. - // Inferred from the caller identity if not provided. + // account of the customer the alert is associated with. The + // `customer_id` must have the initial "C" stripped (for example, + // `046psxkn`). Inferred from the caller identity if not provided. Find + // your customer ID + // (https://support.google.com/cloudidentity/answer/10070793). CustomerId string `json:"customerId,omitempty"` // ForceSendFields is a list of field names (e.g. "CustomerId") to @@ -3116,9 +3125,11 @@ func (r *AlertsService) Delete(alertId string) *AlertsDeleteCall { } // CustomerId sets the optional parameter "customerId": The unique -// identifier of the Google Workspace organization account of the -// customer the alert is associated with. Inferred from the caller -// identity if not provided. +// identifier of the Google Workspace account of the customer the alert +// is associated with. The `customer_id` must have the initial "C" +// stripped (for example, `046psxkn`). Inferred from the caller identity +// if not provided. Find your customer ID +// (https://support.google.com/cloudidentity/answer/10070793). func (c *AlertsDeleteCall) CustomerId(customerId string) *AlertsDeleteCall { c.urlParams_.Set("customerId", customerId) return c @@ -3225,7 +3236,7 @@ func (c *AlertsDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) { // "type": "string" // }, // "customerId": { - // "description": "Optional. The unique identifier of the Google Workspace organization account of the customer the alert is associated with. Inferred from the caller identity if not provided.", + // "description": "Optional. The unique identifier of the Google Workspace account of the customer the alert is associated with. The `customer_id` must have the initial \"C\" stripped (for example, `046psxkn`). Inferred from the caller identity if not provided. [Find your customer ID](https://support.google.com/cloudidentity/answer/10070793).", // "location": "query", // "type": "string" // } @@ -3263,9 +3274,11 @@ func (r *AlertsService) Get(alertId string) *AlertsGetCall { } // CustomerId sets the optional parameter "customerId": The unique -// identifier of the Google Workspace organization account of the -// customer the alert is associated with. Inferred from the caller -// identity if not provided. +// identifier of the Google Workspace account of the customer the alert +// is associated with. The `customer_id` must have the initial "C" +// stripped (for example, `046psxkn`). Inferred from the caller identity +// if not provided. Find your customer ID +// (https://support.google.com/cloudidentity/answer/10070793). func (c *AlertsGetCall) CustomerId(customerId string) *AlertsGetCall { c.urlParams_.Set("customerId", customerId) return c @@ -3385,7 +3398,7 @@ func (c *AlertsGetCall) Do(opts ...googleapi.CallOption) (*Alert, error) { // "type": "string" // }, // "customerId": { - // "description": "Optional. The unique identifier of the Google Workspace organization account of the customer the alert is associated with. Inferred from the caller identity if not provided.", + // "description": "Optional. The unique identifier of the Google Workspace account of the customer the alert is associated with. The `customer_id` must have the initial \"C\" stripped (for example, `046psxkn`). Inferred from the caller identity if not provided. [Find your customer ID](https://support.google.com/cloudidentity/answer/10070793).", // "location": "query", // "type": "string" // } @@ -3423,9 +3436,11 @@ func (r *AlertsService) GetMetadata(alertId string) *AlertsGetMetadataCall { } // CustomerId sets the optional parameter "customerId": The unique -// identifier of the Google Workspace organization account of the -// customer the alert metadata is associated with. Inferred from the -// caller identity if not provided. +// identifier of the Google Workspace account of the customer the alert +// metadata is associated with. The `customer_id` must have the initial +// "C" stripped (for example, `046psxkn`). Inferred from the caller +// identity if not provided. Find your customer ID +// (https://support.google.com/cloudidentity/answer/10070793). func (c *AlertsGetMetadataCall) CustomerId(customerId string) *AlertsGetMetadataCall { c.urlParams_.Set("customerId", customerId) return c @@ -3545,7 +3560,7 @@ func (c *AlertsGetMetadataCall) Do(opts ...googleapi.CallOption) (*AlertMetadata // "type": "string" // }, // "customerId": { - // "description": "Optional. The unique identifier of the Google Workspace organization account of the customer the alert metadata is associated with. Inferred from the caller identity if not provided.", + // "description": "Optional. The unique identifier of the Google Workspace account of the customer the alert metadata is associated with. The `customer_id` must have the initial \"C\" stripped (for example, `046psxkn`). Inferred from the caller identity if not provided. [Find your customer ID](https://support.google.com/cloudidentity/answer/10070793).", // "location": "query", // "type": "string" // } @@ -3578,9 +3593,11 @@ func (r *AlertsService) List() *AlertsListCall { } // CustomerId sets the optional parameter "customerId": The unique -// identifier of the Google Workspace organization account of the -// customer the alerts are associated with. Inferred from the caller -// identity if not provided. +// identifier of the Google Workspace account of the customer the alerts +// are associated with. The `customer_id` must have the initial "C" +// stripped (for example, `046psxkn`). Inferred from the caller identity +// if not provided. Find your customer ID +// (https://support.google.com/cloudidentity/answer/10070793). func (c *AlertsListCall) CustomerId(customerId string) *AlertsListCall { c.urlParams_.Set("customerId", customerId) return c @@ -3727,7 +3744,7 @@ func (c *AlertsListCall) Do(opts ...googleapi.CallOption) (*ListAlertsResponse, // "parameterOrder": [], // "parameters": { // "customerId": { - // "description": "Optional. The unique identifier of the Google Workspace organization account of the customer the alerts are associated with. Inferred from the caller identity if not provided.", + // "description": "Optional. The unique identifier of the Google Workspace account of the customer the alerts are associated with. The `customer_id` must have the initial \"C\" stripped (for example, `046psxkn`). Inferred from the caller identity if not provided. [Find your customer ID](https://support.google.com/cloudidentity/answer/10070793).", // "location": "query", // "type": "string" // }, @@ -3956,9 +3973,11 @@ func (r *AlertsFeedbackService) Create(alertId string, alertfeedback *AlertFeedb } // CustomerId sets the optional parameter "customerId": The unique -// identifier of the Google Workspace organization account of the -// customer the alert is associated with. Inferred from the caller -// identity if not provided. +// identifier of the Google Workspace account of the customer the alert +// is associated with. The `customer_id` must have the initial "C" +// stripped (for example, `046psxkn`). Inferred from the caller identity +// if not provided. Find your customer ID +// (https://support.google.com/cloudidentity/answer/10070793). func (c *AlertsFeedbackCreateCall) CustomerId(customerId string) *AlertsFeedbackCreateCall { c.urlParams_.Set("customerId", customerId) return c @@ -4070,7 +4089,7 @@ func (c *AlertsFeedbackCreateCall) Do(opts ...googleapi.CallOption) (*AlertFeedb // "type": "string" // }, // "customerId": { - // "description": "Optional. The unique identifier of the Google Workspace organization account of the customer the alert is associated with. Inferred from the caller identity if not provided.", + // "description": "Optional. The unique identifier of the Google Workspace account of the customer the alert is associated with. The `customer_id` must have the initial \"C\" stripped (for example, `046psxkn`). Inferred from the caller identity if not provided. [Find your customer ID](https://support.google.com/cloudidentity/answer/10070793).", // "location": "query", // "type": "string" // } @@ -4112,9 +4131,11 @@ func (r *AlertsFeedbackService) List(alertId string) *AlertsFeedbackListCall { } // CustomerId sets the optional parameter "customerId": The unique -// identifier of the Google Workspace organization account of the -// customer the alert feedback are associated with. Inferred from the -// caller identity if not provided. +// identifier of the Google Workspace account of the customer the alert +// is associated with. The `customer_id` must have the initial "C" +// stripped (for example, `046psxkn`). Inferred from the caller identity +// if not provided. Find your customer ID +// (https://support.google.com/cloudidentity/answer/10070793). func (c *AlertsFeedbackListCall) CustomerId(customerId string) *AlertsFeedbackListCall { c.urlParams_.Set("customerId", customerId) return c @@ -4244,7 +4265,7 @@ func (c *AlertsFeedbackListCall) Do(opts ...googleapi.CallOption) (*ListAlertFee // "type": "string" // }, // "customerId": { - // "description": "Optional. The unique identifier of the Google Workspace organization account of the customer the alert feedback are associated with. Inferred from the caller identity if not provided.", + // "description": "Optional. The unique identifier of the Google Workspace account of the customer the alert is associated with. The `customer_id` must have the initial \"C\" stripped (for example, `046psxkn`). Inferred from the caller identity if not provided. [Find your customer ID](https://support.google.com/cloudidentity/answer/10070793).", // "location": "query", // "type": "string" // }, @@ -4282,9 +4303,11 @@ func (r *V1beta1Service) GetSettings() *V1beta1GetSettingsCall { } // CustomerId sets the optional parameter "customerId": The unique -// identifier of the Google Workspace organization account of the -// customer the alert settings are associated with. Inferred from the -// caller identity if not provided. +// identifier of the Google Workspace account of the customer the alert +// settings are associated with. The `customer_id` must/ have the +// initial "C" stripped (for example, `046psxkn`). Inferred from the +// caller identity if not provided. Find your customer ID +// (https://support.google.com/cloudidentity/answer/10070793). func (c *V1beta1GetSettingsCall) CustomerId(customerId string) *V1beta1GetSettingsCall { c.urlParams_.Set("customerId", customerId) return c @@ -4393,7 +4416,7 @@ func (c *V1beta1GetSettingsCall) Do(opts ...googleapi.CallOption) (*Settings, er // "parameterOrder": [], // "parameters": { // "customerId": { - // "description": "Optional. The unique identifier of the Google Workspace organization account of the customer the alert settings are associated with. Inferred from the caller identity if not provided.", + // "description": "Optional. The unique identifier of the Google Workspace account of the customer the alert settings are associated with. The `customer_id` must/ have the initial \"C\" stripped (for example, `046psxkn`). Inferred from the caller identity if not provided. [Find your customer ID](https://support.google.com/cloudidentity/answer/10070793).", // "location": "query", // "type": "string" // } @@ -4427,9 +4450,11 @@ func (r *V1beta1Service) UpdateSettings(settings *Settings) *V1beta1UpdateSettin } // CustomerId sets the optional parameter "customerId": The unique -// identifier of the Google Workspace organization account of the -// customer the alert settings are associated with. Inferred from the -// caller identity if not provided. +// identifier of the Google Workspace account of the customer the alert +// settings are associated with. The `customer_id` must have the initial +// "C" stripped (for example, `046psxkn`). Inferred from the caller +// identity if not provided. Find your customer ID +// (https://support.google.com/cloudidentity/answer/10070793). func (c *V1beta1UpdateSettingsCall) CustomerId(customerId string) *V1beta1UpdateSettingsCall { c.urlParams_.Set("customerId", customerId) return c @@ -4530,7 +4555,7 @@ func (c *V1beta1UpdateSettingsCall) Do(opts ...googleapi.CallOption) (*Settings, // "parameterOrder": [], // "parameters": { // "customerId": { - // "description": "Optional. The unique identifier of the Google Workspace organization account of the customer the alert settings are associated with. Inferred from the caller identity if not provided.", + // "description": "Optional. The unique identifier of the Google Workspace account of the customer the alert settings are associated with. The `customer_id` must have the initial \"C\" stripped (for example, `046psxkn`). Inferred from the caller identity if not provided. [Find your customer ID](https://support.google.com/cloudidentity/answer/10070793).", // "location": "query", // "type": "string" // } diff --git a/analyticshub/v1/analyticshub-api.json b/analyticshub/v1/analyticshub-api.json index b6743b54de0..e113cd5ac2a 100644 --- a/analyticshub/v1/analyticshub-api.json +++ b/analyticshub/v1/analyticshub-api.json @@ -695,7 +695,7 @@ } } }, - "revision": "20220920", + "revision": "20230116", "rootUrl": "https://analyticshub.googleapis.com/", "schemas": { "AuditConfig": { @@ -1081,6 +1081,10 @@ "description": "Optional. Email or URL of the request access of the listing. Subscribers can use this reference to request access. Max Length: 1000 bytes.", "type": "string" }, + "restrictedExportConfig": { + "$ref": "RestrictedExportConfig", + "description": "Optional. If set, restricted export configuration will be propagated and enforced on the linked dataset." + }, "state": { "description": "Output only. Current state of the listing.", "enum": [ @@ -1187,6 +1191,21 @@ }, "type": "object" }, + "RestrictedExportConfig": { + "description": "Restricted export config, used to configure restricted export on linked dataset.", + "id": "RestrictedExportConfig", + "properties": { + "restrictDirectTableAccess": { + "description": "If true, restrict direct table access(read api/tabledata.list) on linked table.", + "type": "boolean" + }, + "restrictQueryResult": { + "description": "If true, restrict export of query result derived from restricted linked dataset table.", + "type": "boolean" + } + }, + "type": "object" + }, "SetIamPolicyRequest": { "description": "Request message for `SetIamPolicy` method.", "id": "SetIamPolicyRequest", diff --git a/analyticshub/v1/analyticshub-gen.go b/analyticshub/v1/analyticshub-gen.go index c8e1e0fb5fa..6daa9574dc2 100644 --- a/analyticshub/v1/analyticshub-gen.go +++ b/analyticshub/v1/analyticshub-gen.go @@ -948,6 +948,10 @@ type Listing struct { // Length: 1000 bytes. RequestAccess string `json:"requestAccess,omitempty"` + // RestrictedExportConfig: Optional. If set, restricted export + // configuration will be propagated and enforced on the linked dataset. + RestrictedExportConfig *RestrictedExportConfig `json:"restrictedExportConfig,omitempty"` + // State: Output only. Current state of the listing. // // Possible values: @@ -1179,6 +1183,42 @@ func (s *Publisher) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// RestrictedExportConfig: Restricted export config, used to configure +// restricted export on linked dataset. +type RestrictedExportConfig struct { + // RestrictDirectTableAccess: If true, restrict direct table access(read + // api/tabledata.list) on linked table. + RestrictDirectTableAccess bool `json:"restrictDirectTableAccess,omitempty"` + + // RestrictQueryResult: If true, restrict export of query result derived + // from restricted linked dataset table. + RestrictQueryResult bool `json:"restrictQueryResult,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "RestrictDirectTableAccess") 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. + // "RestrictDirectTableAccess") 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 *RestrictedExportConfig) MarshalJSON() ([]byte, error) { + type NoMethod RestrictedExportConfig + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // SetIamPolicyRequest: Request message for `SetIamPolicy` method. type SetIamPolicyRequest struct { // Policy: REQUIRED: The complete policy to be applied to the diff --git a/analyticshub/v1beta1/analyticshub-api.json b/analyticshub/v1beta1/analyticshub-api.json index 9cb6ca6c3e1..77f899faecc 100644 --- a/analyticshub/v1beta1/analyticshub-api.json +++ b/analyticshub/v1beta1/analyticshub-api.json @@ -695,7 +695,7 @@ } } }, - "revision": "20220909", + "revision": "20230116", "rootUrl": "https://analyticshub.googleapis.com/", "schemas": { "AuditConfig": { @@ -1081,6 +1081,10 @@ "description": "Optional. Email or URL of the request access of the listing. Subscribers can use this reference to request access. Max Length: 1000 bytes.", "type": "string" }, + "restrictedExportConfig": { + "$ref": "RestrictedExportConfig", + "description": "Optional. If set, restricted export configuration will be propagated and enforced on the linked dataset." + }, "state": { "description": "Output only. Current state of the listing.", "enum": [ @@ -1187,6 +1191,21 @@ }, "type": "object" }, + "RestrictedExportConfig": { + "description": "Restricted export config, used to configure restricted export on linked dataset.", + "id": "RestrictedExportConfig", + "properties": { + "restrictDirectTableAccess": { + "description": "If true, restrict direct table access(read api/tabledata.list) on linked table.", + "type": "boolean" + }, + "restrictQueryResult": { + "description": "If true, restrict export of query result derived from restricted linked dataset table.", + "type": "boolean" + } + }, + "type": "object" + }, "SetIamPolicyRequest": { "description": "Request message for `SetIamPolicy` method.", "id": "SetIamPolicyRequest", diff --git a/analyticshub/v1beta1/analyticshub-gen.go b/analyticshub/v1beta1/analyticshub-gen.go index 1926ca1c6d9..e262cac1a99 100644 --- a/analyticshub/v1beta1/analyticshub-gen.go +++ b/analyticshub/v1beta1/analyticshub-gen.go @@ -948,6 +948,10 @@ type Listing struct { // Length: 1000 bytes. RequestAccess string `json:"requestAccess,omitempty"` + // RestrictedExportConfig: Optional. If set, restricted export + // configuration will be propagated and enforced on the linked dataset. + RestrictedExportConfig *RestrictedExportConfig `json:"restrictedExportConfig,omitempty"` + // State: Output only. Current state of the listing. // // Possible values: @@ -1179,6 +1183,42 @@ func (s *Publisher) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// RestrictedExportConfig: Restricted export config, used to configure +// restricted export on linked dataset. +type RestrictedExportConfig struct { + // RestrictDirectTableAccess: If true, restrict direct table access(read + // api/tabledata.list) on linked table. + RestrictDirectTableAccess bool `json:"restrictDirectTableAccess,omitempty"` + + // RestrictQueryResult: If true, restrict export of query result derived + // from restricted linked dataset table. + RestrictQueryResult bool `json:"restrictQueryResult,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "RestrictDirectTableAccess") 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. + // "RestrictDirectTableAccess") 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 *RestrictedExportConfig) MarshalJSON() ([]byte, error) { + type NoMethod RestrictedExportConfig + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // SetIamPolicyRequest: Request message for `SetIamPolicy` method. type SetIamPolicyRequest struct { // Policy: REQUIRED: The complete policy to be applied to the diff --git a/androidmanagement/v1/androidmanagement-api.json b/androidmanagement/v1/androidmanagement-api.json index 7e0aaca7403..89a388c63e5 100644 --- a/androidmanagement/v1/androidmanagement-api.json +++ b/androidmanagement/v1/androidmanagement-api.json @@ -1065,7 +1065,7 @@ } } }, - "revision": "20221118", + "revision": "20230119", "rootUrl": "https://androidmanagement.googleapis.com/", "schemas": { "AdbShellCommandEvent": { @@ -4875,7 +4875,7 @@ }, "launchApp": { "$ref": "LaunchAppAction", - "description": "An action to launch an app. The app will be launched with an intent containing an extra with key com.google.android.apps.work.clouddpc.EXTRA_LAUNCHED_AS_SETUP_ACTION set to the boolean value true to indicate that this is a setup action flow." + "description": "An action to launch an app. The app will be launched with an intent containing an extra with key com.google.android.apps.work.clouddpc.EXTRA_LAUNCHED_AS_SETUP_ACTION set to the boolean value true to indicate that this is a setup action flow. If SetupAction references an app, the corresponding installType in the application policy must be set as REQUIRED_FOR_SETUP or said setup will fail." }, "title": { "$ref": "UserFacingMessage", diff --git a/androidmanagement/v1/androidmanagement-gen.go b/androidmanagement/v1/androidmanagement-gen.go index 6b9849090bc..fb90d98774b 100644 --- a/androidmanagement/v1/androidmanagement-gen.go +++ b/androidmanagement/v1/androidmanagement-gen.go @@ -5559,7 +5559,9 @@ type SetupAction struct { // an intent containing an extra with key // com.google.android.apps.work.clouddpc.EXTRA_LAUNCHED_AS_SETUP_ACTION // set to the boolean value true to indicate that this is a setup action - // flow. + // flow. If SetupAction references an app, the corresponding installType + // in the application policy must be set as REQUIRED_FOR_SETUP or said + // setup will fail. LaunchApp *LaunchAppAction `json:"launchApp,omitempty"` // Title: Title of this action. diff --git a/androidpublisher/v3/androidpublisher-api.json b/androidpublisher/v3/androidpublisher-api.json index 321aacc36fc..4c1b8073c41 100644 --- a/androidpublisher/v3/androidpublisher-api.json +++ b/androidpublisher/v3/androidpublisher-api.json @@ -2400,7 +2400,7 @@ "type": "string" }, "regionsVersion.version": { - "description": "Required. A string representing version of the available regions being used for the specified resource. The current version is 2022/01.", + "description": "Required. A string representing version of the available regions being used for the specified resource. The current version is 2022/02.", "location": "query", "type": "string" } @@ -2538,7 +2538,7 @@ "type": "string" }, "regionsVersion.version": { - "description": "Required. A string representing version of the available regions being used for the specified resource. The current version is 2022/01.", + "description": "Required. A string representing version of the available regions being used for the specified resource. The current version is 2022/02.", "location": "query", "type": "string" }, @@ -2809,7 +2809,7 @@ "type": "string" }, "regionsVersion.version": { - "description": "Required. A string representing version of the available regions being used for the specified resource. The current version is 2022/01.", + "description": "Required. A string representing version of the available regions being used for the specified resource. The current version is 2022/02.", "location": "query", "type": "string" } @@ -3046,7 +3046,7 @@ "type": "string" }, "regionsVersion.version": { - "description": "Required. A string representing version of the available regions being used for the specified resource. The current version is 2022/01.", + "description": "Required. A string representing version of the available regions being used for the specified resource. The current version is 2022/02.", "location": "query", "type": "string" }, @@ -3920,7 +3920,7 @@ } } }, - "revision": "20230117", + "revision": "20230123", "rootUrl": "https://androidpublisher.googleapis.com/", "schemas": { "AcquisitionTargetingRule": { @@ -5807,7 +5807,7 @@ "id": "RegionsVersion", "properties": { "version": { - "description": "Required. A string representing version of the available regions being used for the specified resource. The current version is 2022/01.", + "description": "Required. A string representing version of the available regions being used for the specified resource. The current version is 2022/02.", "type": "string" } }, diff --git a/androidpublisher/v3/androidpublisher-gen.go b/androidpublisher/v3/androidpublisher-gen.go index de6f2438257..a9a59ddbce6 100644 --- a/androidpublisher/v3/androidpublisher-gen.go +++ b/androidpublisher/v3/androidpublisher-gen.go @@ -3921,7 +3921,7 @@ func (s *RegionalTaxRateInfo) MarshalJSON() ([]byte, error) { type RegionsVersion struct { // Version: Required. A string representing version of the available // regions being used for the specified resource. The current version is - // 2022/01. + // 2022/02. Version string `json:"version,omitempty"` // ForceSendFields is a list of field names (e.g. "Version") to @@ -15211,7 +15211,7 @@ func (c *MonetizationSubscriptionsCreateCall) ProductId(productId string) *Monet // RegionsVersionVersion sets the optional parameter // "regionsVersion.version": Required. A string representing version of // the available regions being used for the specified resource. The -// current version is 2022/01. +// current version is 2022/02. func (c *MonetizationSubscriptionsCreateCall) RegionsVersionVersion(regionsVersionVersion string) *MonetizationSubscriptionsCreateCall { c.urlParams_.Set("regionsVersion.version", regionsVersionVersion) return c @@ -15328,7 +15328,7 @@ func (c *MonetizationSubscriptionsCreateCall) Do(opts ...googleapi.CallOption) ( // "type": "string" // }, // "regionsVersion.version": { - // "description": "Required. A string representing version of the available regions being used for the specified resource. The current version is 2022/01.", + // "description": "Required. A string representing version of the available regions being used for the specified resource. The current version is 2022/02.", // "location": "query", // "type": "string" // } @@ -15861,7 +15861,7 @@ func (r *MonetizationSubscriptionsService) Patch(packageName string, productId s // RegionsVersionVersion sets the optional parameter // "regionsVersion.version": Required. A string representing version of // the available regions being used for the specified resource. The -// current version is 2022/01. +// current version is 2022/02. func (c *MonetizationSubscriptionsPatchCall) RegionsVersionVersion(regionsVersionVersion string) *MonetizationSubscriptionsPatchCall { c.urlParams_.Set("regionsVersion.version", regionsVersionVersion) return c @@ -15988,7 +15988,7 @@ func (c *MonetizationSubscriptionsPatchCall) Do(opts ...googleapi.CallOption) (* // "type": "string" // }, // "regionsVersion.version": { - // "description": "Required. A string representing version of the available regions being used for the specified resource. The current version is 2022/01.", + // "description": "Required. A string representing version of the available regions being used for the specified resource. The current version is 2022/02.", // "location": "query", // "type": "string" // }, @@ -16867,7 +16867,7 @@ func (c *MonetizationSubscriptionsBasePlansOffersCreateCall) OfferId(offerId str // RegionsVersionVersion sets the optional parameter // "regionsVersion.version": Required. A string representing version of // the available regions being used for the specified resource. The -// current version is 2022/01. +// current version is 2022/02. func (c *MonetizationSubscriptionsBasePlansOffersCreateCall) RegionsVersionVersion(regionsVersionVersion string) *MonetizationSubscriptionsBasePlansOffersCreateCall { c.urlParams_.Set("regionsVersion.version", regionsVersionVersion) return c @@ -17000,7 +17000,7 @@ func (c *MonetizationSubscriptionsBasePlansOffersCreateCall) Do(opts ...googleap // "type": "string" // }, // "regionsVersion.version": { - // "description": "Required. A string representing version of the available regions being used for the specified resource. The current version is 2022/01.", + // "description": "Required. A string representing version of the available regions being used for the specified resource. The current version is 2022/02.", // "location": "query", // "type": "string" // } @@ -17770,7 +17770,7 @@ func (r *MonetizationSubscriptionsBasePlansOffersService) Patch(packageName stri // RegionsVersionVersion sets the optional parameter // "regionsVersion.version": Required. A string representing version of // the available regions being used for the specified resource. The -// current version is 2022/01. +// current version is 2022/02. func (c *MonetizationSubscriptionsBasePlansOffersPatchCall) RegionsVersionVersion(regionsVersionVersion string) *MonetizationSubscriptionsBasePlansOffersPatchCall { c.urlParams_.Set("regionsVersion.version", regionsVersionVersion) return c @@ -17913,7 +17913,7 @@ func (c *MonetizationSubscriptionsBasePlansOffersPatchCall) Do(opts ...googleapi // "type": "string" // }, // "regionsVersion.version": { - // "description": "Required. A string representing version of the available regions being used for the specified resource. The current version is 2022/01.", + // "description": "Required. A string representing version of the available regions being used for the specified resource. The current version is 2022/02.", // "location": "query", // "type": "string" // }, diff --git a/api-list.json b/api-list.json index 6cfbb1dc6e4..6429e210d03 100644 --- a/api-list.json +++ b/api-list.json @@ -212,6 +212,21 @@ "documentationLink": "https://developers.google.com/adsense/host/index", "preferred": true }, + { + "kind": "discovery#directoryItem", + "id": "advisorynotifications:v1", + "name": "advisorynotifications", + "version": "v1", + "title": "Advisory Notifications API", + "description": "", + "discoveryRestUrl": "https://advisorynotifications.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://cloud.google.com/advisory-notifications", + "preferred": true + }, { "kind": "discovery#directoryItem", "id": "alertcenter:v1beta1", diff --git a/beyondcorp/v1alpha/beyondcorp-api.json b/beyondcorp/v1alpha/beyondcorp-api.json index 17b7c68678e..4d8e627298c 100644 --- a/beyondcorp/v1alpha/beyondcorp-api.json +++ b/beyondcorp/v1alpha/beyondcorp-api.json @@ -3081,7 +3081,7 @@ } } }, - "revision": "20221019", + "revision": "20230113", "rootUrl": "https://beyondcorp.googleapis.com/", "schemas": { "AllocatedConnection": { @@ -5164,12 +5164,14 @@ "enum": [ "STATE_UNSPECIFIED", "ACTIVE", - "INACTIVE" + "INACTIVE", + "COMPLETED" ], "enumDescriptions": [ "Default value. This value is unused.", "Represents an active subscription.", - "Represents an upcomming subscription." + "Represents an upcomming subscription.", + "Represents a completed subscription." ], "readOnly": true, "type": "string" diff --git a/beyondcorp/v1alpha/beyondcorp-gen.go b/beyondcorp/v1alpha/beyondcorp-gen.go index 46688fbd525..9083c803739 100644 --- a/beyondcorp/v1alpha/beyondcorp-gen.go +++ b/beyondcorp/v1alpha/beyondcorp-gen.go @@ -3171,6 +3171,7 @@ type GoogleCloudBeyondcorpSaasplatformSubscriptionsV1alphaSubscription struct { // "STATE_UNSPECIFIED" - Default value. This value is unused. // "ACTIVE" - Represents an active subscription. // "INACTIVE" - Represents an upcomming subscription. + // "COMPLETED" - Represents a completed subscription. State string `json:"state,omitempty"` // Type: Required. Type of subscription. diff --git a/bigquery/v2/bigquery-api.json b/bigquery/v2/bigquery-api.json index a38e57922a6..35023e4c9ce 100644 --- a/bigquery/v2/bigquery-api.json +++ b/bigquery/v2/bigquery-api.json @@ -1710,7 +1710,7 @@ } } }, - "revision": "20221217", + "revision": "20230114", "rootUrl": "https://bigquery.googleapis.com/", "schemas": { "AggregateClassificationMetrics": { @@ -2193,6 +2193,11 @@ "BiEngineStatistics": { "id": "BiEngineStatistics", "properties": { + "accelerationMode": { + "default": "", + "description": "[Output-only] Specifies which mode of BI Engine acceleration was performed (if any).", + "type": "string" + }, "biEngineMode": { "default": "", "description": "[Output-only] Specifies which mode of BI Engine acceleration was performed (if any).", diff --git a/bigquery/v2/bigquery-gen.go b/bigquery/v2/bigquery-gen.go index 98cc672f2be..ee9c8fb0e48 100644 --- a/bigquery/v2/bigquery-gen.go +++ b/bigquery/v2/bigquery-gen.go @@ -962,6 +962,10 @@ func (s *BiEngineReason) MarshalJSON() ([]byte, error) { } type BiEngineStatistics struct { + // AccelerationMode: [Output-only] Specifies which mode of BI Engine + // acceleration was performed (if any). + AccelerationMode string `json:"accelerationMode,omitempty"` + // BiEngineMode: [Output-only] Specifies which mode of BI Engine // acceleration was performed (if any). BiEngineMode string `json:"biEngineMode,omitempty"` @@ -972,7 +976,7 @@ type BiEngineStatistics struct { // populated. BiEngineReasons []*BiEngineReason `json:"biEngineReasons,omitempty"` - // ForceSendFields is a list of field names (e.g. "BiEngineMode") to + // ForceSendFields is a list of field names (e.g. "AccelerationMode") 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 @@ -980,12 +984,13 @@ type BiEngineStatistics struct { // This may be used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "BiEngineMode") 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. "AccelerationMode") 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/chromemanagement/v1/chromemanagement-api.json b/chromemanagement/v1/chromemanagement-api.json index bfc942957af..847a5f243a8 100644 --- a/chromemanagement/v1/chromemanagement-api.json +++ b/chromemanagement/v1/chromemanagement-api.json @@ -682,7 +682,7 @@ } } }, - "revision": "20230104", + "revision": "20230122", "rootUrl": "https://chromemanagement.googleapis.com/", "schemas": { "GoogleChromeManagementV1AndroidAppInfo": { @@ -1808,7 +1808,7 @@ "type": "object" }, "GoogleChromeManagementV1GraphicsStatusReport": { - "description": "Information of the graphics subsystem. * This field is telemetry information and this will change over time as the device is utilized. * Data for this field is controlled via policy: [ReportDeviceGraphicsInfo](https://chromeenterprise.google/policies/#ReportDeviceGraphicsInfo) * Data Collection Frequency: Only at Upload * Default Data Reporting Frequency: 3 hours - Policy Controlled: Yes * Cache: If the device is offline, the collected data is stored locally, and will be reported when the device is next online: No * Reported for affiliated users only: N/A", + "description": "Information of the graphics subsystem. * This field is telemetry information and this will change over time as the device is utilized. * Data for this field is controlled via policy: [ReportDeviceGraphicsInfo](https://chromeenterprise.google/policies/#ReportDeviceGraphicsInfo) * Data Collection Frequency: 3 hours. * Default Data Reporting Frequency: 3 hours - Policy Controlled: Yes * Cache: If the device is offline, the collected data is stored locally, and will be reported when the device is next online: No * Reported for affiliated users only: N/A", "id": "GoogleChromeManagementV1GraphicsStatusReport", "properties": { "displays": { diff --git a/chromemanagement/v1/chromemanagement-gen.go b/chromemanagement/v1/chromemanagement-gen.go index bae55ceb4c9..39d2b7602cc 100644 --- a/chromemanagement/v1/chromemanagement-gen.go +++ b/chromemanagement/v1/chromemanagement-gen.go @@ -1762,7 +1762,7 @@ func (s *GoogleChromeManagementV1GraphicsInfo) MarshalJSON() ([]byte, error) { // will change over time as the device is utilized. * Data for this // field is controlled via policy: ReportDeviceGraphicsInfo // (https://chromeenterprise.google/policies/#ReportDeviceGraphicsInfo) -// * Data Collection Frequency: Only at Upload * Default Data Reporting +// * Data Collection Frequency: 3 hours. * Default Data Reporting // Frequency: 3 hours - Policy Controlled: Yes * Cache: If the device is // offline, the collected data is stored locally, and will be reported // when the device is next online: No * Reported for affiliated users diff --git a/cloudchannel/v1/cloudchannel-api.json b/cloudchannel/v1/cloudchannel-api.json index b447957abfb..b6ce0bfe091 100644 --- a/cloudchannel/v1/cloudchannel-api.json +++ b/cloudchannel/v1/cloudchannel-api.json @@ -2009,7 +2009,7 @@ } } }, - "revision": "20221212", + "revision": "20230122", "rootUrl": "https://cloudchannel.googleapis.com/", "schemas": { "GoogleCloudChannelV1ActivateEntitlementRequest": { @@ -2716,7 +2716,7 @@ "type": "string" }, "parameters": { - "description": "Extended entitlement parameters. When creating an entitlement, valid parameter names and values are defined in the Offer.parameter_definitions. The response may include the following output-only Parameters: - assigned_units: The number of licenses assigned to users. - max_units: The maximum assignable units for a flexible offer. - num_units: The total commitment for commitment-based offers.", + "description": "Extended entitlement parameters. When creating an entitlement, valid parameter names and values are defined in the Offer.parameter_definitions. For Google Workspace, the following Parameters may be accepted as input: - max_units: The maximum assignable units for a flexible offer OR - num_units: The total commitment for commitment-based offers The response may additionally include the following output-only Parameters: - assigned_units: The number of licenses assigned to users. For GCP billing accounts, the following Parameter may be accepted as input: - display_name: The display name of the billing account.", "items": { "$ref": "GoogleCloudChannelV1Parameter" }, @@ -4510,7 +4510,7 @@ "type": "string" }, "parameters": { - "description": "Extended entitlement parameters. When creating an entitlement, valid parameter names and values are defined in the Offer.parameter_definitions. The response may include the following output-only Parameters: - assigned_units: The number of licenses assigned to users. - max_units: The maximum assignable units for a flexible offer. - num_units: The total commitment for commitment-based offers.", + "description": "Extended entitlement parameters. When creating an entitlement, valid parameter names and values are defined in the Offer.parameter_definitions. For Google Workspace, the following Parameters may be accepted as input: - max_units: The maximum assignable units for a flexible offer OR - num_units: The total commitment for commitment-based offers The response may additionally include the following output-only Parameters: - assigned_units: The number of licenses assigned to users. For GCP billing accounts, the following Parameter may be accepted as input: - display_name: The display name of the billing account.", "items": { "$ref": "GoogleCloudChannelV1alpha1Parameter" }, diff --git a/cloudchannel/v1/cloudchannel-gen.go b/cloudchannel/v1/cloudchannel-gen.go index d622c5f6c10..94f7e71722e 100644 --- a/cloudchannel/v1/cloudchannel-gen.go +++ b/cloudchannel/v1/cloudchannel-gen.go @@ -1478,11 +1478,14 @@ type GoogleCloudChannelV1Entitlement struct { // Parameters: Extended entitlement parameters. When creating an // entitlement, valid parameter names and values are defined in the - // Offer.parameter_definitions. The response may include the following - // output-only Parameters: - assigned_units: The number of licenses - // assigned to users. - max_units: The maximum assignable units for a - // flexible offer. - num_units: The total commitment for - // commitment-based offers. + // Offer.parameter_definitions. For Google Workspace, the following + // Parameters may be accepted as input: - max_units: The maximum + // assignable units for a flexible offer OR - num_units: The total + // commitment for commitment-based offers The response may additionally + // include the following output-only Parameters: - assigned_units: The + // number of licenses assigned to users. For GCP billing accounts, the + // following Parameter may be accepted as input: - display_name: The + // display name of the billing account. Parameters []*GoogleCloudChannelV1Parameter `json:"parameters,omitempty"` // ProvisionedService: Output only. Service provisioning details for the @@ -4657,11 +4660,14 @@ type GoogleCloudChannelV1alpha1Entitlement struct { // Parameters: Extended entitlement parameters. When creating an // entitlement, valid parameter names and values are defined in the - // Offer.parameter_definitions. The response may include the following - // output-only Parameters: - assigned_units: The number of licenses - // assigned to users. - max_units: The maximum assignable units for a - // flexible offer. - num_units: The total commitment for - // commitment-based offers. + // Offer.parameter_definitions. For Google Workspace, the following + // Parameters may be accepted as input: - max_units: The maximum + // assignable units for a flexible offer OR - num_units: The total + // commitment for commitment-based offers The response may additionally + // include the following output-only Parameters: - assigned_units: The + // number of licenses assigned to users. For GCP billing accounts, the + // following Parameter may be accepted as input: - display_name: The + // display name of the billing account. Parameters []*GoogleCloudChannelV1alpha1Parameter `json:"parameters,omitempty"` // ProvisionedService: Output only. Service provisioning details for the diff --git a/compute/v0.alpha/compute-api.json b/compute/v0.alpha/compute-api.json index 1ad99e6450e..cea2557f743 100644 --- a/compute/v0.alpha/compute-api.json +++ b/compute/v0.alpha/compute-api.json @@ -40268,7 +40268,7 @@ } } }, - "revision": "20221224", + "revision": "20230103", "rootUrl": "https://compute.googleapis.com/", "schemas": { "AWSV4Signature": { @@ -62182,6 +62182,10 @@ ], "type": "string" }, + "parentNicName": { + "description": "Name of the parent network interface of a VLAN based nic. If this field is specified, vlan must be set.", + "type": "string" + }, "queueCount": { "description": "The networking queue count that's specified by users for the network interface. Both Rx and Tx queues will be set to this number. It'll be empty if not specified by the users.", "format": "int32", @@ -62209,6 +62213,11 @@ "subnetwork": { "description": "The URL of the Subnetwork resource for this instance. If the network resource is in legacy mode, do not specify this field. If the network is in auto subnet mode, specifying the subnetwork is optional. If the network is in custom subnet mode, specifying the subnetwork is required. If you specify this field, you can specify the subnetwork as a full or partial URL. For example, the following are all valid URLs: - https://www.googleapis.com/compute/v1/projects/project/regions/region /subnetworks/subnetwork - regions/region/subnetworks/subnetwork ", "type": "string" + }, + "vlan": { + "description": "VLAN tag of a VLAN based network interface, must be in range from 2 to 4094 inclusively. This field is mandatory if the parent network interface name is set.", + "format": "int32", + "type": "integer" } }, "type": "object" @@ -75973,7 +75982,7 @@ "id": "SourceInstanceParams", "properties": { "diskConfigs": { - "description": "Attached disks configuration. If not provided, defaults are applied: For boot disk and any other R/W disks, new custom images will be created from each disk. For read-only disks, they will be attached in read-only mode. Local SSD disks will be created as blank volumes.", + "description": "Attached disks configuration. If not provided, defaults are applied: For boot disk and any other R/W disks, the source images for each disk will be used. For read-only disks, they will be attached in read-only mode. Local SSD disks will be created as blank volumes.", "items": { "$ref": "DiskInstantiationConfig" }, diff --git a/compute/v0.alpha/compute-gen.go b/compute/v0.alpha/compute-gen.go index 404352fa99d..02f40649988 100644 --- a/compute/v0.alpha/compute-gen.go +++ b/compute/v0.alpha/compute-gen.go @@ -36323,6 +36323,10 @@ type NetworkInterface struct { // "VIRTIO_NET" - VIRTIO NicType string `json:"nicType,omitempty"` + // ParentNicName: Name of the parent network interface of a VLAN based + // nic. If this field is specified, vlan must be set. + ParentNicName string `json:"parentNicName,omitempty"` + // QueueCount: The networking queue count that's specified by users for // the network interface. Both Rx and Tx queues will be set to this // number. It'll be empty if not specified by the users. @@ -36357,6 +36361,11 @@ type NetworkInterface struct { // /subnetworks/subnetwork - regions/region/subnetworks/subnetwork Subnetwork string `json:"subnetwork,omitempty"` + // Vlan: VLAN tag of a VLAN based network interface, must be in range + // from 2 to 4094 inclusively. This field is mandatory if the parent + // network interface name is set. + Vlan int64 `json:"vlan,omitempty"` + // ForceSendFields is a list of field names (e.g. "AccessConfigs") to // unconditionally include in API requests. By default, fields with // empty or default values are omitted from API requests. However, any @@ -57480,8 +57489,8 @@ func (s *SourceDiskEncryptionKey) MarshalJSON() ([]byte, error) { // creating the instance template from a source instance. type SourceInstanceParams struct { // DiskConfigs: Attached disks configuration. If not provided, defaults - // are applied: For boot disk and any other R/W disks, new custom images - // will be created from each disk. For read-only disks, they will be + // are applied: For boot disk and any other R/W disks, the source images + // for each disk will be used. For read-only disks, they will be // attached in read-only mode. Local SSD disks will be created as blank // volumes. DiskConfigs []*DiskInstantiationConfig `json:"diskConfigs,omitempty"` diff --git a/compute/v1/compute-api.json b/compute/v1/compute-api.json index b25d7e8f0f7..29a0b896763 100644 --- a/compute/v1/compute-api.json +++ b/compute/v1/compute-api.json @@ -32692,7 +32692,7 @@ } } }, - "revision": "20221224", + "revision": "20230103", "rootUrl": "https://compute.googleapis.com/", "schemas": { "AcceleratorConfig": { @@ -61486,7 +61486,7 @@ "id": "SourceInstanceParams", "properties": { "diskConfigs": { - "description": "Attached disks configuration. If not provided, defaults are applied: For boot disk and any other R/W disks, new custom images will be created from each disk. For read-only disks, they will be attached in read-only mode. Local SSD disks will be created as blank volumes.", + "description": "Attached disks configuration. If not provided, defaults are applied: For boot disk and any other R/W disks, the source images for each disk will be used. For read-only disks, they will be attached in read-only mode. Local SSD disks will be created as blank volumes.", "items": { "$ref": "DiskInstantiationConfig" }, diff --git a/compute/v1/compute-gen.go b/compute/v1/compute-gen.go index 94ab8e69eaa..887044a5956 100644 --- a/compute/v1/compute-gen.go +++ b/compute/v1/compute-gen.go @@ -46457,8 +46457,8 @@ func (s *SourceDiskEncryptionKey) MarshalJSON() ([]byte, error) { // creating the instance template from a source instance. type SourceInstanceParams struct { // DiskConfigs: Attached disks configuration. If not provided, defaults - // are applied: For boot disk and any other R/W disks, new custom images - // will be created from each disk. For read-only disks, they will be + // are applied: For boot disk and any other R/W disks, the source images + // for each disk will be used. For read-only disks, they will be // attached in read-only mode. Local SSD disks will be created as blank // volumes. DiskConfigs []*DiskInstantiationConfig `json:"diskConfigs,omitempty"` diff --git a/datacatalog/v1/datacatalog-api.json b/datacatalog/v1/datacatalog-api.json index b3bed01bcc4..9599c9959e4 100644 --- a/datacatalog/v1/datacatalog-api.json +++ b/datacatalog/v1/datacatalog-api.json @@ -1711,6 +1711,11 @@ "parent" ], "parameters": { + "filter": { + "description": "Supported field for filter is 'service' and value is 'dataplex'. Eg: service=dataplex.", + "location": "query", + "type": "string" + }, "pageSize": { "description": "The maximum number of items to return. Must be a value between 1 and 1000 inclusively. If not set, defaults to 50.", "format": "int32", @@ -2101,7 +2106,7 @@ } } }, - "revision": "20221203", + "revision": "20230117", "rootUrl": "https://datacatalog.googleapis.com/", "schemas": { "Binding": { @@ -3995,6 +4000,11 @@ "readOnly": true, "type": "integer" }, + "service": { + "$ref": "GoogleCloudDatacatalogV1TaxonomyService", + "description": "Output only. Identity of the service which owns the Taxonomy. This field is only populated when the taxonomy is created by a GCP service. Currently only 'DATAPLEX' is supported.", + "readOnly": true + }, "taxonomyTimestamps": { "$ref": "GoogleCloudDatacatalogV1SystemTimestamps", "description": "Output only. Creation and modification timestamps of this taxonomy.", @@ -4003,6 +4013,31 @@ }, "type": "object" }, + "GoogleCloudDatacatalogV1TaxonomyService": { + "description": "The source system of the Taxonomy.", + "id": "GoogleCloudDatacatalogV1TaxonomyService", + "properties": { + "identity": { + "description": "P4SA Identity of the service.", + "type": "string" + }, + "name": { + "description": "The GCP service name.", + "enum": [ + "MANAGING_SYSTEM_UNSPECIFIED", + "MANAGING_SYSTEM_DATAPLEX", + "MANAGING_SYSTEM_OTHER" + ], + "enumDescriptions": [ + "Default value", + "Dataplex.", + "Other" + ], + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudDatacatalogV1UnstarEntryRequest": { "description": "Request message for UnstarEntry.", "id": "GoogleCloudDatacatalogV1UnstarEntryRequest", diff --git a/datacatalog/v1/datacatalog-gen.go b/datacatalog/v1/datacatalog-gen.go index 14d874b2e25..5372c9e70ac 100644 --- a/datacatalog/v1/datacatalog-gen.go +++ b/datacatalog/v1/datacatalog-gen.go @@ -3690,6 +3690,11 @@ type GoogleCloudDatacatalogV1Taxonomy struct { // PolicyTagCount: Output only. Number of policy tags in this taxonomy. PolicyTagCount int64 `json:"policyTagCount,omitempty"` + // Service: Output only. Identity of the service which owns the + // Taxonomy. This field is only populated when the taxonomy is created + // by a GCP service. Currently only 'DATAPLEX' is supported. + Service *GoogleCloudDatacatalogV1TaxonomyService `json:"service,omitempty"` + // TaxonomyTimestamps: Output only. Creation and modification timestamps // of this taxonomy. TaxonomyTimestamps *GoogleCloudDatacatalogV1SystemTimestamps `json:"taxonomyTimestamps,omitempty"` @@ -3723,6 +3728,43 @@ func (s *GoogleCloudDatacatalogV1Taxonomy) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// GoogleCloudDatacatalogV1TaxonomyService: The source system of the +// Taxonomy. +type GoogleCloudDatacatalogV1TaxonomyService struct { + // Identity: P4SA Identity of the service. + Identity string `json:"identity,omitempty"` + + // Name: The GCP service name. + // + // Possible values: + // "MANAGING_SYSTEM_UNSPECIFIED" - Default value + // "MANAGING_SYSTEM_DATAPLEX" - Dataplex. + // "MANAGING_SYSTEM_OTHER" - Other + Name string `json:"name,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Identity") 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. "Identity") 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 *GoogleCloudDatacatalogV1TaxonomyService) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDatacatalogV1TaxonomyService + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // GoogleCloudDatacatalogV1UnstarEntryRequest: Request message for // UnstarEntry. type GoogleCloudDatacatalogV1UnstarEntryRequest struct { @@ -12446,6 +12488,13 @@ func (r *ProjectsLocationsTaxonomiesService) List(parent string) *ProjectsLocati return c } +// Filter sets the optional parameter "filter": Supported field for +// filter is 'service' and value is 'dataplex'. Eg: service=dataplex. +func (c *ProjectsLocationsTaxonomiesListCall) Filter(filter string) *ProjectsLocationsTaxonomiesListCall { + c.urlParams_.Set("filter", filter) + return c +} + // PageSize sets the optional parameter "pageSize": The maximum number // of items to return. Must be a value between 1 and 1000 inclusively. // If not set, defaults to 50. @@ -12572,6 +12621,11 @@ func (c *ProjectsLocationsTaxonomiesListCall) Do(opts ...googleapi.CallOption) ( // "parent" // ], // "parameters": { + // "filter": { + // "description": "Supported field for filter is 'service' and value is 'dataplex'. Eg: service=dataplex.", + // "location": "query", + // "type": "string" + // }, // "pageSize": { // "description": "The maximum number of items to return. Must be a value between 1 and 1000 inclusively. If not set, defaults to 50.", // "format": "int32", diff --git a/datacatalog/v1beta1/datacatalog-api.json b/datacatalog/v1beta1/datacatalog-api.json index 0aaa7224268..fc1abc518b1 100644 --- a/datacatalog/v1beta1/datacatalog-api.json +++ b/datacatalog/v1beta1/datacatalog-api.json @@ -1446,6 +1446,11 @@ "parent" ], "parameters": { + "filter": { + "description": "Supported field for filter is 'service' and value is 'dataplex'. Eg: service=dataplex.", + "location": "query", + "type": "string" + }, "pageSize": { "description": "The maximum number of items to return. Must be a value between 1 and 1000. If not set, defaults to 50.", "format": "int32", @@ -1808,7 +1813,7 @@ } } }, - "revision": "20221203", + "revision": "20230117", "rootUrl": "https://datacatalog.googleapis.com/", "schemas": { "Binding": { @@ -2837,6 +2842,11 @@ "readOnly": true, "type": "integer" }, + "service": { + "$ref": "GoogleCloudDatacatalogV1beta1TaxonomyService", + "description": "Output only. Identity of the service which owns the Taxonomy. This field is only populated when the taxonomy is created by a GCP service. Currently only 'DATAPLEX' is supported.", + "readOnly": true + }, "taxonomyTimestamps": { "$ref": "GoogleCloudDatacatalogV1beta1SystemTimestamps", "description": "Output only. Timestamps about this taxonomy. Only create_time and update_time are used.", @@ -2845,6 +2855,31 @@ }, "type": "object" }, + "GoogleCloudDatacatalogV1beta1TaxonomyService": { + "description": "The source system of the Taxonomy.", + "id": "GoogleCloudDatacatalogV1beta1TaxonomyService", + "properties": { + "identity": { + "description": "P4SA Identity of the service.", + "type": "string" + }, + "name": { + "description": "The GCP service name.", + "enum": [ + "MANAGING_SYSTEM_UNSPECIFIED", + "MANAGING_SYSTEM_DATAPLEX", + "MANAGING_SYSTEM_OTHER" + ], + "enumDescriptions": [ + "Default value", + "Dataplex.", + "Other" + ], + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudDatacatalogV1beta1UsageSignal": { "description": "The set of all usage signals that we store in Data Catalog.", "id": "GoogleCloudDatacatalogV1beta1UsageSignal", diff --git a/datacatalog/v1beta1/datacatalog-gen.go b/datacatalog/v1beta1/datacatalog-gen.go index d63e8ccae6d..7aeb19f0483 100644 --- a/datacatalog/v1beta1/datacatalog-gen.go +++ b/datacatalog/v1beta1/datacatalog-gen.go @@ -2255,6 +2255,11 @@ type GoogleCloudDatacatalogV1beta1Taxonomy struct { // taxonomy. PolicyTagCount int64 `json:"policyTagCount,omitempty"` + // Service: Output only. Identity of the service which owns the + // Taxonomy. This field is only populated when the taxonomy is created + // by a GCP service. Currently only 'DATAPLEX' is supported. + Service *GoogleCloudDatacatalogV1beta1TaxonomyService `json:"service,omitempty"` + // TaxonomyTimestamps: Output only. Timestamps about this taxonomy. Only // create_time and update_time are used. TaxonomyTimestamps *GoogleCloudDatacatalogV1beta1SystemTimestamps `json:"taxonomyTimestamps,omitempty"` @@ -2288,6 +2293,43 @@ func (s *GoogleCloudDatacatalogV1beta1Taxonomy) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// GoogleCloudDatacatalogV1beta1TaxonomyService: The source system of +// the Taxonomy. +type GoogleCloudDatacatalogV1beta1TaxonomyService struct { + // Identity: P4SA Identity of the service. + Identity string `json:"identity,omitempty"` + + // Name: The GCP service name. + // + // Possible values: + // "MANAGING_SYSTEM_UNSPECIFIED" - Default value + // "MANAGING_SYSTEM_DATAPLEX" - Dataplex. + // "MANAGING_SYSTEM_OTHER" - Other + Name string `json:"name,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Identity") 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. "Identity") 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 *GoogleCloudDatacatalogV1beta1TaxonomyService) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDatacatalogV1beta1TaxonomyService + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // GoogleCloudDatacatalogV1beta1UsageSignal: The set of all usage // signals that we store in Data Catalog. type GoogleCloudDatacatalogV1beta1UsageSignal struct { @@ -9544,6 +9586,13 @@ func (r *ProjectsLocationsTaxonomiesService) List(parent string) *ProjectsLocati return c } +// Filter sets the optional parameter "filter": Supported field for +// filter is 'service' and value is 'dataplex'. Eg: service=dataplex. +func (c *ProjectsLocationsTaxonomiesListCall) Filter(filter string) *ProjectsLocationsTaxonomiesListCall { + c.urlParams_.Set("filter", filter) + return c +} + // PageSize sets the optional parameter "pageSize": The maximum number // of items to return. Must be a value between 1 and 1000. If not set, // defaults to 50. @@ -9669,6 +9718,11 @@ func (c *ProjectsLocationsTaxonomiesListCall) Do(opts ...googleapi.CallOption) ( // "parent" // ], // "parameters": { + // "filter": { + // "description": "Supported field for filter is 'service' and value is 'dataplex'. Eg: service=dataplex.", + // "location": "query", + // "type": "string" + // }, // "pageSize": { // "description": "The maximum number of items to return. Must be a value between 1 and 1000. If not set, defaults to 50.", // "format": "int32", diff --git a/dataplex/v1/dataplex-api.json b/dataplex/v1/dataplex-api.json index 663eadfb922..0f7b283144f 100644 --- a/dataplex/v1/dataplex-api.json +++ b/dataplex/v1/dataplex-api.json @@ -179,6 +179,99 @@ "resources": { "dataAttributeBindings": { "methods": { + "create": { + "description": "Create a DataAttributeBinding resource.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataAttributeBindings", + "httpMethod": "POST", + "id": "dataplex.projects.locations.dataAttributeBindings.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "dataAttributeBindingId": { + "description": "Required. DataAttributeBinding identifier. * Must contain only lowercase letters, numbers and hyphens. * Must start with a letter. * Must be between 1-63 characters. * Must end with a number or a letter. * Must be unique within the Location.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The resource name of the parent data taxonomy projects/{project_number}/locations/{location_id}", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + }, + "validateOnly": { + "description": "Optional. Only validate the request, but do not perform mutations. The default is false.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1/{+parent}/dataAttributeBindings", + "request": { + "$ref": "GoogleCloudDataplexV1DataAttributeBinding" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a DataAttributeBinding resource. All attributes within the DataAttributeBinding must be deleted before the DataAttributeBinding can be deleted.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataAttributeBindings/{dataAttributeBindingsId}", + "httpMethod": "DELETE", + "id": "dataplex.projects.locations.dataAttributeBindings.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "etag": { + "description": "Required. If the client provided etag value does not match the current etag value, the DeleteDataAttributeBindingRequest method returns an ABORTED error response. Etags must be used when calling the DeleteDataAttributeBinding.", + "location": "query", + "type": "string" + }, + "name": { + "description": "Required. The resource name of the DataAttributeBinding: projects/{project_number}/locations/{location_id}/dataAttributeBindings/{data_attribute_binding_id}", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/dataAttributeBindings/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Retrieves a DataAttributeBinding resource.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataAttributeBindings/{dataAttributeBindingsId}", + "httpMethod": "GET", + "id": "dataplex.projects.locations.dataAttributeBindings.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The resource name of the DataAttributeBinding: projects/{project_number}/locations/{location_id}/dataAttributeBindings/{data_attribute_binding_id}", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/dataAttributeBindings/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "GoogleCloudDataplexV1DataAttributeBinding" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, "getIamPolicy": { "description": "Gets the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set.", "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataAttributeBindings/{dataAttributeBindingsId}:getIamPolicy", @@ -210,6 +303,91 @@ "https://www.googleapis.com/auth/cloud-platform" ] }, + "list": { + "description": "Lists DataAttributeBinding resources in a project and location.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataAttributeBindings", + "httpMethod": "GET", + "id": "dataplex.projects.locations.dataAttributeBindings.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "Optional. Filter request. Filter using resource: filter=resource:\"resource-name\" Filter using attribute: filter=attributes:\"attribute-name\" Filter using attribute in paths list: filter=paths.attributes:\"attribute-name\"", + "location": "query", + "type": "string" + }, + "orderBy": { + "description": "Optional. Order by fields for the result.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Optional. Maximum number of DataAttributeBindings to return. The service may return fewer than this value. If unspecified, at most 10 DataAttributeBindings will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. Page token received from a previous ListDataAttributeBindings call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to ListDataAttributeBindings must match the call that provided the page token.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The resource name of the Location: projects/{project_number}/locations/{location_id}", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/dataAttributeBindings", + "response": { + "$ref": "GoogleCloudDataplexV1ListDataAttributeBindingsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Updates a DataAttributeBinding resource.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataAttributeBindings/{dataAttributeBindingsId}", + "httpMethod": "PATCH", + "id": "dataplex.projects.locations.dataAttributeBindings.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Output only. The relative resource name of the Data Attribute Binding, of the form: projects/{project_number}/locations/{location}/dataAttributeBindings/{data_attribute_binding_id}", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/dataAttributeBindings/[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Required. Mask of fields to update.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + }, + "validateOnly": { + "description": "Optional. Only validate the request, but do not perform mutations. The default is false.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1/{+name}", + "request": { + "$ref": "GoogleCloudDataplexV1DataAttributeBinding" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, "setIamPolicy": { "description": "Sets the access control policy on the specified resource. Replaces any existing policy.Can return NOT_FOUND, INVALID_ARGUMENT, and PERMISSION_DENIED errors.", "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataAttributeBindings/{dataAttributeBindingsId}:setIamPolicy", @@ -649,6 +827,99 @@ }, "dataTaxonomies": { "methods": { + "create": { + "description": "Create a DataTaxonomy resource.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataTaxonomies", + "httpMethod": "POST", + "id": "dataplex.projects.locations.dataTaxonomies.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "dataTaxonomyId": { + "description": "Required. DataTaxonomy identifier. * Must contain only lowercase letters, numbers and hyphens. * Must start with a letter. * Must be between 1-63 characters. * Must end with a number or a letter. * Must be unique within the Project.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The resource name of the data taxonomy location, of the form: projects/{project_number}/locations/{location_id} where location_id refers to a GCP region.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + }, + "validateOnly": { + "description": "Optional. Only validate the request, but do not perform mutations. The default is false.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1/{+parent}/dataTaxonomies", + "request": { + "$ref": "GoogleCloudDataplexV1DataTaxonomy" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a DataTaxonomy resource. All attributes within the DataTaxonomy must be deleted before the DataTaxonomy can be deleted.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataTaxonomies/{dataTaxonomiesId}", + "httpMethod": "DELETE", + "id": "dataplex.projects.locations.dataTaxonomies.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "etag": { + "description": "Optional. If the client provided etag value does not match the current etag value,the DeleteDataTaxonomy method returns an ABORTED error.", + "location": "query", + "type": "string" + }, + "name": { + "description": "Required. The resource name of the DataTaxonomy: projects/{project_number}/locations/{location_id}/dataTaxonomies/{data_taxonomy_id}", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/dataTaxonomies/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Retrieves a DataTaxonomy resource.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataTaxonomies/{dataTaxonomiesId}", + "httpMethod": "GET", + "id": "dataplex.projects.locations.dataTaxonomies.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The resource name of the DataTaxonomy: projects/{project_number}/locations/{location_id}/dataTaxonomies/{data_taxonomy_id}", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/dataTaxonomies/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "GoogleCloudDataplexV1DataTaxonomy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, "getIamPolicy": { "description": "Gets the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set.", "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataTaxonomies/{dataTaxonomiesId}:getIamPolicy", @@ -680,6 +951,91 @@ "https://www.googleapis.com/auth/cloud-platform" ] }, + "list": { + "description": "Lists DataTaxonomy resources in a project and location.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataTaxonomies", + "httpMethod": "GET", + "id": "dataplex.projects.locations.dataTaxonomies.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "Optional. Filter request.", + "location": "query", + "type": "string" + }, + "orderBy": { + "description": "Optional. Order by fields for the result.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Optional. Maximum number of DataTaxonomies to return. The service may return fewer than this value. If unspecified, at most 10 DataTaxonomies will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. Page token received from a previous ListDataTaxonomies call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to ListDataTaxonomies must match the call that provided the page token.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The resource name of the DataTaxonomy location, of the form: projects/{project_number}/locations/{location_id} where location_id refers to a GCP region.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/dataTaxonomies", + "response": { + "$ref": "GoogleCloudDataplexV1ListDataTaxonomiesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Updates a DataTaxonomy resource.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataTaxonomies/{dataTaxonomiesId}", + "httpMethod": "PATCH", + "id": "dataplex.projects.locations.dataTaxonomies.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Output only. The relative resource name of the DataTaxonomy, of the form: projects/{project_number}/locations/{location_id}/dataTaxonomies/{data_taxonomy_id}.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/dataTaxonomies/[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Required. Mask of fields to update.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + }, + "validateOnly": { + "description": "Optional. Only validate the request, but do not perform mutations. The default is false.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1/{+name}", + "request": { + "$ref": "GoogleCloudDataplexV1DataTaxonomy" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, "setIamPolicy": { "description": "Sets the access control policy on the specified resource. Replaces any existing policy.Can return NOT_FOUND, INVALID_ARGUMENT, and PERMISSION_DENIED errors.", "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataTaxonomies/{dataTaxonomiesId}:setIamPolicy", @@ -740,6 +1096,99 @@ "resources": { "attributes": { "methods": { + "create": { + "description": "Create a DataAttribute resource.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataTaxonomies/{dataTaxonomiesId}/attributes", + "httpMethod": "POST", + "id": "dataplex.projects.locations.dataTaxonomies.attributes.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "dataAttributeId": { + "description": "Required. DataAttribute identifier. * Must contain only lowercase letters, numbers and hyphens. * Must start with a letter. * Must be between 1-63 characters. * Must end with a number or a letter. * Must be unique within the DataTaxonomy.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The resource name of the parent data taxonomy projects/{project_number}/locations/{location_id}/dataTaxonomies/{data_taxonomy_id}", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/dataTaxonomies/[^/]+$", + "required": true, + "type": "string" + }, + "validateOnly": { + "description": "Optional. Only validate the request, but do not perform mutations. The default is false.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1/{+parent}/attributes", + "request": { + "$ref": "GoogleCloudDataplexV1DataAttribute" + }, + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a Data Attribute resource.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataTaxonomies/{dataTaxonomiesId}/attributes/{attributesId}", + "httpMethod": "DELETE", + "id": "dataplex.projects.locations.dataTaxonomies.attributes.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "etag": { + "description": "Optional. If the client provided etag value does not match the current etag value, the DeleteDataAttribute method returns an ABORTED error response.", + "location": "query", + "type": "string" + }, + "name": { + "description": "Required. The resource name of the DataAttribute: projects/{project_number}/locations/{location_id}/dataTaxonomies/{dataTaxonomy}/attributes/{data_attribute_id}", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/dataTaxonomies/[^/]+/attributes/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Retrieves a Data Attribute resource.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataTaxonomies/{dataTaxonomiesId}/attributes/{attributesId}", + "httpMethod": "GET", + "id": "dataplex.projects.locations.dataTaxonomies.attributes.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The resource name of the dataAttribute: projects/{project_number}/locations/{location_id}/dataTaxonomies/{dataTaxonomy}/attributes/{data_attribute_id}", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/dataTaxonomies/[^/]+/attributes/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "GoogleCloudDataplexV1DataAttribute" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, "getIamPolicy": { "description": "Gets the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set.", "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataTaxonomies/{dataTaxonomiesId}/attributes/{attributesId}:getIamPolicy", @@ -763,9 +1212,94 @@ "type": "string" } }, - "path": "v1/{+resource}:getIamPolicy", + "path": "v1/{+resource}:getIamPolicy", + "response": { + "$ref": "GoogleIamV1Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists Data Attribute resources in a DataTaxonomy.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataTaxonomies/{dataTaxonomiesId}/attributes", + "httpMethod": "GET", + "id": "dataplex.projects.locations.dataTaxonomies.attributes.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "Optional. Filter request.", + "location": "query", + "type": "string" + }, + "orderBy": { + "description": "Optional. Order by fields for the result.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Optional. Maximum number of DataAttributes to return. The service may return fewer than this value. If unspecified, at most 10 dataAttributes will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. Page token received from a previous ListDataAttributes call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to ListDataAttributes must match the call that provided the page token.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The resource name of the DataTaxonomy: projects/{project_number}/locations/{location_id}/dataTaxonomies/{data_taxonomy_id}", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/dataTaxonomies/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/attributes", + "response": { + "$ref": "GoogleCloudDataplexV1ListDataAttributesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Updates a DataAttribute resource.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataTaxonomies/{dataTaxonomiesId}/attributes/{attributesId}", + "httpMethod": "PATCH", + "id": "dataplex.projects.locations.dataTaxonomies.attributes.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Output only. The relative resource name of the dataAttribute, of the form: projects/{project_number}/locations/{location_id}/dataTaxonomies/{dataTaxonomy}/attributes/{data_attribute_id}.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/dataTaxonomies/[^/]+/attributes/[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Required. Mask of fields to update.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + }, + "validateOnly": { + "description": "Optional. Only validate the request, but do not perform mutations. The default is false.", + "location": "query", + "type": "boolean" + } + }, + "path": "v1/{+name}", + "request": { + "$ref": "GoogleCloudDataplexV1DataAttribute" + }, "response": { - "$ref": "GoogleIamV1Policy" + "$ref": "GoogleLongrunningOperation" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" @@ -3446,7 +3980,7 @@ } } }, - "revision": "20230102", + "revision": "20230120", "rootUrl": "https://dataplex.googleapis.com/", "schemas": { "Empty": { @@ -4124,6 +4658,170 @@ }, "type": "object" }, + "GoogleCloudDataplexV1DataAccessSpec": { + "description": "DataAccessSpec holds the access control configuration to be enforced on data stored within resources (eg: rows, columns in BigQuery Tables). When associated with data,the data is only accessible to principals explicitly granted access through the DataAttribute. Principals with access to the containing resource are not implicitly granted access.", + "id": "GoogleCloudDataplexV1DataAccessSpec", + "properties": { + "readers": { + "description": "Optional. The format of strings follows the pattern followed by IAM in the bindings. user:{email}, serviceAccount:{email} group:{email}. The set of principals to be granted reader role on data stored within resources.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudDataplexV1DataAttribute": { + "description": "Denotes one dataAttribute in a dataTaxonomy, for example, PII. DataAttribute resources can be defined in a hierarchy. A single dataAttribute resource can contain specs of multiple types PII - ResourceAccessSpec : - readers :foo@bar.com - DataAccessSpec : - readers :bar@foo.com ", + "id": "GoogleCloudDataplexV1DataAttribute", + "properties": { + "attributeCount": { + "description": "Output only. The number of child attributes present for this attribute.", + "format": "int32", + "readOnly": true, + "type": "integer" + }, + "createTime": { + "description": "Output only. The time when the DataAttribute was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "dataAccessSpec": { + "$ref": "GoogleCloudDataplexV1DataAccessSpec", + "description": "Optional. Specified when applied to data stored on the resource (eg: rows, columns in BigQuery Tables)." + }, + "description": { + "description": "Optional. Description of the DataAttribute.", + "type": "string" + }, + "displayName": { + "description": "Optional. User friendly display name.", + "type": "string" + }, + "etag": { + "description": "This checksum is computed by the server based on the value of other fields, and may be sent on update and delete requests to ensure the client has an up-to-date value before proceeding.", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. User-defined labels for the DataAttribute.", + "type": "object" + }, + "name": { + "description": "Output only. The relative resource name of the dataAttribute, of the form: projects/{project_number}/locations/{location_id}/dataTaxonomies/{dataTaxonomy}/attributes/{data_attribute_id}.", + "readOnly": true, + "type": "string" + }, + "parentId": { + "description": "Optional. The ID of the parent DataAttribute resource, should belong to the same data taxonomy. Circular dependency in parent chain is not valid. Maximum depth of the hierarchy allowed is 4. a -\u003e b -\u003e c -\u003e d -\u003e e, depth = 4", + "type": "string" + }, + "resourceAccessSpec": { + "$ref": "GoogleCloudDataplexV1ResourceAccessSpec", + "description": "Optional. Specified when applied to a resource (eg: Cloud Storage bucket, BigQuery dataset, BigQuery table)." + }, + "uid": { + "description": "Output only. System generated globally unique ID for the DataAttribute. This ID will be different if the DataAttribute is deleted and re-created with the same name.", + "readOnly": true, + "type": "string" + }, + "updateTime": { + "description": "Output only. The time when the DataAttribute was last updated.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDataplexV1DataAttributeBinding": { + "description": "DataAttributeBinding represents binding of attributes to resources. Eg: Bind 'CustomerInfo' entity with 'PII' attribute.", + "id": "GoogleCloudDataplexV1DataAttributeBinding", + "properties": { + "attributes": { + "description": "Optional. List of attributes to be associated with the resource, provided in the form: projects/{project}/locations/{location}/dataTaxonomies/{dataTaxonomy}/attributes/{data_attribute_id}", + "items": { + "type": "string" + }, + "type": "array" + }, + "createTime": { + "description": "Output only. The time when the DataAttributeBinding was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "description": { + "description": "Optional. Description of the DataAttributeBinding.", + "type": "string" + }, + "displayName": { + "description": "Optional. User friendly display name.", + "type": "string" + }, + "etag": { + "description": "This checksum is computed by the server based on the value of other fields, and may be sent on update and delete requests to ensure the client has an up-to-date value before proceeding. Etags must be used when calling the DeleteDataAttributeBinding and the UpdateDataAttributeBinding method.", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. User-defined labels for the DataAttributeBinding.", + "type": "object" + }, + "name": { + "description": "Output only. The relative resource name of the Data Attribute Binding, of the form: projects/{project_number}/locations/{location}/dataAttributeBindings/{data_attribute_binding_id}", + "readOnly": true, + "type": "string" + }, + "paths": { + "description": "Optional. The list of paths for items within the associated resource (eg. columns within a table) along with attribute bindings.", + "items": { + "$ref": "GoogleCloudDataplexV1DataAttributeBindingPath" + }, + "type": "array" + }, + "resource": { + "description": "Optional. Immutable. The resource name of the resource that is binded to attributes. Presently, only entity resource is supported in the form: projects/{project}/locations/{location}/lakes/{lake}/zones/{zone}/entities/{entity_id} Must belong in the same project and region as the attribute binding, and there can only exist one active binding for a resource.", + "type": "string" + }, + "uid": { + "description": "Output only. System generated globally unique ID for the DataAttributeBinding. This ID will be different if the DataAttributeBinding is deleted and re-created with the same name.", + "readOnly": true, + "type": "string" + }, + "updateTime": { + "description": "Output only. The time when the DataAttributeBinding was last updated.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDataplexV1DataAttributeBindingPath": { + "description": "Represents a subresource of a given resource, and associated bindings with it.", + "id": "GoogleCloudDataplexV1DataAttributeBindingPath", + "properties": { + "attributes": { + "description": "Optional. List of attributes to be associated with the path of the resource, provided in the form: projects/{project}/locations/{location}/dataTaxonomies/{dataTaxonomy}/attributes/{data_attribute_id}", + "items": { + "type": "string" + }, + "type": "array" + }, + "name": { + "description": "Required. The name identifier of the path. Nested columns should be of the form: 'country.state.city'.", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudDataplexV1DataProfileResult": { "description": "DataProfileResult defines the output of DataProfileScan. Each field of the table will have field type specific profile result.", "id": "GoogleCloudDataplexV1DataProfileResult", @@ -4985,6 +5683,60 @@ }, "type": "object" }, + "GoogleCloudDataplexV1DataTaxonomy": { + "description": "DataTaxonomy represents a set of hierarchical DataAttributes resources, grouped with a common theme Eg: 'SensitiveDataTaxonomy' can have attributes to manage PII data. It is defined at project level.", + "id": "GoogleCloudDataplexV1DataTaxonomy", + "properties": { + "attributeCount": { + "description": "Output only. The number of attributes in the DataTaxonomy.", + "format": "int32", + "readOnly": true, + "type": "integer" + }, + "createTime": { + "description": "Output only. The time when the DataTaxonomy was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "description": { + "description": "Optional. Description of the DataTaxonomy.", + "type": "string" + }, + "displayName": { + "description": "Optional. User friendly display name.", + "type": "string" + }, + "etag": { + "description": "This checksum is computed by the server based on the value of other fields, and may be sent on update and delete requests to ensure the client has an up-to-date value before proceeding.", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. User-defined labels for the DataTaxonomy.", + "type": "object" + }, + "name": { + "description": "Output only. The relative resource name of the DataTaxonomy, of the form: projects/{project_number}/locations/{location_id}/dataTaxonomies/{data_taxonomy_id}.", + "readOnly": true, + "type": "string" + }, + "uid": { + "description": "Output only. System generated globally unique ID for the dataTaxonomy. This ID will be different if the DataTaxonomy is deleted and re-created with the same name.", + "readOnly": true, + "type": "string" + }, + "updateTime": { + "description": "Output only. The time when the DataTaxonomy was last updated.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudDataplexV1DiscoveryEvent": { "description": "The payload associated with Discovery data processing.", "id": "GoogleCloudDataplexV1DiscoveryEvent", @@ -5816,6 +6568,56 @@ }, "type": "object" }, + "GoogleCloudDataplexV1ListDataAttributeBindingsResponse": { + "description": "List DataAttributeBindings response.", + "id": "GoogleCloudDataplexV1ListDataAttributeBindingsResponse", + "properties": { + "dataAttributeBindings": { + "description": "DataAttributeBindings under the given parent Location.", + "items": { + "$ref": "GoogleCloudDataplexV1DataAttributeBinding" + }, + "type": "array" + }, + "nextPageToken": { + "description": "Token to retrieve the next page of results, or empty if there are no more results in the list.", + "type": "string" + }, + "unreachableLocations": { + "description": "Locations that could not be reached.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleCloudDataplexV1ListDataAttributesResponse": { + "description": "List DataAttributes response.", + "id": "GoogleCloudDataplexV1ListDataAttributesResponse", + "properties": { + "dataAttributes": { + "description": "DataAttributes under the given parent DataTaxonomy.", + "items": { + "$ref": "GoogleCloudDataplexV1DataAttribute" + }, + "type": "array" + }, + "nextPageToken": { + "description": "Token to retrieve the next page of results, or empty if there are no more results in the list.", + "type": "string" + }, + "unreachableLocations": { + "description": "Locations that could not be reached.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "GoogleCloudDataplexV1ListDataScanJobsResponse": { "description": "List DataScanJobs response.", "id": "GoogleCloudDataplexV1ListDataScanJobsResponse", @@ -5859,6 +6661,31 @@ }, "type": "object" }, + "GoogleCloudDataplexV1ListDataTaxonomiesResponse": { + "description": "List DataTaxonomies response.", + "id": "GoogleCloudDataplexV1ListDataTaxonomiesResponse", + "properties": { + "dataTaxonomies": { + "description": "DataTaxonomies under the given parent location.", + "items": { + "$ref": "GoogleCloudDataplexV1DataTaxonomy" + }, + "type": "array" + }, + "nextPageToken": { + "description": "Token to retrieve the next page of results, or empty if there are no more results in the list.", + "type": "string" + }, + "unreachableLocations": { + "description": "Locations that could not be reached.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "GoogleCloudDataplexV1ListEntitiesResponse": { "description": "List metadata entities response.", "id": "GoogleCloudDataplexV1ListEntitiesResponse", @@ -6088,6 +6915,34 @@ }, "type": "object" }, + "GoogleCloudDataplexV1ResourceAccessSpec": { + "description": "ResourceAccessSpec holds the access control configuration to be enforced on the resources, for example, Cloud Storage bucket, BigQuery dataset, BigQuery table.", + "id": "GoogleCloudDataplexV1ResourceAccessSpec", + "properties": { + "owners": { + "description": "Optional. The set of principals to be granted owner role on the resource.", + "items": { + "type": "string" + }, + "type": "array" + }, + "readers": { + "description": "Optional. The format of strings follows the pattern followed by IAM in the bindings. user:{email}, serviceAccount:{email} group:{email}. The set of principals to be granted reader role on the resource.", + "items": { + "type": "string" + }, + "type": "array" + }, + "writers": { + "description": "Optional. The set of principals to be granted writer role on the resource.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "GoogleCloudDataplexV1RunDataScanRequest": { "description": "Run DataScan Request", "id": "GoogleCloudDataplexV1RunDataScanRequest", diff --git a/dataplex/v1/dataplex-gen.go b/dataplex/v1/dataplex-gen.go index bfd201b699e..a5fa0e87d04 100644 --- a/dataplex/v1/dataplex-gen.go +++ b/dataplex/v1/dataplex-gen.go @@ -1330,6 +1330,247 @@ func (s *GoogleCloudDataplexV1ContentSqlScript) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// GoogleCloudDataplexV1DataAccessSpec: DataAccessSpec holds the access +// control configuration to be enforced on data stored within resources +// (eg: rows, columns in BigQuery Tables). When associated with data,the +// data is only accessible to principals explicitly granted access +// through the DataAttribute. Principals with access to the containing +// resource are not implicitly granted access. +type GoogleCloudDataplexV1DataAccessSpec struct { + // Readers: Optional. The format of strings follows the pattern followed + // by IAM in the bindings. user:{email}, serviceAccount:{email} + // group:{email}. The set of principals to be granted reader role on + // data stored within resources. + Readers []string `json:"readers,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Readers") 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. "Readers") 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 *GoogleCloudDataplexV1DataAccessSpec) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDataplexV1DataAccessSpec + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDataplexV1DataAttribute: Denotes one dataAttribute in a +// dataTaxonomy, for example, PII. DataAttribute resources can be +// defined in a hierarchy. A single dataAttribute resource can contain +// specs of multiple types PII - ResourceAccessSpec : - readers +// :foo@bar.com - DataAccessSpec : - readers :bar@foo.com +type GoogleCloudDataplexV1DataAttribute struct { + // AttributeCount: Output only. The number of child attributes present + // for this attribute. + AttributeCount int64 `json:"attributeCount,omitempty"` + + // CreateTime: Output only. The time when the DataAttribute was created. + CreateTime string `json:"createTime,omitempty"` + + // DataAccessSpec: Optional. Specified when applied to data stored on + // the resource (eg: rows, columns in BigQuery Tables). + DataAccessSpec *GoogleCloudDataplexV1DataAccessSpec `json:"dataAccessSpec,omitempty"` + + // Description: Optional. Description of the DataAttribute. + Description string `json:"description,omitempty"` + + // DisplayName: Optional. User friendly display name. + DisplayName string `json:"displayName,omitempty"` + + // Etag: This checksum is computed by the server based on the value of + // other fields, and may be sent on update and delete requests to ensure + // the client has an up-to-date value before proceeding. + Etag string `json:"etag,omitempty"` + + // Labels: Optional. User-defined labels for the DataAttribute. + Labels map[string]string `json:"labels,omitempty"` + + // Name: Output only. The relative resource name of the dataAttribute, + // of the form: + // projects/{project_number}/locations/{location_id}/dataTaxonomies/{data + // Taxonomy}/attributes/{data_attribute_id}. + Name string `json:"name,omitempty"` + + // ParentId: Optional. The ID of the parent DataAttribute resource, + // should belong to the same data taxonomy. Circular dependency in + // parent chain is not valid. Maximum depth of the hierarchy allowed is + // 4. a -> b -> c -> d -> e, depth = 4 + ParentId string `json:"parentId,omitempty"` + + // ResourceAccessSpec: Optional. Specified when applied to a resource + // (eg: Cloud Storage bucket, BigQuery dataset, BigQuery table). + ResourceAccessSpec *GoogleCloudDataplexV1ResourceAccessSpec `json:"resourceAccessSpec,omitempty"` + + // Uid: Output only. System generated globally unique ID for the + // DataAttribute. This ID will be different if the DataAttribute is + // deleted and re-created with the same name. + Uid string `json:"uid,omitempty"` + + // UpdateTime: Output only. The time when the DataAttribute was last + // updated. + UpdateTime string `json:"updateTime,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "AttributeCount") 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. "AttributeCount") 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 *GoogleCloudDataplexV1DataAttribute) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDataplexV1DataAttribute + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDataplexV1DataAttributeBinding: DataAttributeBinding +// represents binding of attributes to resources. Eg: Bind +// 'CustomerInfo' entity with 'PII' attribute. +type GoogleCloudDataplexV1DataAttributeBinding struct { + // Attributes: Optional. List of attributes to be associated with the + // resource, provided in the form: + // projects/{project}/locations/{location}/dataTaxonomies/{dataTaxonomy}/ + // attributes/{data_attribute_id} + Attributes []string `json:"attributes,omitempty"` + + // CreateTime: Output only. The time when the DataAttributeBinding was + // created. + CreateTime string `json:"createTime,omitempty"` + + // Description: Optional. Description of the DataAttributeBinding. + Description string `json:"description,omitempty"` + + // DisplayName: Optional. User friendly display name. + DisplayName string `json:"displayName,omitempty"` + + // Etag: This checksum is computed by the server based on the value of + // other fields, and may be sent on update and delete requests to ensure + // the client has an up-to-date value before proceeding. Etags must be + // used when calling the DeleteDataAttributeBinding and the + // UpdateDataAttributeBinding method. + Etag string `json:"etag,omitempty"` + + // Labels: Optional. User-defined labels for the DataAttributeBinding. + Labels map[string]string `json:"labels,omitempty"` + + // Name: Output only. The relative resource name of the Data Attribute + // Binding, of the form: + // projects/{project_number}/locations/{location}/dataAttributeBindings/{ + // data_attribute_binding_id} + Name string `json:"name,omitempty"` + + // Paths: Optional. The list of paths for items within the associated + // resource (eg. columns within a table) along with attribute bindings. + Paths []*GoogleCloudDataplexV1DataAttributeBindingPath `json:"paths,omitempty"` + + // Resource: Optional. Immutable. The resource name of the resource that + // is binded to attributes. Presently, only entity resource is supported + // in the form: + // projects/{project}/locations/{location}/lakes/{lake}/zones/{zone}/enti + // ties/{entity_id} Must belong in the same project and region as the + // attribute binding, and there can only exist one active binding for a + // resource. + Resource string `json:"resource,omitempty"` + + // Uid: Output only. System generated globally unique ID for the + // DataAttributeBinding. This ID will be different if the + // DataAttributeBinding is deleted and re-created with the same name. + Uid string `json:"uid,omitempty"` + + // UpdateTime: Output only. The time when the DataAttributeBinding was + // last updated. + UpdateTime string `json:"updateTime,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "Attributes") 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. "Attributes") 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 *GoogleCloudDataplexV1DataAttributeBinding) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDataplexV1DataAttributeBinding + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDataplexV1DataAttributeBindingPath: Represents a +// subresource of a given resource, and associated bindings with it. +type GoogleCloudDataplexV1DataAttributeBindingPath struct { + // Attributes: Optional. List of attributes to be associated with the + // path of the resource, provided in the form: + // projects/{project}/locations/{location}/dataTaxonomies/{dataTaxonomy}/ + // attributes/{data_attribute_id} + Attributes []string `json:"attributes,omitempty"` + + // Name: Required. The name identifier of the path. Nested columns + // should be of the form: 'country.state.city'. + Name string `json:"name,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Attributes") 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. "Attributes") 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 *GoogleCloudDataplexV1DataAttributeBindingPath) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDataplexV1DataAttributeBindingPath + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // GoogleCloudDataplexV1DataProfileResult: DataProfileResult defines the // output of DataProfileScan. Each field of the table will have field // type specific profile result. @@ -2674,6 +2915,75 @@ func (s *GoogleCloudDataplexV1DataSource) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// GoogleCloudDataplexV1DataTaxonomy: DataTaxonomy represents a set of +// hierarchical DataAttributes resources, grouped with a common theme +// Eg: 'SensitiveDataTaxonomy' can have attributes to manage PII data. +// It is defined at project level. +type GoogleCloudDataplexV1DataTaxonomy struct { + // AttributeCount: Output only. The number of attributes in the + // DataTaxonomy. + AttributeCount int64 `json:"attributeCount,omitempty"` + + // CreateTime: Output only. The time when the DataTaxonomy was created. + CreateTime string `json:"createTime,omitempty"` + + // Description: Optional. Description of the DataTaxonomy. + Description string `json:"description,omitempty"` + + // DisplayName: Optional. User friendly display name. + DisplayName string `json:"displayName,omitempty"` + + // Etag: This checksum is computed by the server based on the value of + // other fields, and may be sent on update and delete requests to ensure + // the client has an up-to-date value before proceeding. + Etag string `json:"etag,omitempty"` + + // Labels: Optional. User-defined labels for the DataTaxonomy. + Labels map[string]string `json:"labels,omitempty"` + + // Name: Output only. The relative resource name of the DataTaxonomy, of + // the form: + // projects/{project_number}/locations/{location_id}/dataTaxonomies/{data + // _taxonomy_id}. + Name string `json:"name,omitempty"` + + // Uid: Output only. System generated globally unique ID for the + // dataTaxonomy. This ID will be different if the DataTaxonomy is + // deleted and re-created with the same name. + Uid string `json:"uid,omitempty"` + + // UpdateTime: Output only. The time when the DataTaxonomy was last + // updated. + UpdateTime string `json:"updateTime,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "AttributeCount") 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. "AttributeCount") 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 *GoogleCloudDataplexV1DataTaxonomy) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDataplexV1DataTaxonomy + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // GoogleCloudDataplexV1DiscoveryEvent: The payload associated with // Discovery data processing. type GoogleCloudDataplexV1DiscoveryEvent struct { @@ -3797,6 +4107,90 @@ func (s *GoogleCloudDataplexV1ListContentResponse) MarshalJSON() ([]byte, error) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// GoogleCloudDataplexV1ListDataAttributeBindingsResponse: List +// DataAttributeBindings response. +type GoogleCloudDataplexV1ListDataAttributeBindingsResponse struct { + // DataAttributeBindings: DataAttributeBindings under the given parent + // Location. + DataAttributeBindings []*GoogleCloudDataplexV1DataAttributeBinding `json:"dataAttributeBindings,omitempty"` + + // NextPageToken: Token to retrieve the next page of results, or empty + // if there are no more results in the list. + NextPageToken string `json:"nextPageToken,omitempty"` + + // UnreachableLocations: Locations that could not be reached. + UnreachableLocations []string `json:"unreachableLocations,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. + // "DataAttributeBindings") 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. "DataAttributeBindings") 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 *GoogleCloudDataplexV1ListDataAttributeBindingsResponse) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDataplexV1ListDataAttributeBindingsResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDataplexV1ListDataAttributesResponse: List DataAttributes +// response. +type GoogleCloudDataplexV1ListDataAttributesResponse struct { + // DataAttributes: DataAttributes under the given parent DataTaxonomy. + DataAttributes []*GoogleCloudDataplexV1DataAttribute `json:"dataAttributes,omitempty"` + + // NextPageToken: Token to retrieve the next page of results, or empty + // if there are no more results in the list. + NextPageToken string `json:"nextPageToken,omitempty"` + + // UnreachableLocations: Locations that could not be reached. + UnreachableLocations []string `json:"unreachableLocations,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "DataAttributes") 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. "DataAttributes") 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 *GoogleCloudDataplexV1ListDataAttributesResponse) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDataplexV1ListDataAttributesResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // GoogleCloudDataplexV1ListDataScanJobsResponse: List DataScanJobs // response. type GoogleCloudDataplexV1ListDataScanJobsResponse struct { @@ -3874,21 +4268,24 @@ func (s *GoogleCloudDataplexV1ListDataScansResponse) MarshalJSON() ([]byte, erro return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// GoogleCloudDataplexV1ListEntitiesResponse: List metadata entities +// GoogleCloudDataplexV1ListDataTaxonomiesResponse: List DataTaxonomies // response. -type GoogleCloudDataplexV1ListEntitiesResponse struct { - // Entities: Entities in the specified parent zone. - Entities []*GoogleCloudDataplexV1Entity `json:"entities,omitempty"` +type GoogleCloudDataplexV1ListDataTaxonomiesResponse struct { + // DataTaxonomies: DataTaxonomies under the given parent location. + DataTaxonomies []*GoogleCloudDataplexV1DataTaxonomy `json:"dataTaxonomies,omitempty"` // NextPageToken: Token to retrieve the next page of results, or empty - // if there are no remaining results in the list. + // if there are no more results in the list. NextPageToken string `json:"nextPageToken,omitempty"` + // UnreachableLocations: Locations that could not be reached. + UnreachableLocations []string `json:"unreachableLocations,omitempty"` + // ServerResponse contains the HTTP response code and headers from the // server. googleapi.ServerResponse `json:"-"` - // ForceSendFields is a list of field names (e.g. "Entities") to + // ForceSendFields is a list of field names (e.g. "DataTaxonomies") 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 @@ -3896,7 +4293,45 @@ type GoogleCloudDataplexV1ListEntitiesResponse struct { // This may be used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "Entities") to include in + // NullFields is a list of field names (e.g. "DataTaxonomies") 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 *GoogleCloudDataplexV1ListDataTaxonomiesResponse) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDataplexV1ListDataTaxonomiesResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDataplexV1ListEntitiesResponse: List metadata entities +// response. +type GoogleCloudDataplexV1ListEntitiesResponse struct { + // Entities: Entities in the specified parent zone. + Entities []*GoogleCloudDataplexV1Entity `json:"entities,omitempty"` + + // NextPageToken: Token to retrieve the next page of results, or empty + // if there are no remaining results in the list. + 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. "Entities") 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. "Entities") 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 @@ -4274,6 +4709,47 @@ func (s *GoogleCloudDataplexV1Partition) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// GoogleCloudDataplexV1ResourceAccessSpec: ResourceAccessSpec holds the +// access control configuration to be enforced on the resources, for +// example, Cloud Storage bucket, BigQuery dataset, BigQuery table. +type GoogleCloudDataplexV1ResourceAccessSpec struct { + // Owners: Optional. The set of principals to be granted owner role on + // the resource. + Owners []string `json:"owners,omitempty"` + + // Readers: Optional. The format of strings follows the pattern followed + // by IAM in the bindings. user:{email}, serviceAccount:{email} + // group:{email}. The set of principals to be granted reader role on the + // resource. + Readers []string `json:"readers,omitempty"` + + // Writers: Optional. The set of principals to be granted writer role on + // the resource. + Writers []string `json:"writers,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Owners") 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. "Owners") 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 *GoogleCloudDataplexV1ResourceAccessSpec) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDataplexV1ResourceAccessSpec + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // GoogleCloudDataplexV1RunDataScanRequest: Run DataScan Request type GoogleCloudDataplexV1RunDataScanRequest struct { } @@ -6854,118 +7330,107 @@ func (c *ProjectsLocationsListCall) Pages(ctx context.Context, f func(*GoogleClo } } -// method id "dataplex.projects.locations.dataAttributeBindings.getIamPolicy": +// method id "dataplex.projects.locations.dataAttributeBindings.create": -type ProjectsLocationsDataAttributeBindingsGetIamPolicyCall struct { - s *Service - resource string - urlParams_ gensupport.URLParams - ifNoneMatch_ string - ctx_ context.Context - header_ http.Header +type ProjectsLocationsDataAttributeBindingsCreateCall struct { + s *Service + parent string + googleclouddataplexv1dataattributebinding *GoogleCloudDataplexV1DataAttributeBinding + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header } -// GetIamPolicy: Gets the access control policy for a resource. Returns -// an empty policy if the resource exists and does not have a policy -// set. +// Create: Create a DataAttributeBinding resource. // -// - resource: REQUIRED: The resource for which the policy is being -// requested. See Resource names -// (https://cloud.google.com/apis/design/resource_names) for the -// appropriate value for this field. -func (r *ProjectsLocationsDataAttributeBindingsService) GetIamPolicy(resource string) *ProjectsLocationsDataAttributeBindingsGetIamPolicyCall { - c := &ProjectsLocationsDataAttributeBindingsGetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)} - c.resource = resource +// - parent: The resource name of the parent data taxonomy +// projects/{project_number}/locations/{location_id}. +func (r *ProjectsLocationsDataAttributeBindingsService) Create(parent string, googleclouddataplexv1dataattributebinding *GoogleCloudDataplexV1DataAttributeBinding) *ProjectsLocationsDataAttributeBindingsCreateCall { + c := &ProjectsLocationsDataAttributeBindingsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + c.googleclouddataplexv1dataattributebinding = googleclouddataplexv1dataattributebinding return c } -// OptionsRequestedPolicyVersion sets the optional parameter -// "options.requestedPolicyVersion": The maximum policy version that -// will be used to format the policy.Valid values are 0, 1, and 3. -// Requests specifying an invalid value will be rejected.Requests for -// policies with any conditional role bindings must specify version 3. -// Policies with no conditional role bindings may specify any valid -// value or leave the field unset.The policy in the response might use -// the policy version that you specified, or it might use a lower policy -// version. For example, if you specify version 3, but the policy has no -// conditional role bindings, the response uses version 1.To learn which -// resources support conditions in their IAM policies, see the IAM -// documentation -// (https://cloud.google.com/iam/help/conditions/resource-policies). -func (c *ProjectsLocationsDataAttributeBindingsGetIamPolicyCall) OptionsRequestedPolicyVersion(optionsRequestedPolicyVersion int64) *ProjectsLocationsDataAttributeBindingsGetIamPolicyCall { - c.urlParams_.Set("options.requestedPolicyVersion", fmt.Sprint(optionsRequestedPolicyVersion)) +// DataAttributeBindingId sets the optional parameter +// "dataAttributeBindingId": Required. DataAttributeBinding identifier. +// * Must contain only lowercase letters, numbers and hyphens. * Must +// start with a letter. * Must be between 1-63 characters. * Must end +// with a number or a letter. * Must be unique within the Location. +func (c *ProjectsLocationsDataAttributeBindingsCreateCall) DataAttributeBindingId(dataAttributeBindingId string) *ProjectsLocationsDataAttributeBindingsCreateCall { + c.urlParams_.Set("dataAttributeBindingId", dataAttributeBindingId) + return c +} + +// ValidateOnly sets the optional parameter "validateOnly": Only +// validate the request, but do not perform mutations. The default is +// false. +func (c *ProjectsLocationsDataAttributeBindingsCreateCall) ValidateOnly(validateOnly bool) *ProjectsLocationsDataAttributeBindingsCreateCall { + c.urlParams_.Set("validateOnly", fmt.Sprint(validateOnly)) 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 *ProjectsLocationsDataAttributeBindingsGetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsLocationsDataAttributeBindingsGetIamPolicyCall { +func (c *ProjectsLocationsDataAttributeBindingsCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsDataAttributeBindingsCreateCall { 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 *ProjectsLocationsDataAttributeBindingsGetIamPolicyCall) IfNoneMatch(entityTag string) *ProjectsLocationsDataAttributeBindingsGetIamPolicyCall { - 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 *ProjectsLocationsDataAttributeBindingsGetIamPolicyCall) Context(ctx context.Context) *ProjectsLocationsDataAttributeBindingsGetIamPolicyCall { +func (c *ProjectsLocationsDataAttributeBindingsCreateCall) Context(ctx context.Context) *ProjectsLocationsDataAttributeBindingsCreateCall { 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 *ProjectsLocationsDataAttributeBindingsGetIamPolicyCall) Header() http.Header { +func (c *ProjectsLocationsDataAttributeBindingsCreateCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } -func (c *ProjectsLocationsDataAttributeBindingsGetIamPolicyCall) doRequest(alt string) (*http.Response, error) { +func (c *ProjectsLocationsDataAttributeBindingsCreateCall) 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 + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddataplexv1dataattributebinding) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") - urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+resource}:getIamPolicy") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/dataAttributeBindings") urls += "?" + c.urlParams_.Encode() - req, err := http.NewRequest("GET", urls, body) + req, err := http.NewRequest("POST", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ - "resource": c.resource, + "parent": c.parent, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } -// Do executes the "dataplex.projects.locations.dataAttributeBindings.getIamPolicy" call. -// Exactly one of *GoogleIamV1Policy or error will be non-nil. Any -// non-2xx status code is an error. Response headers are in either -// *GoogleIamV1Policy.ServerResponse.Header or (if a response was -// returned at all) in error.(*googleapi.Error).Header. Use +// Do executes the "dataplex.projects.locations.dataAttributeBindings.create" call. +// Exactly one of *GoogleLongrunningOperation or error will be non-nil. +// Any non-2xx status code is an error. Response headers are in either +// *GoogleLongrunningOperation.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 *ProjectsLocationsDataAttributeBindingsGetIamPolicyCall) Do(opts ...googleapi.CallOption) (*GoogleIamV1Policy, error) { +func (c *ProjectsLocationsDataAttributeBindingsCreateCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { @@ -6984,7 +7449,7 @@ func (c *ProjectsLocationsDataAttributeBindingsGetIamPolicyCall) Do(opts ...goog if err := googleapi.CheckResponse(res); err != nil { return nil, gensupport.WrapError(err) } - ret := &GoogleIamV1Policy{ + ret := &GoogleLongrunningOperation{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, @@ -6996,31 +7461,38 @@ func (c *ProjectsLocationsDataAttributeBindingsGetIamPolicyCall) Do(opts ...goog } return ret, nil // { - // "description": "Gets the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set.", - // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataAttributeBindings/{dataAttributeBindingsId}:getIamPolicy", - // "httpMethod": "GET", - // "id": "dataplex.projects.locations.dataAttributeBindings.getIamPolicy", + // "description": "Create a DataAttributeBinding resource.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataAttributeBindings", + // "httpMethod": "POST", + // "id": "dataplex.projects.locations.dataAttributeBindings.create", // "parameterOrder": [ - // "resource" + // "parent" // ], // "parameters": { - // "options.requestedPolicyVersion": { - // "description": "Optional. The maximum policy version that will be used to format the policy.Valid values are 0, 1, and 3. Requests specifying an invalid value will be rejected.Requests for policies with any conditional role bindings must specify version 3. Policies with no conditional role bindings may specify any valid value or leave the field unset.The policy in the response might use the policy version that you specified, or it might use a lower policy version. For example, if you specify version 3, but the policy has no conditional role bindings, the response uses version 1.To learn which resources support conditions in their IAM policies, see the IAM documentation (https://cloud.google.com/iam/help/conditions/resource-policies).", - // "format": "int32", + // "dataAttributeBindingId": { + // "description": "Required. DataAttributeBinding identifier. * Must contain only lowercase letters, numbers and hyphens. * Must start with a letter. * Must be between 1-63 characters. * Must end with a number or a letter. * Must be unique within the Location.", // "location": "query", - // "type": "integer" + // "type": "string" // }, - // "resource": { - // "description": "REQUIRED: The resource for which the policy is being requested. See Resource names (https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.", + // "parent": { + // "description": "Required. The resource name of the parent data taxonomy projects/{project_number}/locations/{location_id}", // "location": "path", - // "pattern": "^projects/[^/]+/locations/[^/]+/dataAttributeBindings/[^/]+$", + // "pattern": "^projects/[^/]+/locations/[^/]+$", // "required": true, // "type": "string" + // }, + // "validateOnly": { + // "description": "Optional. Only validate the request, but do not perform mutations. The default is false.", + // "location": "query", + // "type": "boolean" // } // }, - // "path": "v1/{+resource}:getIamPolicy", + // "path": "v1/{+parent}/dataAttributeBindings", + // "request": { + // "$ref": "GoogleCloudDataplexV1DataAttributeBinding" + // }, // "response": { - // "$ref": "GoogleIamV1Policy" + // "$ref": "GoogleLongrunningOperation" // }, // "scopes": [ // "https://www.googleapis.com/auth/cloud-platform" @@ -7029,36 +7501,43 @@ func (c *ProjectsLocationsDataAttributeBindingsGetIamPolicyCall) Do(opts ...goog } -// method id "dataplex.projects.locations.dataAttributeBindings.setIamPolicy": +// method id "dataplex.projects.locations.dataAttributeBindings.delete": -type ProjectsLocationsDataAttributeBindingsSetIamPolicyCall struct { - s *Service - resource string - googleiamv1setiampolicyrequest *GoogleIamV1SetIamPolicyRequest - urlParams_ gensupport.URLParams - ctx_ context.Context - header_ http.Header +type ProjectsLocationsDataAttributeBindingsDeleteCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header } -// SetIamPolicy: Sets the access control policy on the specified -// resource. Replaces any existing policy.Can return NOT_FOUND, -// INVALID_ARGUMENT, and PERMISSION_DENIED errors. +// Delete: Deletes a DataAttributeBinding resource. All attributes +// within the DataAttributeBinding must be deleted before the +// DataAttributeBinding can be deleted. // -// - resource: REQUIRED: The resource for which the policy is being -// specified. See Resource names -// (https://cloud.google.com/apis/design/resource_names) for the -// appropriate value for this field. -func (r *ProjectsLocationsDataAttributeBindingsService) SetIamPolicy(resource string, googleiamv1setiampolicyrequest *GoogleIamV1SetIamPolicyRequest) *ProjectsLocationsDataAttributeBindingsSetIamPolicyCall { - c := &ProjectsLocationsDataAttributeBindingsSetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)} - c.resource = resource - c.googleiamv1setiampolicyrequest = googleiamv1setiampolicyrequest +// - name: The resource name of the DataAttributeBinding: +// projects/{project_number}/locations/{location_id}/dataAttributeBindi +// ngs/{data_attribute_binding_id}. +func (r *ProjectsLocationsDataAttributeBindingsService) Delete(name string) *ProjectsLocationsDataAttributeBindingsDeleteCall { + c := &ProjectsLocationsDataAttributeBindingsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// Etag sets the optional parameter "etag": Required. If the client +// provided etag value does not match the current etag value, the +// DeleteDataAttributeBindingRequest method returns an ABORTED error +// response. Etags must be used when calling the +// DeleteDataAttributeBinding. +func (c *ProjectsLocationsDataAttributeBindingsDeleteCall) Etag(etag string) *ProjectsLocationsDataAttributeBindingsDeleteCall { + c.urlParams_.Set("etag", etag) 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 *ProjectsLocationsDataAttributeBindingsSetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsLocationsDataAttributeBindingsSetIamPolicyCall { +func (c *ProjectsLocationsDataAttributeBindingsDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsDataAttributeBindingsDeleteCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } @@ -7066,21 +7545,21 @@ func (c *ProjectsLocationsDataAttributeBindingsSetIamPolicyCall) Fields(s ...goo // 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 *ProjectsLocationsDataAttributeBindingsSetIamPolicyCall) Context(ctx context.Context) *ProjectsLocationsDataAttributeBindingsSetIamPolicyCall { +func (c *ProjectsLocationsDataAttributeBindingsDeleteCall) Context(ctx context.Context) *ProjectsLocationsDataAttributeBindingsDeleteCall { 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 *ProjectsLocationsDataAttributeBindingsSetIamPolicyCall) Header() http.Header { +func (c *ProjectsLocationsDataAttributeBindingsDeleteCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } -func (c *ProjectsLocationsDataAttributeBindingsSetIamPolicyCall) doRequest(alt string) (*http.Response, error) { +func (c *ProjectsLocationsDataAttributeBindingsDeleteCall) 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_ { @@ -7088,34 +7567,29 @@ func (c *ProjectsLocationsDataAttributeBindingsSetIamPolicyCall) doRequest(alt s } reqHeaders.Set("User-Agent", c.s.userAgent()) var body io.Reader = nil - body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleiamv1setiampolicyrequest) - if err != nil { - return nil, err - } - reqHeaders.Set("Content-Type", "application/json") c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") - urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+resource}:setIamPolicy") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}") urls += "?" + c.urlParams_.Encode() - req, err := http.NewRequest("POST", urls, body) + req, err := http.NewRequest("DELETE", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ - "resource": c.resource, + "name": c.name, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } -// Do executes the "dataplex.projects.locations.dataAttributeBindings.setIamPolicy" call. -// Exactly one of *GoogleIamV1Policy or error will be non-nil. Any -// non-2xx status code is an error. Response headers are in either -// *GoogleIamV1Policy.ServerResponse.Header or (if a response was -// returned at all) in error.(*googleapi.Error).Header. Use +// Do executes the "dataplex.projects.locations.dataAttributeBindings.delete" call. +// Exactly one of *GoogleLongrunningOperation or error will be non-nil. +// Any non-2xx status code is an error. Response headers are in either +// *GoogleLongrunningOperation.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 *ProjectsLocationsDataAttributeBindingsSetIamPolicyCall) Do(opts ...googleapi.CallOption) (*GoogleIamV1Policy, error) { +func (c *ProjectsLocationsDataAttributeBindingsDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { @@ -7134,7 +7608,7 @@ func (c *ProjectsLocationsDataAttributeBindingsSetIamPolicyCall) Do(opts ...goog if err := googleapi.CheckResponse(res); err != nil { return nil, gensupport.WrapError(err) } - ret := &GoogleIamV1Policy{ + ret := &GoogleLongrunningOperation{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, @@ -7146,28 +7620,30 @@ func (c *ProjectsLocationsDataAttributeBindingsSetIamPolicyCall) Do(opts ...goog } return ret, nil // { - // "description": "Sets the access control policy on the specified resource. Replaces any existing policy.Can return NOT_FOUND, INVALID_ARGUMENT, and PERMISSION_DENIED errors.", - // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataAttributeBindings/{dataAttributeBindingsId}:setIamPolicy", - // "httpMethod": "POST", - // "id": "dataplex.projects.locations.dataAttributeBindings.setIamPolicy", + // "description": "Deletes a DataAttributeBinding resource. All attributes within the DataAttributeBinding must be deleted before the DataAttributeBinding can be deleted.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataAttributeBindings/{dataAttributeBindingsId}", + // "httpMethod": "DELETE", + // "id": "dataplex.projects.locations.dataAttributeBindings.delete", // "parameterOrder": [ - // "resource" + // "name" // ], // "parameters": { - // "resource": { - // "description": "REQUIRED: The resource for which the policy is being specified. See Resource names (https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.", + // "etag": { + // "description": "Required. If the client provided etag value does not match the current etag value, the DeleteDataAttributeBindingRequest method returns an ABORTED error response. Etags must be used when calling the DeleteDataAttributeBinding.", + // "location": "query", + // "type": "string" + // }, + // "name": { + // "description": "Required. The resource name of the DataAttributeBinding: projects/{project_number}/locations/{location_id}/dataAttributeBindings/{data_attribute_binding_id}", // "location": "path", // "pattern": "^projects/[^/]+/locations/[^/]+/dataAttributeBindings/[^/]+$", // "required": true, // "type": "string" // } // }, - // "path": "v1/{+resource}:setIamPolicy", - // "request": { - // "$ref": "GoogleIamV1SetIamPolicyRequest" - // }, + // "path": "v1/{+name}", // "response": { - // "$ref": "GoogleIamV1Policy" + // "$ref": "GoogleLongrunningOperation" // }, // "scopes": [ // "https://www.googleapis.com/auth/cloud-platform" @@ -7176,97 +7652,99 @@ func (c *ProjectsLocationsDataAttributeBindingsSetIamPolicyCall) Do(opts ...goog } -// method id "dataplex.projects.locations.dataAttributeBindings.testIamPermissions": +// method id "dataplex.projects.locations.dataAttributeBindings.get": -type ProjectsLocationsDataAttributeBindingsTestIamPermissionsCall struct { - s *Service - resource string - googleiamv1testiampermissionsrequest *GoogleIamV1TestIamPermissionsRequest - urlParams_ gensupport.URLParams - ctx_ context.Context - header_ http.Header +type ProjectsLocationsDataAttributeBindingsGetCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header } -// TestIamPermissions: Returns permissions that a caller has on the -// specified resource. If the resource does not exist, this will return -// an empty set of permissions, not a NOT_FOUND error.Note: This -// operation is designed to be used for building permission-aware UIs -// and command-line tools, not for authorization checking. This -// operation may "fail open" without warning. +// Get: Retrieves a DataAttributeBinding resource. // -// - resource: REQUIRED: The resource for which the policy detail is -// being requested. See Resource names -// (https://cloud.google.com/apis/design/resource_names) for the -// appropriate value for this field. -func (r *ProjectsLocationsDataAttributeBindingsService) TestIamPermissions(resource string, googleiamv1testiampermissionsrequest *GoogleIamV1TestIamPermissionsRequest) *ProjectsLocationsDataAttributeBindingsTestIamPermissionsCall { - c := &ProjectsLocationsDataAttributeBindingsTestIamPermissionsCall{s: r.s, urlParams_: make(gensupport.URLParams)} - c.resource = resource - c.googleiamv1testiampermissionsrequest = googleiamv1testiampermissionsrequest +// - name: The resource name of the DataAttributeBinding: +// projects/{project_number}/locations/{location_id}/dataAttributeBindi +// ngs/{data_attribute_binding_id}. +func (r *ProjectsLocationsDataAttributeBindingsService) Get(name string) *ProjectsLocationsDataAttributeBindingsGetCall { + c := &ProjectsLocationsDataAttributeBindingsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name 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 *ProjectsLocationsDataAttributeBindingsTestIamPermissionsCall) Fields(s ...googleapi.Field) *ProjectsLocationsDataAttributeBindingsTestIamPermissionsCall { +func (c *ProjectsLocationsDataAttributeBindingsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsDataAttributeBindingsGetCall { 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 *ProjectsLocationsDataAttributeBindingsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsDataAttributeBindingsGetCall { + 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 *ProjectsLocationsDataAttributeBindingsTestIamPermissionsCall) Context(ctx context.Context) *ProjectsLocationsDataAttributeBindingsTestIamPermissionsCall { +func (c *ProjectsLocationsDataAttributeBindingsGetCall) Context(ctx context.Context) *ProjectsLocationsDataAttributeBindingsGetCall { 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 *ProjectsLocationsDataAttributeBindingsTestIamPermissionsCall) Header() http.Header { +func (c *ProjectsLocationsDataAttributeBindingsGetCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } -func (c *ProjectsLocationsDataAttributeBindingsTestIamPermissionsCall) doRequest(alt string) (*http.Response, error) { +func (c *ProjectsLocationsDataAttributeBindingsGetCall) 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()) - var body io.Reader = nil - body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleiamv1testiampermissionsrequest) - if err != nil { - return nil, err + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) } - reqHeaders.Set("Content-Type", "application/json") + var body io.Reader = nil c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") - urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+resource}:testIamPermissions") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}") urls += "?" + c.urlParams_.Encode() - req, err := http.NewRequest("POST", urls, body) + req, err := http.NewRequest("GET", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ - "resource": c.resource, + "name": c.name, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } -// Do executes the "dataplex.projects.locations.dataAttributeBindings.testIamPermissions" call. -// Exactly one of *GoogleIamV1TestIamPermissionsResponse or error will -// be non-nil. Any non-2xx status code is an error. Response headers are -// in either -// *GoogleIamV1TestIamPermissionsResponse.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 *ProjectsLocationsDataAttributeBindingsTestIamPermissionsCall) Do(opts ...googleapi.CallOption) (*GoogleIamV1TestIamPermissionsResponse, error) { +// Do executes the "dataplex.projects.locations.dataAttributeBindings.get" call. +// Exactly one of *GoogleCloudDataplexV1DataAttributeBinding or error +// will be non-nil. Any non-2xx status code is an error. Response +// headers are in either +// *GoogleCloudDataplexV1DataAttributeBinding.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 *ProjectsLocationsDataAttributeBindingsGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDataplexV1DataAttributeBinding, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { @@ -7285,7 +7763,7 @@ func (c *ProjectsLocationsDataAttributeBindingsTestIamPermissionsCall) Do(opts . if err := googleapi.CheckResponse(res); err != nil { return nil, gensupport.WrapError(err) } - ret := &GoogleIamV1TestIamPermissionsResponse{ + ret := &GoogleCloudDataplexV1DataAttributeBinding{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, @@ -7297,28 +7775,25 @@ func (c *ProjectsLocationsDataAttributeBindingsTestIamPermissionsCall) Do(opts . } return ret, nil // { - // "description": "Returns permissions that a caller has on the specified resource. If the resource does not exist, this will return an empty set of permissions, not a NOT_FOUND error.Note: This operation is designed to be used for building permission-aware UIs and command-line tools, not for authorization checking. This operation may \"fail open\" without warning.", - // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataAttributeBindings/{dataAttributeBindingsId}:testIamPermissions", - // "httpMethod": "POST", - // "id": "dataplex.projects.locations.dataAttributeBindings.testIamPermissions", + // "description": "Retrieves a DataAttributeBinding resource.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataAttributeBindings/{dataAttributeBindingsId}", + // "httpMethod": "GET", + // "id": "dataplex.projects.locations.dataAttributeBindings.get", // "parameterOrder": [ - // "resource" + // "name" // ], // "parameters": { - // "resource": { - // "description": "REQUIRED: The resource for which the policy detail is being requested. See Resource names (https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.", + // "name": { + // "description": "Required. The resource name of the DataAttributeBinding: projects/{project_number}/locations/{location_id}/dataAttributeBindings/{data_attribute_binding_id}", // "location": "path", // "pattern": "^projects/[^/]+/locations/[^/]+/dataAttributeBindings/[^/]+$", // "required": true, // "type": "string" // } // }, - // "path": "v1/{+resource}:testIamPermissions", - // "request": { - // "$ref": "GoogleIamV1TestIamPermissionsRequest" - // }, + // "path": "v1/{+name}", // "response": { - // "$ref": "GoogleIamV1TestIamPermissionsResponse" + // "$ref": "GoogleCloudDataplexV1DataAttributeBinding" // }, // "scopes": [ // "https://www.googleapis.com/auth/cloud-platform" @@ -7327,101 +7802,118 @@ func (c *ProjectsLocationsDataAttributeBindingsTestIamPermissionsCall) Do(opts . } -// method id "dataplex.projects.locations.dataScans.create": +// method id "dataplex.projects.locations.dataAttributeBindings.getIamPolicy": -type ProjectsLocationsDataScansCreateCall struct { - s *Service - parent string - googleclouddataplexv1datascan *GoogleCloudDataplexV1DataScan - urlParams_ gensupport.URLParams - ctx_ context.Context - header_ http.Header +type ProjectsLocationsDataAttributeBindingsGetIamPolicyCall struct { + s *Service + resource string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header } -// Create: Creates a DataScan resource. +// GetIamPolicy: Gets the access control policy for a resource. Returns +// an empty policy if the resource exists and does not have a policy +// set. // -// - parent: The resource name of the parent location: -// projects/{project}/locations/{location_id} where project refers to -// a project_id or project_number and location_id refers to a GCP -// region. -func (r *ProjectsLocationsDataScansService) Create(parent string, googleclouddataplexv1datascan *GoogleCloudDataplexV1DataScan) *ProjectsLocationsDataScansCreateCall { - c := &ProjectsLocationsDataScansCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} - c.parent = parent - c.googleclouddataplexv1datascan = googleclouddataplexv1datascan +// - resource: REQUIRED: The resource for which the policy is being +// requested. See Resource names +// (https://cloud.google.com/apis/design/resource_names) for the +// appropriate value for this field. +func (r *ProjectsLocationsDataAttributeBindingsService) GetIamPolicy(resource string) *ProjectsLocationsDataAttributeBindingsGetIamPolicyCall { + c := &ProjectsLocationsDataAttributeBindingsGetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.resource = resource return c } -// DataScanId sets the optional parameter "dataScanId": Required. -// DataScan identifier. Must contain only lowercase letters, numbers and -// hyphens. Must start with a letter. Must end with a number or a -// letter. Must be between 1-63 characters. Must be unique within the -// customer project / location. -func (c *ProjectsLocationsDataScansCreateCall) DataScanId(dataScanId string) *ProjectsLocationsDataScansCreateCall { - c.urlParams_.Set("dataScanId", dataScanId) +// OptionsRequestedPolicyVersion sets the optional parameter +// "options.requestedPolicyVersion": The maximum policy version that +// will be used to format the policy.Valid values are 0, 1, and 3. +// Requests specifying an invalid value will be rejected.Requests for +// policies with any conditional role bindings must specify version 3. +// Policies with no conditional role bindings may specify any valid +// value or leave the field unset.The policy in the response might use +// the policy version that you specified, or it might use a lower policy +// version. For example, if you specify version 3, but the policy has no +// conditional role bindings, the response uses version 1.To learn which +// resources support conditions in their IAM policies, see the IAM +// documentation +// (https://cloud.google.com/iam/help/conditions/resource-policies). +func (c *ProjectsLocationsDataAttributeBindingsGetIamPolicyCall) OptionsRequestedPolicyVersion(optionsRequestedPolicyVersion int64) *ProjectsLocationsDataAttributeBindingsGetIamPolicyCall { + c.urlParams_.Set("options.requestedPolicyVersion", fmt.Sprint(optionsRequestedPolicyVersion)) 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 *ProjectsLocationsDataScansCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsDataScansCreateCall { +func (c *ProjectsLocationsDataAttributeBindingsGetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsLocationsDataAttributeBindingsGetIamPolicyCall { 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 *ProjectsLocationsDataAttributeBindingsGetIamPolicyCall) IfNoneMatch(entityTag string) *ProjectsLocationsDataAttributeBindingsGetIamPolicyCall { + 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 *ProjectsLocationsDataScansCreateCall) Context(ctx context.Context) *ProjectsLocationsDataScansCreateCall { +func (c *ProjectsLocationsDataAttributeBindingsGetIamPolicyCall) Context(ctx context.Context) *ProjectsLocationsDataAttributeBindingsGetIamPolicyCall { 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 *ProjectsLocationsDataScansCreateCall) Header() http.Header { +func (c *ProjectsLocationsDataAttributeBindingsGetIamPolicyCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } -func (c *ProjectsLocationsDataScansCreateCall) doRequest(alt string) (*http.Response, error) { +func (c *ProjectsLocationsDataAttributeBindingsGetIamPolicyCall) 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()) - var body io.Reader = nil - body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddataplexv1datascan) - if err != nil { - return nil, err + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) } - reqHeaders.Set("Content-Type", "application/json") + var body io.Reader = nil c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") - urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/dataScans") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+resource}:getIamPolicy") urls += "?" + c.urlParams_.Encode() - req, err := http.NewRequest("POST", urls, body) + req, err := http.NewRequest("GET", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ - "parent": c.parent, + "resource": c.resource, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } -// Do executes the "dataplex.projects.locations.dataScans.create" call. -// Exactly one of *GoogleLongrunningOperation or error will be non-nil. -// Any non-2xx status code is an error. Response headers are in either -// *GoogleLongrunningOperation.ServerResponse.Header or (if a response -// was returned at all) in error.(*googleapi.Error).Header. Use +// Do executes the "dataplex.projects.locations.dataAttributeBindings.getIamPolicy" call. +// Exactly one of *GoogleIamV1Policy or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *GoogleIamV1Policy.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 *ProjectsLocationsDataScansCreateCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) { +func (c *ProjectsLocationsDataAttributeBindingsGetIamPolicyCall) Do(opts ...googleapi.CallOption) (*GoogleIamV1Policy, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { @@ -7440,7 +7932,7 @@ func (c *ProjectsLocationsDataScansCreateCall) Do(opts ...googleapi.CallOption) if err := googleapi.CheckResponse(res); err != nil { return nil, gensupport.WrapError(err) } - ret := &GoogleLongrunningOperation{ + ret := &GoogleIamV1Policy{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, @@ -7452,33 +7944,31 @@ func (c *ProjectsLocationsDataScansCreateCall) Do(opts ...googleapi.CallOption) } return ret, nil // { - // "description": "Creates a DataScan resource.", - // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataScans", - // "httpMethod": "POST", - // "id": "dataplex.projects.locations.dataScans.create", + // "description": "Gets the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataAttributeBindings/{dataAttributeBindingsId}:getIamPolicy", + // "httpMethod": "GET", + // "id": "dataplex.projects.locations.dataAttributeBindings.getIamPolicy", // "parameterOrder": [ - // "parent" + // "resource" // ], // "parameters": { - // "dataScanId": { - // "description": "Required. DataScan identifier. Must contain only lowercase letters, numbers and hyphens. Must start with a letter. Must end with a number or a letter. Must be between 1-63 characters. Must be unique within the customer project / location.", + // "options.requestedPolicyVersion": { + // "description": "Optional. The maximum policy version that will be used to format the policy.Valid values are 0, 1, and 3. Requests specifying an invalid value will be rejected.Requests for policies with any conditional role bindings must specify version 3. Policies with no conditional role bindings may specify any valid value or leave the field unset.The policy in the response might use the policy version that you specified, or it might use a lower policy version. For example, if you specify version 3, but the policy has no conditional role bindings, the response uses version 1.To learn which resources support conditions in their IAM policies, see the IAM documentation (https://cloud.google.com/iam/help/conditions/resource-policies).", + // "format": "int32", // "location": "query", - // "type": "string" + // "type": "integer" // }, - // "parent": { - // "description": "Required. The resource name of the parent location: projects/{project}/locations/{location_id} where project refers to a project_id or project_number and location_id refers to a GCP region.", + // "resource": { + // "description": "REQUIRED: The resource for which the policy is being requested. See Resource names (https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.", // "location": "path", - // "pattern": "^projects/[^/]+/locations/[^/]+$", + // "pattern": "^projects/[^/]+/locations/[^/]+/dataAttributeBindings/[^/]+$", // "required": true, // "type": "string" // } // }, - // "path": "v1/{+parent}/dataScans", - // "request": { - // "$ref": "GoogleCloudDataplexV1DataScan" - // }, + // "path": "v1/{+resource}:getIamPolicy", // "response": { - // "$ref": "GoogleLongrunningOperation" + // "$ref": "GoogleIamV1Policy" // }, // "scopes": [ // "https://www.googleapis.com/auth/cloud-platform" @@ -7487,56 +7977,2796 @@ func (c *ProjectsLocationsDataScansCreateCall) Do(opts ...googleapi.CallOption) } -// method id "dataplex.projects.locations.dataScans.delete": +// method id "dataplex.projects.locations.dataAttributeBindings.list": -type ProjectsLocationsDataScansDeleteCall struct { - s *Service - name string - urlParams_ gensupport.URLParams - ctx_ context.Context - header_ http.Header +type ProjectsLocationsDataAttributeBindingsListCall struct { + s *Service + parent string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header } -// Delete: Deletes a DataScan resource. +// List: Lists DataAttributeBinding resources in a project and location. // -// - name: The resource name of the dataScan: -// projects/{project}/locations/{location_id}/dataScans/{data_scan_id} -// where project refers to a project_id or project_number and -// location_id refers to a GCP region. -func (r *ProjectsLocationsDataScansService) Delete(name string) *ProjectsLocationsDataScansDeleteCall { - c := &ProjectsLocationsDataScansDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} - c.name = name +// - parent: The resource name of the Location: +// projects/{project_number}/locations/{location_id}. +func (r *ProjectsLocationsDataAttributeBindingsService) List(parent string) *ProjectsLocationsDataAttributeBindingsListCall { + c := &ProjectsLocationsDataAttributeBindingsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent 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 *ProjectsLocationsDataScansDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsDataScansDeleteCall { - c.urlParams_.Set("fields", googleapi.CombineFields(s)) +// Filter sets the optional parameter "filter": Filter request. Filter +// using resource: filter=resource:"resource-name" Filter using +// attribute: filter=attributes:"attribute-name" Filter using attribute +// in paths list: filter=paths.attributes:"attribute-name" +func (c *ProjectsLocationsDataAttributeBindingsListCall) Filter(filter string) *ProjectsLocationsDataAttributeBindingsListCall { + c.urlParams_.Set("filter", filter) 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 *ProjectsLocationsDataScansDeleteCall) Context(ctx context.Context) *ProjectsLocationsDataScansDeleteCall { - c.ctx_ = ctx +// OrderBy sets the optional parameter "orderBy": Order by fields for +// the result. +func (c *ProjectsLocationsDataAttributeBindingsListCall) OrderBy(orderBy string) *ProjectsLocationsDataAttributeBindingsListCall { + c.urlParams_.Set("orderBy", orderBy) return c } -// Header returns an http.Header that can be modified by the caller to -// add HTTP headers to the request. -func (c *ProjectsLocationsDataScansDeleteCall) Header() http.Header { - if c.header_ == nil { - c.header_ = make(http.Header) - } - return c.header_ +// PageSize sets the optional parameter "pageSize": Maximum number of +// DataAttributeBindings to return. The service may return fewer than +// this value. If unspecified, at most 10 DataAttributeBindings will be +// returned. The maximum value is 1000; values above 1000 will be +// coerced to 1000. +func (c *ProjectsLocationsDataAttributeBindingsListCall) PageSize(pageSize int64) *ProjectsLocationsDataAttributeBindingsListCall { + c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) + return c } -func (c *ProjectsLocationsDataScansDeleteCall) doRequest(alt string) (*http.Response, error) { - reqHeaders := make(http.Header) - reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version) +// PageToken sets the optional parameter "pageToken": Page token +// received from a previous ListDataAttributeBindings call. Provide this +// to retrieve the subsequent page. When paginating, all other +// parameters provided to ListDataAttributeBindings must match the call +// that provided the page token. +func (c *ProjectsLocationsDataAttributeBindingsListCall) PageToken(pageToken string) *ProjectsLocationsDataAttributeBindingsListCall { + c.urlParams_.Set("pageToken", pageToken) + 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 *ProjectsLocationsDataAttributeBindingsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsDataAttributeBindingsListCall { + 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 *ProjectsLocationsDataAttributeBindingsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsDataAttributeBindingsListCall { + 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 *ProjectsLocationsDataAttributeBindingsListCall) Context(ctx context.Context) *ProjectsLocationsDataAttributeBindingsListCall { + 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 *ProjectsLocationsDataAttributeBindingsListCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsDataAttributeBindingsListCall) 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, "v1/{+parent}/dataAttributeBindings") + 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{ + "parent": c.parent, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dataplex.projects.locations.dataAttributeBindings.list" call. +// Exactly one of +// *GoogleCloudDataplexV1ListDataAttributeBindingsResponse or error will +// be non-nil. Any non-2xx status code is an error. Response headers are +// in either +// *GoogleCloudDataplexV1ListDataAttributeBindingsResponse.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 *ProjectsLocationsDataAttributeBindingsListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDataplexV1ListDataAttributeBindingsResponse, 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 := &GoogleCloudDataplexV1ListDataAttributeBindingsResponse{ + 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 DataAttributeBinding resources in a project and location.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataAttributeBindings", + // "httpMethod": "GET", + // "id": "dataplex.projects.locations.dataAttributeBindings.list", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "filter": { + // "description": "Optional. Filter request. Filter using resource: filter=resource:\"resource-name\" Filter using attribute: filter=attributes:\"attribute-name\" Filter using attribute in paths list: filter=paths.attributes:\"attribute-name\"", + // "location": "query", + // "type": "string" + // }, + // "orderBy": { + // "description": "Optional. Order by fields for the result.", + // "location": "query", + // "type": "string" + // }, + // "pageSize": { + // "description": "Optional. Maximum number of DataAttributeBindings to return. The service may return fewer than this value. If unspecified, at most 10 DataAttributeBindings will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000.", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "pageToken": { + // "description": "Optional. Page token received from a previous ListDataAttributeBindings call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to ListDataAttributeBindings must match the call that provided the page token.", + // "location": "query", + // "type": "string" + // }, + // "parent": { + // "description": "Required. The resource name of the Location: projects/{project_number}/locations/{location_id}", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+parent}/dataAttributeBindings", + // "response": { + // "$ref": "GoogleCloudDataplexV1ListDataAttributeBindingsResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// 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 *ProjectsLocationsDataAttributeBindingsListCall) Pages(ctx context.Context, f func(*GoogleCloudDataplexV1ListDataAttributeBindingsResponse) 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 "dataplex.projects.locations.dataAttributeBindings.patch": + +type ProjectsLocationsDataAttributeBindingsPatchCall struct { + s *Service + name string + googleclouddataplexv1dataattributebinding *GoogleCloudDataplexV1DataAttributeBinding + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Patch: Updates a DataAttributeBinding resource. +// +// - name: Output only. The relative resource name of the Data Attribute +// Binding, of the form: +// projects/{project_number}/locations/{location}/dataAttributeBindings +// /{data_attribute_binding_id}. +func (r *ProjectsLocationsDataAttributeBindingsService) Patch(name string, googleclouddataplexv1dataattributebinding *GoogleCloudDataplexV1DataAttributeBinding) *ProjectsLocationsDataAttributeBindingsPatchCall { + c := &ProjectsLocationsDataAttributeBindingsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + c.googleclouddataplexv1dataattributebinding = googleclouddataplexv1dataattributebinding + return c +} + +// UpdateMask sets the optional parameter "updateMask": Required. Mask +// of fields to update. +func (c *ProjectsLocationsDataAttributeBindingsPatchCall) UpdateMask(updateMask string) *ProjectsLocationsDataAttributeBindingsPatchCall { + c.urlParams_.Set("updateMask", updateMask) + return c +} + +// ValidateOnly sets the optional parameter "validateOnly": Only +// validate the request, but do not perform mutations. The default is +// false. +func (c *ProjectsLocationsDataAttributeBindingsPatchCall) ValidateOnly(validateOnly bool) *ProjectsLocationsDataAttributeBindingsPatchCall { + c.urlParams_.Set("validateOnly", fmt.Sprint(validateOnly)) + 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 *ProjectsLocationsDataAttributeBindingsPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsDataAttributeBindingsPatchCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + 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 *ProjectsLocationsDataAttributeBindingsPatchCall) Context(ctx context.Context) *ProjectsLocationsDataAttributeBindingsPatchCall { + 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 *ProjectsLocationsDataAttributeBindingsPatchCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsDataAttributeBindingsPatchCall) 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()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddataplexv1dataattributebinding) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("PATCH", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dataplex.projects.locations.dataAttributeBindings.patch" call. +// Exactly one of *GoogleLongrunningOperation or error will be non-nil. +// Any non-2xx status code is an error. Response headers are in either +// *GoogleLongrunningOperation.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 *ProjectsLocationsDataAttributeBindingsPatchCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, 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 := &GoogleLongrunningOperation{ + 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": "Updates a DataAttributeBinding resource.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataAttributeBindings/{dataAttributeBindingsId}", + // "httpMethod": "PATCH", + // "id": "dataplex.projects.locations.dataAttributeBindings.patch", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Output only. The relative resource name of the Data Attribute Binding, of the form: projects/{project_number}/locations/{location}/dataAttributeBindings/{data_attribute_binding_id}", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/dataAttributeBindings/[^/]+$", + // "required": true, + // "type": "string" + // }, + // "updateMask": { + // "description": "Required. Mask of fields to update.", + // "format": "google-fieldmask", + // "location": "query", + // "type": "string" + // }, + // "validateOnly": { + // "description": "Optional. Only validate the request, but do not perform mutations. The default is false.", + // "location": "query", + // "type": "boolean" + // } + // }, + // "path": "v1/{+name}", + // "request": { + // "$ref": "GoogleCloudDataplexV1DataAttributeBinding" + // }, + // "response": { + // "$ref": "GoogleLongrunningOperation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dataplex.projects.locations.dataAttributeBindings.setIamPolicy": + +type ProjectsLocationsDataAttributeBindingsSetIamPolicyCall struct { + s *Service + resource string + googleiamv1setiampolicyrequest *GoogleIamV1SetIamPolicyRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// SetIamPolicy: Sets the access control policy on the specified +// resource. Replaces any existing policy.Can return NOT_FOUND, +// INVALID_ARGUMENT, and PERMISSION_DENIED errors. +// +// - resource: REQUIRED: The resource for which the policy is being +// specified. See Resource names +// (https://cloud.google.com/apis/design/resource_names) for the +// appropriate value for this field. +func (r *ProjectsLocationsDataAttributeBindingsService) SetIamPolicy(resource string, googleiamv1setiampolicyrequest *GoogleIamV1SetIamPolicyRequest) *ProjectsLocationsDataAttributeBindingsSetIamPolicyCall { + c := &ProjectsLocationsDataAttributeBindingsSetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.resource = resource + c.googleiamv1setiampolicyrequest = googleiamv1setiampolicyrequest + 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 *ProjectsLocationsDataAttributeBindingsSetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsLocationsDataAttributeBindingsSetIamPolicyCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + 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 *ProjectsLocationsDataAttributeBindingsSetIamPolicyCall) Context(ctx context.Context) *ProjectsLocationsDataAttributeBindingsSetIamPolicyCall { + 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 *ProjectsLocationsDataAttributeBindingsSetIamPolicyCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsDataAttributeBindingsSetIamPolicyCall) 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()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleiamv1setiampolicyrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+resource}:setIamPolicy") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("POST", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "resource": c.resource, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dataplex.projects.locations.dataAttributeBindings.setIamPolicy" call. +// Exactly one of *GoogleIamV1Policy or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *GoogleIamV1Policy.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 *ProjectsLocationsDataAttributeBindingsSetIamPolicyCall) Do(opts ...googleapi.CallOption) (*GoogleIamV1Policy, 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 := &GoogleIamV1Policy{ + 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": "Sets the access control policy on the specified resource. Replaces any existing policy.Can return NOT_FOUND, INVALID_ARGUMENT, and PERMISSION_DENIED errors.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataAttributeBindings/{dataAttributeBindingsId}:setIamPolicy", + // "httpMethod": "POST", + // "id": "dataplex.projects.locations.dataAttributeBindings.setIamPolicy", + // "parameterOrder": [ + // "resource" + // ], + // "parameters": { + // "resource": { + // "description": "REQUIRED: The resource for which the policy is being specified. See Resource names (https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/dataAttributeBindings/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+resource}:setIamPolicy", + // "request": { + // "$ref": "GoogleIamV1SetIamPolicyRequest" + // }, + // "response": { + // "$ref": "GoogleIamV1Policy" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dataplex.projects.locations.dataAttributeBindings.testIamPermissions": + +type ProjectsLocationsDataAttributeBindingsTestIamPermissionsCall struct { + s *Service + resource string + googleiamv1testiampermissionsrequest *GoogleIamV1TestIamPermissionsRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// TestIamPermissions: Returns permissions that a caller has on the +// specified resource. If the resource does not exist, this will return +// an empty set of permissions, not a NOT_FOUND error.Note: This +// operation is designed to be used for building permission-aware UIs +// and command-line tools, not for authorization checking. This +// operation may "fail open" without warning. +// +// - resource: REQUIRED: The resource for which the policy detail is +// being requested. See Resource names +// (https://cloud.google.com/apis/design/resource_names) for the +// appropriate value for this field. +func (r *ProjectsLocationsDataAttributeBindingsService) TestIamPermissions(resource string, googleiamv1testiampermissionsrequest *GoogleIamV1TestIamPermissionsRequest) *ProjectsLocationsDataAttributeBindingsTestIamPermissionsCall { + c := &ProjectsLocationsDataAttributeBindingsTestIamPermissionsCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.resource = resource + c.googleiamv1testiampermissionsrequest = googleiamv1testiampermissionsrequest + 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 *ProjectsLocationsDataAttributeBindingsTestIamPermissionsCall) Fields(s ...googleapi.Field) *ProjectsLocationsDataAttributeBindingsTestIamPermissionsCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + 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 *ProjectsLocationsDataAttributeBindingsTestIamPermissionsCall) Context(ctx context.Context) *ProjectsLocationsDataAttributeBindingsTestIamPermissionsCall { + 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 *ProjectsLocationsDataAttributeBindingsTestIamPermissionsCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsDataAttributeBindingsTestIamPermissionsCall) 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()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleiamv1testiampermissionsrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+resource}:testIamPermissions") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("POST", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "resource": c.resource, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dataplex.projects.locations.dataAttributeBindings.testIamPermissions" call. +// Exactly one of *GoogleIamV1TestIamPermissionsResponse or error will +// be non-nil. Any non-2xx status code is an error. Response headers are +// in either +// *GoogleIamV1TestIamPermissionsResponse.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 *ProjectsLocationsDataAttributeBindingsTestIamPermissionsCall) Do(opts ...googleapi.CallOption) (*GoogleIamV1TestIamPermissionsResponse, 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 := &GoogleIamV1TestIamPermissionsResponse{ + 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": "Returns permissions that a caller has on the specified resource. If the resource does not exist, this will return an empty set of permissions, not a NOT_FOUND error.Note: This operation is designed to be used for building permission-aware UIs and command-line tools, not for authorization checking. This operation may \"fail open\" without warning.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataAttributeBindings/{dataAttributeBindingsId}:testIamPermissions", + // "httpMethod": "POST", + // "id": "dataplex.projects.locations.dataAttributeBindings.testIamPermissions", + // "parameterOrder": [ + // "resource" + // ], + // "parameters": { + // "resource": { + // "description": "REQUIRED: The resource for which the policy detail is being requested. See Resource names (https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/dataAttributeBindings/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+resource}:testIamPermissions", + // "request": { + // "$ref": "GoogleIamV1TestIamPermissionsRequest" + // }, + // "response": { + // "$ref": "GoogleIamV1TestIamPermissionsResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dataplex.projects.locations.dataScans.create": + +type ProjectsLocationsDataScansCreateCall struct { + s *Service + parent string + googleclouddataplexv1datascan *GoogleCloudDataplexV1DataScan + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Create: Creates a DataScan resource. +// +// - parent: The resource name of the parent location: +// projects/{project}/locations/{location_id} where project refers to +// a project_id or project_number and location_id refers to a GCP +// region. +func (r *ProjectsLocationsDataScansService) Create(parent string, googleclouddataplexv1datascan *GoogleCloudDataplexV1DataScan) *ProjectsLocationsDataScansCreateCall { + c := &ProjectsLocationsDataScansCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + c.googleclouddataplexv1datascan = googleclouddataplexv1datascan + return c +} + +// DataScanId sets the optional parameter "dataScanId": Required. +// DataScan identifier. Must contain only lowercase letters, numbers and +// hyphens. Must start with a letter. Must end with a number or a +// letter. Must be between 1-63 characters. Must be unique within the +// customer project / location. +func (c *ProjectsLocationsDataScansCreateCall) DataScanId(dataScanId string) *ProjectsLocationsDataScansCreateCall { + c.urlParams_.Set("dataScanId", dataScanId) + 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 *ProjectsLocationsDataScansCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsDataScansCreateCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + 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 *ProjectsLocationsDataScansCreateCall) Context(ctx context.Context) *ProjectsLocationsDataScansCreateCall { + 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 *ProjectsLocationsDataScansCreateCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsDataScansCreateCall) 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()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddataplexv1datascan) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/dataScans") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("POST", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "parent": c.parent, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dataplex.projects.locations.dataScans.create" call. +// Exactly one of *GoogleLongrunningOperation or error will be non-nil. +// Any non-2xx status code is an error. Response headers are in either +// *GoogleLongrunningOperation.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 *ProjectsLocationsDataScansCreateCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, 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 := &GoogleLongrunningOperation{ + 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": "Creates a DataScan resource.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataScans", + // "httpMethod": "POST", + // "id": "dataplex.projects.locations.dataScans.create", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "dataScanId": { + // "description": "Required. DataScan identifier. Must contain only lowercase letters, numbers and hyphens. Must start with a letter. Must end with a number or a letter. Must be between 1-63 characters. Must be unique within the customer project / location.", + // "location": "query", + // "type": "string" + // }, + // "parent": { + // "description": "Required. The resource name of the parent location: projects/{project}/locations/{location_id} where project refers to a project_id or project_number and location_id refers to a GCP region.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+parent}/dataScans", + // "request": { + // "$ref": "GoogleCloudDataplexV1DataScan" + // }, + // "response": { + // "$ref": "GoogleLongrunningOperation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dataplex.projects.locations.dataScans.delete": + +type ProjectsLocationsDataScansDeleteCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Delete: Deletes a DataScan resource. +// +// - name: The resource name of the dataScan: +// projects/{project}/locations/{location_id}/dataScans/{data_scan_id} +// where project refers to a project_id or project_number and +// location_id refers to a GCP region. +func (r *ProjectsLocationsDataScansService) Delete(name string) *ProjectsLocationsDataScansDeleteCall { + c := &ProjectsLocationsDataScansDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + 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 *ProjectsLocationsDataScansDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsDataScansDeleteCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + 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 *ProjectsLocationsDataScansDeleteCall) Context(ctx context.Context) *ProjectsLocationsDataScansDeleteCall { + 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 *ProjectsLocationsDataScansDeleteCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsDataScansDeleteCall) 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()) + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("DELETE", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dataplex.projects.locations.dataScans.delete" call. +// Exactly one of *GoogleLongrunningOperation or error will be non-nil. +// Any non-2xx status code is an error. Response headers are in either +// *GoogleLongrunningOperation.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 *ProjectsLocationsDataScansDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, 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 := &GoogleLongrunningOperation{ + 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": "Deletes a DataScan resource.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataScans/{dataScansId}", + // "httpMethod": "DELETE", + // "id": "dataplex.projects.locations.dataScans.delete", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Required. The resource name of the dataScan: projects/{project}/locations/{location_id}/dataScans/{data_scan_id} where project refers to a project_id or project_number and location_id refers to a GCP region.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/dataScans/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+name}", + // "response": { + // "$ref": "GoogleLongrunningOperation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dataplex.projects.locations.dataScans.get": + +type ProjectsLocationsDataScansGetCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Gets a DataScan resource. +// +// - name: The resource name of the dataScan: +// projects/{project}/locations/{location_id}/dataScans/{data_scan_id} +// where project refers to a project_id or project_number and +// location_id refers to a GCP region. +func (r *ProjectsLocationsDataScansService) Get(name string) *ProjectsLocationsDataScansGetCall { + c := &ProjectsLocationsDataScansGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// View sets the optional parameter "view": Select the DataScan view to +// return. Defaults to BASIC. +// +// Possible values: +// +// "DATA_SCAN_VIEW_UNSPECIFIED" - The API will default to the BASIC +// +// view. +// +// "BASIC" - Basic view that does not include spec and result. +// "FULL" - Include everything. +func (c *ProjectsLocationsDataScansGetCall) View(view string) *ProjectsLocationsDataScansGetCall { + c.urlParams_.Set("view", view) + 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 *ProjectsLocationsDataScansGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsDataScansGetCall { + 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 *ProjectsLocationsDataScansGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsDataScansGetCall { + 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 *ProjectsLocationsDataScansGetCall) Context(ctx context.Context) *ProjectsLocationsDataScansGetCall { + 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 *ProjectsLocationsDataScansGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsDataScansGetCall) 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, "v1/{+name}") + 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{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dataplex.projects.locations.dataScans.get" call. +// Exactly one of *GoogleCloudDataplexV1DataScan or error will be +// non-nil. Any non-2xx status code is an error. Response headers are in +// either *GoogleCloudDataplexV1DataScan.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 *ProjectsLocationsDataScansGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDataplexV1DataScan, 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 := &GoogleCloudDataplexV1DataScan{ + 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 DataScan resource.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataScans/{dataScansId}", + // "httpMethod": "GET", + // "id": "dataplex.projects.locations.dataScans.get", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Required. The resource name of the dataScan: projects/{project}/locations/{location_id}/dataScans/{data_scan_id} where project refers to a project_id or project_number and location_id refers to a GCP region.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/dataScans/[^/]+$", + // "required": true, + // "type": "string" + // }, + // "view": { + // "description": "Optional. Select the DataScan view to return. Defaults to BASIC.", + // "enum": [ + // "DATA_SCAN_VIEW_UNSPECIFIED", + // "BASIC", + // "FULL" + // ], + // "enumDescriptions": [ + // "The API will default to the BASIC view.", + // "Basic view that does not include spec and result.", + // "Include everything." + // ], + // "location": "query", + // "type": "string" + // } + // }, + // "path": "v1/{+name}", + // "response": { + // "$ref": "GoogleCloudDataplexV1DataScan" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dataplex.projects.locations.dataScans.getIamPolicy": + +type ProjectsLocationsDataScansGetIamPolicyCall struct { + s *Service + resource string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// GetIamPolicy: Gets the access control policy for a resource. Returns +// an empty policy if the resource exists and does not have a policy +// set. +// +// - resource: REQUIRED: The resource for which the policy is being +// requested. See Resource names +// (https://cloud.google.com/apis/design/resource_names) for the +// appropriate value for this field. +func (r *ProjectsLocationsDataScansService) GetIamPolicy(resource string) *ProjectsLocationsDataScansGetIamPolicyCall { + c := &ProjectsLocationsDataScansGetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.resource = resource + return c +} + +// OptionsRequestedPolicyVersion sets the optional parameter +// "options.requestedPolicyVersion": The maximum policy version that +// will be used to format the policy.Valid values are 0, 1, and 3. +// Requests specifying an invalid value will be rejected.Requests for +// policies with any conditional role bindings must specify version 3. +// Policies with no conditional role bindings may specify any valid +// value or leave the field unset.The policy in the response might use +// the policy version that you specified, or it might use a lower policy +// version. For example, if you specify version 3, but the policy has no +// conditional role bindings, the response uses version 1.To learn which +// resources support conditions in their IAM policies, see the IAM +// documentation +// (https://cloud.google.com/iam/help/conditions/resource-policies). +func (c *ProjectsLocationsDataScansGetIamPolicyCall) OptionsRequestedPolicyVersion(optionsRequestedPolicyVersion int64) *ProjectsLocationsDataScansGetIamPolicyCall { + c.urlParams_.Set("options.requestedPolicyVersion", fmt.Sprint(optionsRequestedPolicyVersion)) + 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 *ProjectsLocationsDataScansGetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsLocationsDataScansGetIamPolicyCall { + 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 *ProjectsLocationsDataScansGetIamPolicyCall) IfNoneMatch(entityTag string) *ProjectsLocationsDataScansGetIamPolicyCall { + 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 *ProjectsLocationsDataScansGetIamPolicyCall) Context(ctx context.Context) *ProjectsLocationsDataScansGetIamPolicyCall { + 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 *ProjectsLocationsDataScansGetIamPolicyCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsDataScansGetIamPolicyCall) 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, "v1/{+resource}:getIamPolicy") + 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{ + "resource": c.resource, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dataplex.projects.locations.dataScans.getIamPolicy" call. +// Exactly one of *GoogleIamV1Policy or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *GoogleIamV1Policy.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 *ProjectsLocationsDataScansGetIamPolicyCall) Do(opts ...googleapi.CallOption) (*GoogleIamV1Policy, 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 := &GoogleIamV1Policy{ + 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 the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataScans/{dataScansId}:getIamPolicy", + // "httpMethod": "GET", + // "id": "dataplex.projects.locations.dataScans.getIamPolicy", + // "parameterOrder": [ + // "resource" + // ], + // "parameters": { + // "options.requestedPolicyVersion": { + // "description": "Optional. The maximum policy version that will be used to format the policy.Valid values are 0, 1, and 3. Requests specifying an invalid value will be rejected.Requests for policies with any conditional role bindings must specify version 3. Policies with no conditional role bindings may specify any valid value or leave the field unset.The policy in the response might use the policy version that you specified, or it might use a lower policy version. For example, if you specify version 3, but the policy has no conditional role bindings, the response uses version 1.To learn which resources support conditions in their IAM policies, see the IAM documentation (https://cloud.google.com/iam/help/conditions/resource-policies).", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "resource": { + // "description": "REQUIRED: The resource for which the policy is being requested. See Resource names (https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/dataScans/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+resource}:getIamPolicy", + // "response": { + // "$ref": "GoogleIamV1Policy" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dataplex.projects.locations.dataScans.list": + +type ProjectsLocationsDataScansListCall struct { + s *Service + parent string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// List: Lists DataScans. +// +// - parent: The resource name of the parent location: +// projects/{project}/locations/{location_id} where project refers to +// a project_id or project_number and location_id refers to a GCP +// region. +func (r *ProjectsLocationsDataScansService) List(parent string) *ProjectsLocationsDataScansListCall { + c := &ProjectsLocationsDataScansListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + return c +} + +// Filter sets the optional parameter "filter": Filter request. +func (c *ProjectsLocationsDataScansListCall) Filter(filter string) *ProjectsLocationsDataScansListCall { + c.urlParams_.Set("filter", filter) + return c +} + +// OrderBy sets the optional parameter "orderBy": Order by fields (name +// or create_time) for the result. If not specified, the ordering is +// undefined. +func (c *ProjectsLocationsDataScansListCall) OrderBy(orderBy string) *ProjectsLocationsDataScansListCall { + c.urlParams_.Set("orderBy", orderBy) + return c +} + +// PageSize sets the optional parameter "pageSize": Maximum number of +// dataScans to return. The service may return fewer than this value. If +// unspecified, at most 10 scans will be returned. The maximum value is +// 1000; values above 1000 will be coerced to 1000. +func (c *ProjectsLocationsDataScansListCall) PageSize(pageSize int64) *ProjectsLocationsDataScansListCall { + c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) + return c +} + +// PageToken sets the optional parameter "pageToken": Page token +// received from a previous ListDataScans call. Provide this to retrieve +// the subsequent page. When paginating, all other parameters provided +// to ListDataScans must match the call that provided the page token. +func (c *ProjectsLocationsDataScansListCall) PageToken(pageToken string) *ProjectsLocationsDataScansListCall { + c.urlParams_.Set("pageToken", pageToken) + 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 *ProjectsLocationsDataScansListCall) Fields(s ...googleapi.Field) *ProjectsLocationsDataScansListCall { + 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 *ProjectsLocationsDataScansListCall) IfNoneMatch(entityTag string) *ProjectsLocationsDataScansListCall { + 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 *ProjectsLocationsDataScansListCall) Context(ctx context.Context) *ProjectsLocationsDataScansListCall { + 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 *ProjectsLocationsDataScansListCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsDataScansListCall) 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, "v1/{+parent}/dataScans") + 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{ + "parent": c.parent, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dataplex.projects.locations.dataScans.list" call. +// Exactly one of *GoogleCloudDataplexV1ListDataScansResponse or error +// will be non-nil. Any non-2xx status code is an error. Response +// headers are in either +// *GoogleCloudDataplexV1ListDataScansResponse.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 *ProjectsLocationsDataScansListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDataplexV1ListDataScansResponse, 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 := &GoogleCloudDataplexV1ListDataScansResponse{ + 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 DataScans.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataScans", + // "httpMethod": "GET", + // "id": "dataplex.projects.locations.dataScans.list", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "filter": { + // "description": "Optional. Filter request.", + // "location": "query", + // "type": "string" + // }, + // "orderBy": { + // "description": "Optional. Order by fields (name or create_time) for the result. If not specified, the ordering is undefined.", + // "location": "query", + // "type": "string" + // }, + // "pageSize": { + // "description": "Optional. Maximum number of dataScans to return. The service may return fewer than this value. If unspecified, at most 10 scans will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000.", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "pageToken": { + // "description": "Optional. Page token received from a previous ListDataScans call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to ListDataScans must match the call that provided the page token.", + // "location": "query", + // "type": "string" + // }, + // "parent": { + // "description": "Required. The resource name of the parent location: projects/{project}/locations/{location_id} where project refers to a project_id or project_number and location_id refers to a GCP region.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+parent}/dataScans", + // "response": { + // "$ref": "GoogleCloudDataplexV1ListDataScansResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// 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 *ProjectsLocationsDataScansListCall) Pages(ctx context.Context, f func(*GoogleCloudDataplexV1ListDataScansResponse) 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 "dataplex.projects.locations.dataScans.patch": + +type ProjectsLocationsDataScansPatchCall struct { + s *Service + name string + googleclouddataplexv1datascan *GoogleCloudDataplexV1DataScan + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Patch: Updates a DataScan resource. +// +// - name: Output only. The relative resource name of the scan, of the +// form: +// projects/{project}/locations/{location_id}/dataScans/{datascan_id}, +// where project refers to a project_id or project_number and +// location_id refers to a GCP region. +func (r *ProjectsLocationsDataScansService) Patch(name string, googleclouddataplexv1datascan *GoogleCloudDataplexV1DataScan) *ProjectsLocationsDataScansPatchCall { + c := &ProjectsLocationsDataScansPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + c.googleclouddataplexv1datascan = googleclouddataplexv1datascan + return c +} + +// UpdateMask sets the optional parameter "updateMask": Required. Mask +// of fields to update. +func (c *ProjectsLocationsDataScansPatchCall) UpdateMask(updateMask string) *ProjectsLocationsDataScansPatchCall { + c.urlParams_.Set("updateMask", updateMask) + 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 *ProjectsLocationsDataScansPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsDataScansPatchCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + 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 *ProjectsLocationsDataScansPatchCall) Context(ctx context.Context) *ProjectsLocationsDataScansPatchCall { + 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 *ProjectsLocationsDataScansPatchCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsDataScansPatchCall) 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()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddataplexv1datascan) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("PATCH", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dataplex.projects.locations.dataScans.patch" call. +// Exactly one of *GoogleLongrunningOperation or error will be non-nil. +// Any non-2xx status code is an error. Response headers are in either +// *GoogleLongrunningOperation.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 *ProjectsLocationsDataScansPatchCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, 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 := &GoogleLongrunningOperation{ + 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": "Updates a DataScan resource.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataScans/{dataScansId}", + // "httpMethod": "PATCH", + // "id": "dataplex.projects.locations.dataScans.patch", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Output only. The relative resource name of the scan, of the form: projects/{project}/locations/{location_id}/dataScans/{datascan_id}, where project refers to a project_id or project_number and location_id refers to a GCP region.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/dataScans/[^/]+$", + // "required": true, + // "type": "string" + // }, + // "updateMask": { + // "description": "Required. Mask of fields to update.", + // "format": "google-fieldmask", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "v1/{+name}", + // "request": { + // "$ref": "GoogleCloudDataplexV1DataScan" + // }, + // "response": { + // "$ref": "GoogleLongrunningOperation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dataplex.projects.locations.dataScans.run": + +type ProjectsLocationsDataScansRunCall struct { + s *Service + name string + googleclouddataplexv1rundatascanrequest *GoogleCloudDataplexV1RunDataScanRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Run: Runs an on-demand execution of a DataScan +// +// - name: The resource name of the DataScan: +// projects/{project}/locations/{location_id}/dataScans/{data_scan_id}. +// where project refers to a project_id or project_number and +// location_id refers to a GCP region.Only OnDemand data scans are +// allowed. +func (r *ProjectsLocationsDataScansService) Run(name string, googleclouddataplexv1rundatascanrequest *GoogleCloudDataplexV1RunDataScanRequest) *ProjectsLocationsDataScansRunCall { + c := &ProjectsLocationsDataScansRunCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + c.googleclouddataplexv1rundatascanrequest = googleclouddataplexv1rundatascanrequest + 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 *ProjectsLocationsDataScansRunCall) Fields(s ...googleapi.Field) *ProjectsLocationsDataScansRunCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + 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 *ProjectsLocationsDataScansRunCall) Context(ctx context.Context) *ProjectsLocationsDataScansRunCall { + 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 *ProjectsLocationsDataScansRunCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsDataScansRunCall) 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()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddataplexv1rundatascanrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}:run") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("POST", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dataplex.projects.locations.dataScans.run" call. +// Exactly one of *GoogleCloudDataplexV1RunDataScanResponse or error +// will be non-nil. Any non-2xx status code is an error. Response +// headers are in either +// *GoogleCloudDataplexV1RunDataScanResponse.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 *ProjectsLocationsDataScansRunCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDataplexV1RunDataScanResponse, 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 := &GoogleCloudDataplexV1RunDataScanResponse{ + 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": "Runs an on-demand execution of a DataScan", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataScans/{dataScansId}:run", + // "httpMethod": "POST", + // "id": "dataplex.projects.locations.dataScans.run", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Required. The resource name of the DataScan: projects/{project}/locations/{location_id}/dataScans/{data_scan_id}. where project refers to a project_id or project_number and location_id refers to a GCP region.Only OnDemand data scans are allowed.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/dataScans/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+name}:run", + // "request": { + // "$ref": "GoogleCloudDataplexV1RunDataScanRequest" + // }, + // "response": { + // "$ref": "GoogleCloudDataplexV1RunDataScanResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dataplex.projects.locations.dataScans.setIamPolicy": + +type ProjectsLocationsDataScansSetIamPolicyCall struct { + s *Service + resource string + googleiamv1setiampolicyrequest *GoogleIamV1SetIamPolicyRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// SetIamPolicy: Sets the access control policy on the specified +// resource. Replaces any existing policy.Can return NOT_FOUND, +// INVALID_ARGUMENT, and PERMISSION_DENIED errors. +// +// - resource: REQUIRED: The resource for which the policy is being +// specified. See Resource names +// (https://cloud.google.com/apis/design/resource_names) for the +// appropriate value for this field. +func (r *ProjectsLocationsDataScansService) SetIamPolicy(resource string, googleiamv1setiampolicyrequest *GoogleIamV1SetIamPolicyRequest) *ProjectsLocationsDataScansSetIamPolicyCall { + c := &ProjectsLocationsDataScansSetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.resource = resource + c.googleiamv1setiampolicyrequest = googleiamv1setiampolicyrequest + 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 *ProjectsLocationsDataScansSetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsLocationsDataScansSetIamPolicyCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + 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 *ProjectsLocationsDataScansSetIamPolicyCall) Context(ctx context.Context) *ProjectsLocationsDataScansSetIamPolicyCall { + 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 *ProjectsLocationsDataScansSetIamPolicyCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsDataScansSetIamPolicyCall) 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()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleiamv1setiampolicyrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+resource}:setIamPolicy") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("POST", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "resource": c.resource, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dataplex.projects.locations.dataScans.setIamPolicy" call. +// Exactly one of *GoogleIamV1Policy or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *GoogleIamV1Policy.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 *ProjectsLocationsDataScansSetIamPolicyCall) Do(opts ...googleapi.CallOption) (*GoogleIamV1Policy, 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 := &GoogleIamV1Policy{ + 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": "Sets the access control policy on the specified resource. Replaces any existing policy.Can return NOT_FOUND, INVALID_ARGUMENT, and PERMISSION_DENIED errors.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataScans/{dataScansId}:setIamPolicy", + // "httpMethod": "POST", + // "id": "dataplex.projects.locations.dataScans.setIamPolicy", + // "parameterOrder": [ + // "resource" + // ], + // "parameters": { + // "resource": { + // "description": "REQUIRED: The resource for which the policy is being specified. See Resource names (https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/dataScans/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+resource}:setIamPolicy", + // "request": { + // "$ref": "GoogleIamV1SetIamPolicyRequest" + // }, + // "response": { + // "$ref": "GoogleIamV1Policy" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dataplex.projects.locations.dataScans.testIamPermissions": + +type ProjectsLocationsDataScansTestIamPermissionsCall struct { + s *Service + resource string + googleiamv1testiampermissionsrequest *GoogleIamV1TestIamPermissionsRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// TestIamPermissions: Returns permissions that a caller has on the +// specified resource. If the resource does not exist, this will return +// an empty set of permissions, not a NOT_FOUND error.Note: This +// operation is designed to be used for building permission-aware UIs +// and command-line tools, not for authorization checking. This +// operation may "fail open" without warning. +// +// - resource: REQUIRED: The resource for which the policy detail is +// being requested. See Resource names +// (https://cloud.google.com/apis/design/resource_names) for the +// appropriate value for this field. +func (r *ProjectsLocationsDataScansService) TestIamPermissions(resource string, googleiamv1testiampermissionsrequest *GoogleIamV1TestIamPermissionsRequest) *ProjectsLocationsDataScansTestIamPermissionsCall { + c := &ProjectsLocationsDataScansTestIamPermissionsCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.resource = resource + c.googleiamv1testiampermissionsrequest = googleiamv1testiampermissionsrequest + 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 *ProjectsLocationsDataScansTestIamPermissionsCall) Fields(s ...googleapi.Field) *ProjectsLocationsDataScansTestIamPermissionsCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + 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 *ProjectsLocationsDataScansTestIamPermissionsCall) Context(ctx context.Context) *ProjectsLocationsDataScansTestIamPermissionsCall { + 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 *ProjectsLocationsDataScansTestIamPermissionsCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsDataScansTestIamPermissionsCall) 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()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleiamv1testiampermissionsrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+resource}:testIamPermissions") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("POST", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "resource": c.resource, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dataplex.projects.locations.dataScans.testIamPermissions" call. +// Exactly one of *GoogleIamV1TestIamPermissionsResponse or error will +// be non-nil. Any non-2xx status code is an error. Response headers are +// in either +// *GoogleIamV1TestIamPermissionsResponse.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 *ProjectsLocationsDataScansTestIamPermissionsCall) Do(opts ...googleapi.CallOption) (*GoogleIamV1TestIamPermissionsResponse, 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 := &GoogleIamV1TestIamPermissionsResponse{ + 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": "Returns permissions that a caller has on the specified resource. If the resource does not exist, this will return an empty set of permissions, not a NOT_FOUND error.Note: This operation is designed to be used for building permission-aware UIs and command-line tools, not for authorization checking. This operation may \"fail open\" without warning.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataScans/{dataScansId}:testIamPermissions", + // "httpMethod": "POST", + // "id": "dataplex.projects.locations.dataScans.testIamPermissions", + // "parameterOrder": [ + // "resource" + // ], + // "parameters": { + // "resource": { + // "description": "REQUIRED: The resource for which the policy detail is being requested. See Resource names (https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/dataScans/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+resource}:testIamPermissions", + // "request": { + // "$ref": "GoogleIamV1TestIamPermissionsRequest" + // }, + // "response": { + // "$ref": "GoogleIamV1TestIamPermissionsResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dataplex.projects.locations.dataScans.jobs.get": + +type ProjectsLocationsDataScansJobsGetCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Gets a DataScanJob resource. +// +// - name: The resource name of the DataScanJob: +// projects/{project}/locations/{location_id}/dataScans/{data_scan_id}/ +// dataScanJobs/{data_scan_job_id} where project refers to a +// project_id or project_number and location_id refers to a GCP +// region. +func (r *ProjectsLocationsDataScansJobsService) Get(name string) *ProjectsLocationsDataScansJobsGetCall { + c := &ProjectsLocationsDataScansJobsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// View sets the optional parameter "view": Select the DataScanJob view +// to return. Defaults to BASIC. +// +// Possible values: +// +// "DATA_SCAN_JOB_VIEW_UNSPECIFIED" - The API will default to the +// +// BASIC view. +// +// "BASIC" - Basic view that does not include spec and result. +// "FULL" - Include everything. +func (c *ProjectsLocationsDataScansJobsGetCall) View(view string) *ProjectsLocationsDataScansJobsGetCall { + c.urlParams_.Set("view", view) + 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 *ProjectsLocationsDataScansJobsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsDataScansJobsGetCall { + 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 *ProjectsLocationsDataScansJobsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsDataScansJobsGetCall { + 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 *ProjectsLocationsDataScansJobsGetCall) Context(ctx context.Context) *ProjectsLocationsDataScansJobsGetCall { + 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 *ProjectsLocationsDataScansJobsGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsDataScansJobsGetCall) 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, "v1/{+name}") + 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{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dataplex.projects.locations.dataScans.jobs.get" call. +// Exactly one of *GoogleCloudDataplexV1DataScanJob or error will be +// non-nil. Any non-2xx status code is an error. Response headers are in +// either *GoogleCloudDataplexV1DataScanJob.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 *ProjectsLocationsDataScansJobsGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDataplexV1DataScanJob, 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 := &GoogleCloudDataplexV1DataScanJob{ + 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 DataScanJob resource.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataScans/{dataScansId}/jobs/{jobsId}", + // "httpMethod": "GET", + // "id": "dataplex.projects.locations.dataScans.jobs.get", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Required. The resource name of the DataScanJob: projects/{project}/locations/{location_id}/dataScans/{data_scan_id}/dataScanJobs/{data_scan_job_id} where project refers to a project_id or project_number and location_id refers to a GCP region.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/dataScans/[^/]+/jobs/[^/]+$", + // "required": true, + // "type": "string" + // }, + // "view": { + // "description": "Optional. Select the DataScanJob view to return. Defaults to BASIC.", + // "enum": [ + // "DATA_SCAN_JOB_VIEW_UNSPECIFIED", + // "BASIC", + // "FULL" + // ], + // "enumDescriptions": [ + // "The API will default to the BASIC view.", + // "Basic view that does not include spec and result.", + // "Include everything." + // ], + // "location": "query", + // "type": "string" + // } + // }, + // "path": "v1/{+name}", + // "response": { + // "$ref": "GoogleCloudDataplexV1DataScanJob" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dataplex.projects.locations.dataScans.jobs.list": + +type ProjectsLocationsDataScansJobsListCall struct { + s *Service + parent string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// List: Lists DataScanJobs under the given DataScan. +// +// - parent: The resource name of the parent environment: +// projects/{project}/locations/{location_id}/dataScans/{data_scan_id} +// where project refers to a project_id or project_number and +// location_id refers to a GCP region. +func (r *ProjectsLocationsDataScansJobsService) List(parent string) *ProjectsLocationsDataScansJobsListCall { + c := &ProjectsLocationsDataScansJobsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + return c +} + +// PageSize sets the optional parameter "pageSize": Maximum number of +// DataScanJobs to return. The service may return fewer than this value. +// If unspecified, at most 10 DataScanJobs will be returned. The maximum +// value is 1000; values above 1000 will be coerced to 1000. +func (c *ProjectsLocationsDataScansJobsListCall) PageSize(pageSize int64) *ProjectsLocationsDataScansJobsListCall { + c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) + return c +} + +// PageToken sets the optional parameter "pageToken": Page token +// received from a previous ListDataScanJobs call. Provide this to +// retrieve the subsequent page. When paginating, all other parameters +// provided to ListDataScanJobs must match the call that provided the +// page token. +func (c *ProjectsLocationsDataScansJobsListCall) PageToken(pageToken string) *ProjectsLocationsDataScansJobsListCall { + c.urlParams_.Set("pageToken", pageToken) + 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 *ProjectsLocationsDataScansJobsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsDataScansJobsListCall { + 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 *ProjectsLocationsDataScansJobsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsDataScansJobsListCall { + 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 *ProjectsLocationsDataScansJobsListCall) Context(ctx context.Context) *ProjectsLocationsDataScansJobsListCall { + 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 *ProjectsLocationsDataScansJobsListCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsDataScansJobsListCall) 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, "v1/{+parent}/jobs") + 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{ + "parent": c.parent, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dataplex.projects.locations.dataScans.jobs.list" call. +// Exactly one of *GoogleCloudDataplexV1ListDataScanJobsResponse or +// error will be non-nil. Any non-2xx status code is an error. Response +// headers are in either +// *GoogleCloudDataplexV1ListDataScanJobsResponse.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 *ProjectsLocationsDataScansJobsListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDataplexV1ListDataScanJobsResponse, 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 := &GoogleCloudDataplexV1ListDataScanJobsResponse{ + 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 DataScanJobs under the given DataScan.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataScans/{dataScansId}/jobs", + // "httpMethod": "GET", + // "id": "dataplex.projects.locations.dataScans.jobs.list", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "pageSize": { + // "description": "Optional. Maximum number of DataScanJobs to return. The service may return fewer than this value. If unspecified, at most 10 DataScanJobs will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000.", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "pageToken": { + // "description": "Optional. Page token received from a previous ListDataScanJobs call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to ListDataScanJobs must match the call that provided the page token.", + // "location": "query", + // "type": "string" + // }, + // "parent": { + // "description": "Required. The resource name of the parent environment: projects/{project}/locations/{location_id}/dataScans/{data_scan_id} where project refers to a project_id or project_number and location_id refers to a GCP region.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/dataScans/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+parent}/jobs", + // "response": { + // "$ref": "GoogleCloudDataplexV1ListDataScanJobsResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// 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 *ProjectsLocationsDataScansJobsListCall) Pages(ctx context.Context, f func(*GoogleCloudDataplexV1ListDataScanJobsResponse) 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 "dataplex.projects.locations.dataTaxonomies.create": + +type ProjectsLocationsDataTaxonomiesCreateCall struct { + s *Service + parent string + googleclouddataplexv1datataxonomy *GoogleCloudDataplexV1DataTaxonomy + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Create: Create a DataTaxonomy resource. +// +// - parent: The resource name of the data taxonomy location, of the +// form: projects/{project_number}/locations/{location_id} where +// location_id refers to a GCP region. +func (r *ProjectsLocationsDataTaxonomiesService) Create(parent string, googleclouddataplexv1datataxonomy *GoogleCloudDataplexV1DataTaxonomy) *ProjectsLocationsDataTaxonomiesCreateCall { + c := &ProjectsLocationsDataTaxonomiesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + c.googleclouddataplexv1datataxonomy = googleclouddataplexv1datataxonomy + return c +} + +// DataTaxonomyId sets the optional parameter "dataTaxonomyId": +// Required. DataTaxonomy identifier. * Must contain only lowercase +// letters, numbers and hyphens. * Must start with a letter. * Must be +// between 1-63 characters. * Must end with a number or a letter. * Must +// be unique within the Project. +func (c *ProjectsLocationsDataTaxonomiesCreateCall) DataTaxonomyId(dataTaxonomyId string) *ProjectsLocationsDataTaxonomiesCreateCall { + c.urlParams_.Set("dataTaxonomyId", dataTaxonomyId) + return c +} + +// ValidateOnly sets the optional parameter "validateOnly": Only +// validate the request, but do not perform mutations. The default is +// false. +func (c *ProjectsLocationsDataTaxonomiesCreateCall) ValidateOnly(validateOnly bool) *ProjectsLocationsDataTaxonomiesCreateCall { + c.urlParams_.Set("validateOnly", fmt.Sprint(validateOnly)) + 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 *ProjectsLocationsDataTaxonomiesCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsDataTaxonomiesCreateCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + 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 *ProjectsLocationsDataTaxonomiesCreateCall) Context(ctx context.Context) *ProjectsLocationsDataTaxonomiesCreateCall { + 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 *ProjectsLocationsDataTaxonomiesCreateCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsDataTaxonomiesCreateCall) 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()) + var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddataplexv1datataxonomy) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/dataTaxonomies") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("POST", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "parent": c.parent, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dataplex.projects.locations.dataTaxonomies.create" call. +// Exactly one of *GoogleLongrunningOperation or error will be non-nil. +// Any non-2xx status code is an error. Response headers are in either +// *GoogleLongrunningOperation.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 *ProjectsLocationsDataTaxonomiesCreateCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, 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 := &GoogleLongrunningOperation{ + 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": "Create a DataTaxonomy resource.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataTaxonomies", + // "httpMethod": "POST", + // "id": "dataplex.projects.locations.dataTaxonomies.create", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "dataTaxonomyId": { + // "description": "Required. DataTaxonomy identifier. * Must contain only lowercase letters, numbers and hyphens. * Must start with a letter. * Must be between 1-63 characters. * Must end with a number or a letter. * Must be unique within the Project.", + // "location": "query", + // "type": "string" + // }, + // "parent": { + // "description": "Required. The resource name of the data taxonomy location, of the form: projects/{project_number}/locations/{location_id} where location_id refers to a GCP region.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+$", + // "required": true, + // "type": "string" + // }, + // "validateOnly": { + // "description": "Optional. Only validate the request, but do not perform mutations. The default is false.", + // "location": "query", + // "type": "boolean" + // } + // }, + // "path": "v1/{+parent}/dataTaxonomies", + // "request": { + // "$ref": "GoogleCloudDataplexV1DataTaxonomy" + // }, + // "response": { + // "$ref": "GoogleLongrunningOperation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dataplex.projects.locations.dataTaxonomies.delete": + +type ProjectsLocationsDataTaxonomiesDeleteCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Delete: Deletes a DataTaxonomy resource. All attributes within the +// DataTaxonomy must be deleted before the DataTaxonomy can be deleted. +// +// - name: The resource name of the DataTaxonomy: +// projects/{project_number}/locations/{location_id}/dataTaxonomies/{da +// ta_taxonomy_id}. +func (r *ProjectsLocationsDataTaxonomiesService) Delete(name string) *ProjectsLocationsDataTaxonomiesDeleteCall { + c := &ProjectsLocationsDataTaxonomiesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// Etag sets the optional parameter "etag": If the client provided etag +// value does not match the current etag value,the DeleteDataTaxonomy +// method returns an ABORTED error. +func (c *ProjectsLocationsDataTaxonomiesDeleteCall) Etag(etag string) *ProjectsLocationsDataTaxonomiesDeleteCall { + c.urlParams_.Set("etag", etag) + 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 *ProjectsLocationsDataTaxonomiesDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsDataTaxonomiesDeleteCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + 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 *ProjectsLocationsDataTaxonomiesDeleteCall) Context(ctx context.Context) *ProjectsLocationsDataTaxonomiesDeleteCall { + 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 *ProjectsLocationsDataTaxonomiesDeleteCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsDataTaxonomiesDeleteCall) 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 } @@ -7557,14 +10787,14 @@ func (c *ProjectsLocationsDataScansDeleteCall) doRequest(alt string) (*http.Resp return gensupport.SendRequest(c.ctx_, c.s.client, req) } -// Do executes the "dataplex.projects.locations.dataScans.delete" call. +// Do executes the "dataplex.projects.locations.dataTaxonomies.delete" call. // Exactly one of *GoogleLongrunningOperation or error will be non-nil. // Any non-2xx status code is an error. Response headers are in either // *GoogleLongrunningOperation.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 *ProjectsLocationsDataScansDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) { +func (c *ProjectsLocationsDataTaxonomiesDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { @@ -7595,18 +10825,23 @@ func (c *ProjectsLocationsDataScansDeleteCall) Do(opts ...googleapi.CallOption) } return ret, nil // { - // "description": "Deletes a DataScan resource.", - // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataScans/{dataScansId}", + // "description": "Deletes a DataTaxonomy resource. All attributes within the DataTaxonomy must be deleted before the DataTaxonomy can be deleted.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataTaxonomies/{dataTaxonomiesId}", // "httpMethod": "DELETE", - // "id": "dataplex.projects.locations.dataScans.delete", + // "id": "dataplex.projects.locations.dataTaxonomies.delete", // "parameterOrder": [ // "name" // ], // "parameters": { + // "etag": { + // "description": "Optional. If the client provided etag value does not match the current etag value,the DeleteDataTaxonomy method returns an ABORTED error.", + // "location": "query", + // "type": "string" + // }, // "name": { - // "description": "Required. The resource name of the dataScan: projects/{project}/locations/{location_id}/dataScans/{data_scan_id} where project refers to a project_id or project_number and location_id refers to a GCP region.", + // "description": "Required. The resource name of the DataTaxonomy: projects/{project_number}/locations/{location_id}/dataTaxonomies/{data_taxonomy_id}", // "location": "path", - // "pattern": "^projects/[^/]+/locations/[^/]+/dataScans/[^/]+$", + // "pattern": "^projects/[^/]+/locations/[^/]+/dataTaxonomies/[^/]+$", // "required": true, // "type": "string" // } @@ -7622,9 +10857,9 @@ func (c *ProjectsLocationsDataScansDeleteCall) Do(opts ...googleapi.CallOption) } -// method id "dataplex.projects.locations.dataScans.get": +// method id "dataplex.projects.locations.dataTaxonomies.get": -type ProjectsLocationsDataScansGetCall struct { +type ProjectsLocationsDataTaxonomiesGetCall struct { s *Service name string urlParams_ gensupport.URLParams @@ -7633,38 +10868,21 @@ type ProjectsLocationsDataScansGetCall struct { header_ http.Header } -// Get: Gets a DataScan resource. +// Get: Retrieves a DataTaxonomy resource. // -// - name: The resource name of the dataScan: -// projects/{project}/locations/{location_id}/dataScans/{data_scan_id} -// where project refers to a project_id or project_number and -// location_id refers to a GCP region. -func (r *ProjectsLocationsDataScansService) Get(name string) *ProjectsLocationsDataScansGetCall { - c := &ProjectsLocationsDataScansGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} +// - name: The resource name of the DataTaxonomy: +// projects/{project_number}/locations/{location_id}/dataTaxonomies/{da +// ta_taxonomy_id}. +func (r *ProjectsLocationsDataTaxonomiesService) Get(name string) *ProjectsLocationsDataTaxonomiesGetCall { + c := &ProjectsLocationsDataTaxonomiesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.name = name return c } -// View sets the optional parameter "view": Select the DataScan view to -// return. Defaults to BASIC. -// -// Possible values: -// -// "DATA_SCAN_VIEW_UNSPECIFIED" - The API will default to the BASIC -// -// view. -// -// "BASIC" - Basic view that does not include spec and result. -// "FULL" - Include everything. -func (c *ProjectsLocationsDataScansGetCall) View(view string) *ProjectsLocationsDataScansGetCall { - c.urlParams_.Set("view", view) - 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 *ProjectsLocationsDataScansGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsDataScansGetCall { +func (c *ProjectsLocationsDataTaxonomiesGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsDataTaxonomiesGetCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } @@ -7674,7 +10892,7 @@ func (c *ProjectsLocationsDataScansGetCall) Fields(s ...googleapi.Field) *Projec // 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 *ProjectsLocationsDataScansGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsDataScansGetCall { +func (c *ProjectsLocationsDataTaxonomiesGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsDataTaxonomiesGetCall { c.ifNoneMatch_ = entityTag return c } @@ -7682,21 +10900,21 @@ func (c *ProjectsLocationsDataScansGetCall) IfNoneMatch(entityTag string) *Proje // 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 *ProjectsLocationsDataScansGetCall) Context(ctx context.Context) *ProjectsLocationsDataScansGetCall { +func (c *ProjectsLocationsDataTaxonomiesGetCall) Context(ctx context.Context) *ProjectsLocationsDataTaxonomiesGetCall { 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 *ProjectsLocationsDataScansGetCall) Header() http.Header { +func (c *ProjectsLocationsDataTaxonomiesGetCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } -func (c *ProjectsLocationsDataScansGetCall) doRequest(alt string) (*http.Response, error) { +func (c *ProjectsLocationsDataTaxonomiesGetCall) 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_ { @@ -7722,14 +10940,15 @@ func (c *ProjectsLocationsDataScansGetCall) doRequest(alt string) (*http.Respons return gensupport.SendRequest(c.ctx_, c.s.client, req) } -// Do executes the "dataplex.projects.locations.dataScans.get" call. -// Exactly one of *GoogleCloudDataplexV1DataScan or error will be +// Do executes the "dataplex.projects.locations.dataTaxonomies.get" call. +// Exactly one of *GoogleCloudDataplexV1DataTaxonomy or error will be // non-nil. Any non-2xx status code is an error. Response headers are in -// either *GoogleCloudDataplexV1DataScan.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 *ProjectsLocationsDataScansGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDataplexV1DataScan, error) { +// either *GoogleCloudDataplexV1DataTaxonomy.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 *ProjectsLocationsDataTaxonomiesGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDataplexV1DataTaxonomy, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { @@ -7748,7 +10967,7 @@ func (c *ProjectsLocationsDataScansGetCall) Do(opts ...googleapi.CallOption) (*G if err := googleapi.CheckResponse(res); err != nil { return nil, gensupport.WrapError(err) } - ret := &GoogleCloudDataplexV1DataScan{ + ret := &GoogleCloudDataplexV1DataTaxonomy{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, @@ -7760,40 +10979,25 @@ func (c *ProjectsLocationsDataScansGetCall) Do(opts ...googleapi.CallOption) (*G } return ret, nil // { - // "description": "Gets a DataScan resource.", - // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataScans/{dataScansId}", + // "description": "Retrieves a DataTaxonomy resource.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataTaxonomies/{dataTaxonomiesId}", // "httpMethod": "GET", - // "id": "dataplex.projects.locations.dataScans.get", + // "id": "dataplex.projects.locations.dataTaxonomies.get", // "parameterOrder": [ // "name" // ], // "parameters": { // "name": { - // "description": "Required. The resource name of the dataScan: projects/{project}/locations/{location_id}/dataScans/{data_scan_id} where project refers to a project_id or project_number and location_id refers to a GCP region.", + // "description": "Required. The resource name of the DataTaxonomy: projects/{project_number}/locations/{location_id}/dataTaxonomies/{data_taxonomy_id}", // "location": "path", - // "pattern": "^projects/[^/]+/locations/[^/]+/dataScans/[^/]+$", + // "pattern": "^projects/[^/]+/locations/[^/]+/dataTaxonomies/[^/]+$", // "required": true, // "type": "string" - // }, - // "view": { - // "description": "Optional. Select the DataScan view to return. Defaults to BASIC.", - // "enum": [ - // "DATA_SCAN_VIEW_UNSPECIFIED", - // "BASIC", - // "FULL" - // ], - // "enumDescriptions": [ - // "The API will default to the BASIC view.", - // "Basic view that does not include spec and result.", - // "Include everything." - // ], - // "location": "query", - // "type": "string" // } // }, // "path": "v1/{+name}", // "response": { - // "$ref": "GoogleCloudDataplexV1DataScan" + // "$ref": "GoogleCloudDataplexV1DataTaxonomy" // }, // "scopes": [ // "https://www.googleapis.com/auth/cloud-platform" @@ -7802,9 +11006,9 @@ func (c *ProjectsLocationsDataScansGetCall) Do(opts ...googleapi.CallOption) (*G } -// method id "dataplex.projects.locations.dataScans.getIamPolicy": +// method id "dataplex.projects.locations.dataTaxonomies.getIamPolicy": -type ProjectsLocationsDataScansGetIamPolicyCall struct { +type ProjectsLocationsDataTaxonomiesGetIamPolicyCall struct { s *Service resource string urlParams_ gensupport.URLParams @@ -7821,8 +11025,8 @@ type ProjectsLocationsDataScansGetIamPolicyCall struct { // requested. See Resource names // (https://cloud.google.com/apis/design/resource_names) for the // appropriate value for this field. -func (r *ProjectsLocationsDataScansService) GetIamPolicy(resource string) *ProjectsLocationsDataScansGetIamPolicyCall { - c := &ProjectsLocationsDataScansGetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)} +func (r *ProjectsLocationsDataTaxonomiesService) GetIamPolicy(resource string) *ProjectsLocationsDataTaxonomiesGetIamPolicyCall { + c := &ProjectsLocationsDataTaxonomiesGetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.resource = resource return c } @@ -7840,7 +11044,7 @@ func (r *ProjectsLocationsDataScansService) GetIamPolicy(resource string) *Proje // resources support conditions in their IAM policies, see the IAM // documentation // (https://cloud.google.com/iam/help/conditions/resource-policies). -func (c *ProjectsLocationsDataScansGetIamPolicyCall) OptionsRequestedPolicyVersion(optionsRequestedPolicyVersion int64) *ProjectsLocationsDataScansGetIamPolicyCall { +func (c *ProjectsLocationsDataTaxonomiesGetIamPolicyCall) OptionsRequestedPolicyVersion(optionsRequestedPolicyVersion int64) *ProjectsLocationsDataTaxonomiesGetIamPolicyCall { c.urlParams_.Set("options.requestedPolicyVersion", fmt.Sprint(optionsRequestedPolicyVersion)) return c } @@ -7848,7 +11052,7 @@ func (c *ProjectsLocationsDataScansGetIamPolicyCall) OptionsRequestedPolicyVersi // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse // for more information. -func (c *ProjectsLocationsDataScansGetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsLocationsDataScansGetIamPolicyCall { +func (c *ProjectsLocationsDataTaxonomiesGetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsLocationsDataTaxonomiesGetIamPolicyCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } @@ -7858,7 +11062,7 @@ func (c *ProjectsLocationsDataScansGetIamPolicyCall) Fields(s ...googleapi.Field // 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 *ProjectsLocationsDataScansGetIamPolicyCall) IfNoneMatch(entityTag string) *ProjectsLocationsDataScansGetIamPolicyCall { +func (c *ProjectsLocationsDataTaxonomiesGetIamPolicyCall) IfNoneMatch(entityTag string) *ProjectsLocationsDataTaxonomiesGetIamPolicyCall { c.ifNoneMatch_ = entityTag return c } @@ -7866,21 +11070,21 @@ func (c *ProjectsLocationsDataScansGetIamPolicyCall) IfNoneMatch(entityTag strin // 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 *ProjectsLocationsDataScansGetIamPolicyCall) Context(ctx context.Context) *ProjectsLocationsDataScansGetIamPolicyCall { +func (c *ProjectsLocationsDataTaxonomiesGetIamPolicyCall) Context(ctx context.Context) *ProjectsLocationsDataTaxonomiesGetIamPolicyCall { 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 *ProjectsLocationsDataScansGetIamPolicyCall) Header() http.Header { +func (c *ProjectsLocationsDataTaxonomiesGetIamPolicyCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } -func (c *ProjectsLocationsDataScansGetIamPolicyCall) doRequest(alt string) (*http.Response, error) { +func (c *ProjectsLocationsDataTaxonomiesGetIamPolicyCall) 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_ { @@ -7906,14 +11110,14 @@ func (c *ProjectsLocationsDataScansGetIamPolicyCall) doRequest(alt string) (*htt return gensupport.SendRequest(c.ctx_, c.s.client, req) } -// Do executes the "dataplex.projects.locations.dataScans.getIamPolicy" call. +// Do executes the "dataplex.projects.locations.dataTaxonomies.getIamPolicy" call. // Exactly one of *GoogleIamV1Policy or error will be non-nil. Any // non-2xx status code is an error. Response headers are in either // *GoogleIamV1Policy.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 *ProjectsLocationsDataScansGetIamPolicyCall) Do(opts ...googleapi.CallOption) (*GoogleIamV1Policy, error) { +func (c *ProjectsLocationsDataTaxonomiesGetIamPolicyCall) Do(opts ...googleapi.CallOption) (*GoogleIamV1Policy, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { @@ -7945,9 +11149,9 @@ func (c *ProjectsLocationsDataScansGetIamPolicyCall) Do(opts ...googleapi.CallOp return ret, nil // { // "description": "Gets the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set.", - // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataScans/{dataScansId}:getIamPolicy", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataTaxonomies/{dataTaxonomiesId}:getIamPolicy", // "httpMethod": "GET", - // "id": "dataplex.projects.locations.dataScans.getIamPolicy", + // "id": "dataplex.projects.locations.dataTaxonomies.getIamPolicy", // "parameterOrder": [ // "resource" // ], @@ -7961,7 +11165,7 @@ func (c *ProjectsLocationsDataScansGetIamPolicyCall) Do(opts ...googleapi.CallOp // "resource": { // "description": "REQUIRED: The resource for which the policy is being requested. See Resource names (https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.", // "location": "path", - // "pattern": "^projects/[^/]+/locations/[^/]+/dataScans/[^/]+$", + // "pattern": "^projects/[^/]+/locations/[^/]+/dataTaxonomies/[^/]+$", // "required": true, // "type": "string" // } @@ -7977,9 +11181,9 @@ func (c *ProjectsLocationsDataScansGetIamPolicyCall) Do(opts ...googleapi.CallOp } -// method id "dataplex.projects.locations.dataScans.list": +// method id "dataplex.projects.locations.dataTaxonomies.list": -type ProjectsLocationsDataScansListCall struct { +type ProjectsLocationsDataTaxonomiesListCall struct { s *Service parent string urlParams_ gensupport.URLParams @@ -7988,46 +11192,45 @@ type ProjectsLocationsDataScansListCall struct { header_ http.Header } -// List: Lists DataScans. +// List: Lists DataTaxonomy resources in a project and location. // -// - parent: The resource name of the parent location: -// projects/{project}/locations/{location_id} where project refers to -// a project_id or project_number and location_id refers to a GCP -// region. -func (r *ProjectsLocationsDataScansService) List(parent string) *ProjectsLocationsDataScansListCall { - c := &ProjectsLocationsDataScansListCall{s: r.s, urlParams_: make(gensupport.URLParams)} +// - parent: The resource name of the DataTaxonomy location, of the +// form: projects/{project_number}/locations/{location_id} where +// location_id refers to a GCP region. +func (r *ProjectsLocationsDataTaxonomiesService) List(parent string) *ProjectsLocationsDataTaxonomiesListCall { + c := &ProjectsLocationsDataTaxonomiesListCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.parent = parent return c } // Filter sets the optional parameter "filter": Filter request. -func (c *ProjectsLocationsDataScansListCall) Filter(filter string) *ProjectsLocationsDataScansListCall { +func (c *ProjectsLocationsDataTaxonomiesListCall) Filter(filter string) *ProjectsLocationsDataTaxonomiesListCall { c.urlParams_.Set("filter", filter) return c } -// OrderBy sets the optional parameter "orderBy": Order by fields (name -// or create_time) for the result. If not specified, the ordering is -// undefined. -func (c *ProjectsLocationsDataScansListCall) OrderBy(orderBy string) *ProjectsLocationsDataScansListCall { +// OrderBy sets the optional parameter "orderBy": Order by fields for +// the result. +func (c *ProjectsLocationsDataTaxonomiesListCall) OrderBy(orderBy string) *ProjectsLocationsDataTaxonomiesListCall { c.urlParams_.Set("orderBy", orderBy) return c } // PageSize sets the optional parameter "pageSize": Maximum number of -// dataScans to return. The service may return fewer than this value. If -// unspecified, at most 10 scans will be returned. The maximum value is -// 1000; values above 1000 will be coerced to 1000. -func (c *ProjectsLocationsDataScansListCall) PageSize(pageSize int64) *ProjectsLocationsDataScansListCall { +// DataTaxonomies to return. The service may return fewer than this +// value. If unspecified, at most 10 DataTaxonomies will be returned. +// The maximum value is 1000; values above 1000 will be coerced to 1000. +func (c *ProjectsLocationsDataTaxonomiesListCall) PageSize(pageSize int64) *ProjectsLocationsDataTaxonomiesListCall { c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) return c } // PageToken sets the optional parameter "pageToken": Page token -// received from a previous ListDataScans call. Provide this to retrieve -// the subsequent page. When paginating, all other parameters provided -// to ListDataScans must match the call that provided the page token. -func (c *ProjectsLocationsDataScansListCall) PageToken(pageToken string) *ProjectsLocationsDataScansListCall { +// received from a previous ListDataTaxonomies call. Provide this to +// retrieve the subsequent page. When paginating, all other parameters +// provided to ListDataTaxonomies must match the call that provided the +// page token. +func (c *ProjectsLocationsDataTaxonomiesListCall) PageToken(pageToken string) *ProjectsLocationsDataTaxonomiesListCall { c.urlParams_.Set("pageToken", pageToken) return c } @@ -8035,7 +11238,7 @@ func (c *ProjectsLocationsDataScansListCall) PageToken(pageToken string) *Projec // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse // for more information. -func (c *ProjectsLocationsDataScansListCall) Fields(s ...googleapi.Field) *ProjectsLocationsDataScansListCall { +func (c *ProjectsLocationsDataTaxonomiesListCall) Fields(s ...googleapi.Field) *ProjectsLocationsDataTaxonomiesListCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } @@ -8045,7 +11248,7 @@ func (c *ProjectsLocationsDataScansListCall) Fields(s ...googleapi.Field) *Proje // 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 *ProjectsLocationsDataScansListCall) IfNoneMatch(entityTag string) *ProjectsLocationsDataScansListCall { +func (c *ProjectsLocationsDataTaxonomiesListCall) IfNoneMatch(entityTag string) *ProjectsLocationsDataTaxonomiesListCall { c.ifNoneMatch_ = entityTag return c } @@ -8053,21 +11256,21 @@ func (c *ProjectsLocationsDataScansListCall) IfNoneMatch(entityTag string) *Proj // 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 *ProjectsLocationsDataScansListCall) Context(ctx context.Context) *ProjectsLocationsDataScansListCall { +func (c *ProjectsLocationsDataTaxonomiesListCall) Context(ctx context.Context) *ProjectsLocationsDataTaxonomiesListCall { 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 *ProjectsLocationsDataScansListCall) Header() http.Header { +func (c *ProjectsLocationsDataTaxonomiesListCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } -func (c *ProjectsLocationsDataScansListCall) doRequest(alt string) (*http.Response, error) { +func (c *ProjectsLocationsDataTaxonomiesListCall) 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_ { @@ -8080,7 +11283,7 @@ func (c *ProjectsLocationsDataScansListCall) doRequest(alt string) (*http.Respon var body io.Reader = nil c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") - urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/dataScans") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/dataTaxonomies") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("GET", urls, body) if err != nil { @@ -8093,16 +11296,18 @@ func (c *ProjectsLocationsDataScansListCall) doRequest(alt string) (*http.Respon return gensupport.SendRequest(c.ctx_, c.s.client, req) } -// Do executes the "dataplex.projects.locations.dataScans.list" call. -// Exactly one of *GoogleCloudDataplexV1ListDataScansResponse or error -// will be non-nil. Any non-2xx status code is an error. Response +// Do executes the "dataplex.projects.locations.dataTaxonomies.list" call. +// Exactly one of *GoogleCloudDataplexV1ListDataTaxonomiesResponse or +// error will be non-nil. Any non-2xx status code is an error. Response // headers are in either -// *GoogleCloudDataplexV1ListDataScansResponse.ServerResponse.Header or -// (if a response was returned at all) in +// *GoogleCloudDataplexV1ListDataTaxonomiesResponse.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 *ProjectsLocationsDataScansListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDataplexV1ListDataScansResponse, error) { +func (c *ProjectsLocationsDataTaxonomiesListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDataplexV1ListDataTaxonomiesResponse, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { @@ -8121,7 +11326,7 @@ func (c *ProjectsLocationsDataScansListCall) Do(opts ...googleapi.CallOption) (* if err := googleapi.CheckResponse(res); err != nil { return nil, gensupport.WrapError(err) } - ret := &GoogleCloudDataplexV1ListDataScansResponse{ + ret := &GoogleCloudDataplexV1ListDataTaxonomiesResponse{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, @@ -8133,10 +11338,10 @@ func (c *ProjectsLocationsDataScansListCall) Do(opts ...googleapi.CallOption) (* } return ret, nil // { - // "description": "Lists DataScans.", - // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataScans", + // "description": "Lists DataTaxonomy resources in a project and location.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataTaxonomies", // "httpMethod": "GET", - // "id": "dataplex.projects.locations.dataScans.list", + // "id": "dataplex.projects.locations.dataTaxonomies.list", // "parameterOrder": [ // "parent" // ], @@ -8147,32 +11352,32 @@ func (c *ProjectsLocationsDataScansListCall) Do(opts ...googleapi.CallOption) (* // "type": "string" // }, // "orderBy": { - // "description": "Optional. Order by fields (name or create_time) for the result. If not specified, the ordering is undefined.", + // "description": "Optional. Order by fields for the result.", // "location": "query", // "type": "string" // }, // "pageSize": { - // "description": "Optional. Maximum number of dataScans to return. The service may return fewer than this value. If unspecified, at most 10 scans will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000.", + // "description": "Optional. Maximum number of DataTaxonomies to return. The service may return fewer than this value. If unspecified, at most 10 DataTaxonomies will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000.", // "format": "int32", // "location": "query", // "type": "integer" // }, // "pageToken": { - // "description": "Optional. Page token received from a previous ListDataScans call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to ListDataScans must match the call that provided the page token.", + // "description": "Optional. Page token received from a previous ListDataTaxonomies call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to ListDataTaxonomies must match the call that provided the page token.", // "location": "query", // "type": "string" // }, // "parent": { - // "description": "Required. The resource name of the parent location: projects/{project}/locations/{location_id} where project refers to a project_id or project_number and location_id refers to a GCP region.", + // "description": "Required. The resource name of the DataTaxonomy location, of the form: projects/{project_number}/locations/{location_id} where location_id refers to a GCP region.", // "location": "path", // "pattern": "^projects/[^/]+/locations/[^/]+$", // "required": true, // "type": "string" // } // }, - // "path": "v1/{+parent}/dataScans", + // "path": "v1/{+parent}/dataTaxonomies", // "response": { - // "$ref": "GoogleCloudDataplexV1ListDataScansResponse" + // "$ref": "GoogleCloudDataplexV1ListDataTaxonomiesResponse" // }, // "scopes": [ // "https://www.googleapis.com/auth/cloud-platform" @@ -8184,7 +11389,7 @@ func (c *ProjectsLocationsDataScansListCall) Do(opts ...googleapi.CallOption) (* // 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 *ProjectsLocationsDataScansListCall) Pages(ctx context.Context, f func(*GoogleCloudDataplexV1ListDataScansResponse) error) error { +func (c *ProjectsLocationsDataTaxonomiesListCall) Pages(ctx context.Context, f func(*GoogleCloudDataplexV1ListDataTaxonomiesResponse) error) error { c.ctx_ = ctx defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point for { @@ -8202,42 +11407,49 @@ func (c *ProjectsLocationsDataScansListCall) Pages(ctx context.Context, f func(* } } -// method id "dataplex.projects.locations.dataScans.patch": +// method id "dataplex.projects.locations.dataTaxonomies.patch": -type ProjectsLocationsDataScansPatchCall struct { - s *Service - name string - googleclouddataplexv1datascan *GoogleCloudDataplexV1DataScan - urlParams_ gensupport.URLParams - ctx_ context.Context - header_ http.Header +type ProjectsLocationsDataTaxonomiesPatchCall struct { + s *Service + name string + googleclouddataplexv1datataxonomy *GoogleCloudDataplexV1DataTaxonomy + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header } -// Patch: Updates a DataScan resource. +// Patch: Updates a DataTaxonomy resource. // -// - name: Output only. The relative resource name of the scan, of the -// form: -// projects/{project}/locations/{location_id}/dataScans/{datascan_id}, -// where project refers to a project_id or project_number and -// location_id refers to a GCP region. -func (r *ProjectsLocationsDataScansService) Patch(name string, googleclouddataplexv1datascan *GoogleCloudDataplexV1DataScan) *ProjectsLocationsDataScansPatchCall { - c := &ProjectsLocationsDataScansPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} +// - name: Output only. The relative resource name of the DataTaxonomy, +// of the form: +// projects/{project_number}/locations/{location_id}/dataTaxonomies/{da +// ta_taxonomy_id}. +func (r *ProjectsLocationsDataTaxonomiesService) Patch(name string, googleclouddataplexv1datataxonomy *GoogleCloudDataplexV1DataTaxonomy) *ProjectsLocationsDataTaxonomiesPatchCall { + c := &ProjectsLocationsDataTaxonomiesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.name = name - c.googleclouddataplexv1datascan = googleclouddataplexv1datascan + c.googleclouddataplexv1datataxonomy = googleclouddataplexv1datataxonomy return c } // UpdateMask sets the optional parameter "updateMask": Required. Mask // of fields to update. -func (c *ProjectsLocationsDataScansPatchCall) UpdateMask(updateMask string) *ProjectsLocationsDataScansPatchCall { +func (c *ProjectsLocationsDataTaxonomiesPatchCall) UpdateMask(updateMask string) *ProjectsLocationsDataTaxonomiesPatchCall { c.urlParams_.Set("updateMask", updateMask) return c } +// ValidateOnly sets the optional parameter "validateOnly": Only +// validate the request, but do not perform mutations. The default is +// false. +func (c *ProjectsLocationsDataTaxonomiesPatchCall) ValidateOnly(validateOnly bool) *ProjectsLocationsDataTaxonomiesPatchCall { + c.urlParams_.Set("validateOnly", fmt.Sprint(validateOnly)) + 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 *ProjectsLocationsDataScansPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsDataScansPatchCall { +func (c *ProjectsLocationsDataTaxonomiesPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsDataTaxonomiesPatchCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } @@ -8245,21 +11457,21 @@ func (c *ProjectsLocationsDataScansPatchCall) Fields(s ...googleapi.Field) *Proj // 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 *ProjectsLocationsDataScansPatchCall) Context(ctx context.Context) *ProjectsLocationsDataScansPatchCall { +func (c *ProjectsLocationsDataTaxonomiesPatchCall) Context(ctx context.Context) *ProjectsLocationsDataTaxonomiesPatchCall { 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 *ProjectsLocationsDataScansPatchCall) Header() http.Header { +func (c *ProjectsLocationsDataTaxonomiesPatchCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } -func (c *ProjectsLocationsDataScansPatchCall) doRequest(alt string) (*http.Response, error) { +func (c *ProjectsLocationsDataTaxonomiesPatchCall) 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_ { @@ -8267,7 +11479,7 @@ func (c *ProjectsLocationsDataScansPatchCall) doRequest(alt string) (*http.Respo } reqHeaders.Set("User-Agent", c.s.userAgent()) var body io.Reader = nil - body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddataplexv1datascan) + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddataplexv1datataxonomy) if err != nil { return nil, err } @@ -8287,168 +11499,14 @@ func (c *ProjectsLocationsDataScansPatchCall) doRequest(alt string) (*http.Respo return gensupport.SendRequest(c.ctx_, c.s.client, req) } -// Do executes the "dataplex.projects.locations.dataScans.patch" call. +// Do executes the "dataplex.projects.locations.dataTaxonomies.patch" call. // Exactly one of *GoogleLongrunningOperation or error will be non-nil. // Any non-2xx status code is an error. Response headers are in either // *GoogleLongrunningOperation.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 *ProjectsLocationsDataScansPatchCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, 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 := &GoogleLongrunningOperation{ - 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": "Updates a DataScan resource.", - // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataScans/{dataScansId}", - // "httpMethod": "PATCH", - // "id": "dataplex.projects.locations.dataScans.patch", - // "parameterOrder": [ - // "name" - // ], - // "parameters": { - // "name": { - // "description": "Output only. The relative resource name of the scan, of the form: projects/{project}/locations/{location_id}/dataScans/{datascan_id}, where project refers to a project_id or project_number and location_id refers to a GCP region.", - // "location": "path", - // "pattern": "^projects/[^/]+/locations/[^/]+/dataScans/[^/]+$", - // "required": true, - // "type": "string" - // }, - // "updateMask": { - // "description": "Required. Mask of fields to update.", - // "format": "google-fieldmask", - // "location": "query", - // "type": "string" - // } - // }, - // "path": "v1/{+name}", - // "request": { - // "$ref": "GoogleCloudDataplexV1DataScan" - // }, - // "response": { - // "$ref": "GoogleLongrunningOperation" - // }, - // "scopes": [ - // "https://www.googleapis.com/auth/cloud-platform" - // ] - // } - -} - -// method id "dataplex.projects.locations.dataScans.run": - -type ProjectsLocationsDataScansRunCall struct { - s *Service - name string - googleclouddataplexv1rundatascanrequest *GoogleCloudDataplexV1RunDataScanRequest - urlParams_ gensupport.URLParams - ctx_ context.Context - header_ http.Header -} - -// Run: Runs an on-demand execution of a DataScan -// -// - name: The resource name of the DataScan: -// projects/{project}/locations/{location_id}/dataScans/{data_scan_id}. -// where project refers to a project_id or project_number and -// location_id refers to a GCP region.Only OnDemand data scans are -// allowed. -func (r *ProjectsLocationsDataScansService) Run(name string, googleclouddataplexv1rundatascanrequest *GoogleCloudDataplexV1RunDataScanRequest) *ProjectsLocationsDataScansRunCall { - c := &ProjectsLocationsDataScansRunCall{s: r.s, urlParams_: make(gensupport.URLParams)} - c.name = name - c.googleclouddataplexv1rundatascanrequest = googleclouddataplexv1rundatascanrequest - 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 *ProjectsLocationsDataScansRunCall) Fields(s ...googleapi.Field) *ProjectsLocationsDataScansRunCall { - c.urlParams_.Set("fields", googleapi.CombineFields(s)) - 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 *ProjectsLocationsDataScansRunCall) Context(ctx context.Context) *ProjectsLocationsDataScansRunCall { - 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 *ProjectsLocationsDataScansRunCall) Header() http.Header { - if c.header_ == nil { - c.header_ = make(http.Header) - } - return c.header_ -} - -func (c *ProjectsLocationsDataScansRunCall) 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()) - var body io.Reader = nil - body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddataplexv1rundatascanrequest) - if err != nil { - return nil, err - } - reqHeaders.Set("Content-Type", "application/json") - c.urlParams_.Set("alt", alt) - c.urlParams_.Set("prettyPrint", "false") - urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}:run") - urls += "?" + c.urlParams_.Encode() - req, err := http.NewRequest("POST", urls, body) - if err != nil { - return nil, err - } - req.Header = reqHeaders - googleapi.Expand(req.URL, map[string]string{ - "name": c.name, - }) - return gensupport.SendRequest(c.ctx_, c.s.client, req) -} - -// Do executes the "dataplex.projects.locations.dataScans.run" call. -// Exactly one of *GoogleCloudDataplexV1RunDataScanResponse or error -// will be non-nil. Any non-2xx status code is an error. Response -// headers are in either -// *GoogleCloudDataplexV1RunDataScanResponse.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 *ProjectsLocationsDataScansRunCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDataplexV1RunDataScanResponse, error) { +// 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 *ProjectsLocationsDataTaxonomiesPatchCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { @@ -8467,7 +11525,7 @@ func (c *ProjectsLocationsDataScansRunCall) Do(opts ...googleapi.CallOption) (*G if err := googleapi.CheckResponse(res); err != nil { return nil, gensupport.WrapError(err) } - ret := &GoogleCloudDataplexV1RunDataScanResponse{ + ret := &GoogleLongrunningOperation{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, @@ -8479,28 +11537,39 @@ func (c *ProjectsLocationsDataScansRunCall) Do(opts ...googleapi.CallOption) (*G } return ret, nil // { - // "description": "Runs an on-demand execution of a DataScan", - // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataScans/{dataScansId}:run", - // "httpMethod": "POST", - // "id": "dataplex.projects.locations.dataScans.run", + // "description": "Updates a DataTaxonomy resource.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataTaxonomies/{dataTaxonomiesId}", + // "httpMethod": "PATCH", + // "id": "dataplex.projects.locations.dataTaxonomies.patch", // "parameterOrder": [ // "name" // ], // "parameters": { // "name": { - // "description": "Required. The resource name of the DataScan: projects/{project}/locations/{location_id}/dataScans/{data_scan_id}. where project refers to a project_id or project_number and location_id refers to a GCP region.Only OnDemand data scans are allowed.", + // "description": "Output only. The relative resource name of the DataTaxonomy, of the form: projects/{project_number}/locations/{location_id}/dataTaxonomies/{data_taxonomy_id}.", // "location": "path", - // "pattern": "^projects/[^/]+/locations/[^/]+/dataScans/[^/]+$", + // "pattern": "^projects/[^/]+/locations/[^/]+/dataTaxonomies/[^/]+$", // "required": true, // "type": "string" + // }, + // "updateMask": { + // "description": "Required. Mask of fields to update.", + // "format": "google-fieldmask", + // "location": "query", + // "type": "string" + // }, + // "validateOnly": { + // "description": "Optional. Only validate the request, but do not perform mutations. The default is false.", + // "location": "query", + // "type": "boolean" // } // }, - // "path": "v1/{+name}:run", + // "path": "v1/{+name}", // "request": { - // "$ref": "GoogleCloudDataplexV1RunDataScanRequest" + // "$ref": "GoogleCloudDataplexV1DataTaxonomy" // }, // "response": { - // "$ref": "GoogleCloudDataplexV1RunDataScanResponse" + // "$ref": "GoogleLongrunningOperation" // }, // "scopes": [ // "https://www.googleapis.com/auth/cloud-platform" @@ -8509,9 +11578,9 @@ func (c *ProjectsLocationsDataScansRunCall) Do(opts ...googleapi.CallOption) (*G } -// method id "dataplex.projects.locations.dataScans.setIamPolicy": +// method id "dataplex.projects.locations.dataTaxonomies.setIamPolicy": -type ProjectsLocationsDataScansSetIamPolicyCall struct { +type ProjectsLocationsDataTaxonomiesSetIamPolicyCall struct { s *Service resource string googleiamv1setiampolicyrequest *GoogleIamV1SetIamPolicyRequest @@ -8528,8 +11597,8 @@ type ProjectsLocationsDataScansSetIamPolicyCall struct { // specified. See Resource names // (https://cloud.google.com/apis/design/resource_names) for the // appropriate value for this field. -func (r *ProjectsLocationsDataScansService) SetIamPolicy(resource string, googleiamv1setiampolicyrequest *GoogleIamV1SetIamPolicyRequest) *ProjectsLocationsDataScansSetIamPolicyCall { - c := &ProjectsLocationsDataScansSetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)} +func (r *ProjectsLocationsDataTaxonomiesService) SetIamPolicy(resource string, googleiamv1setiampolicyrequest *GoogleIamV1SetIamPolicyRequest) *ProjectsLocationsDataTaxonomiesSetIamPolicyCall { + c := &ProjectsLocationsDataTaxonomiesSetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.resource = resource c.googleiamv1setiampolicyrequest = googleiamv1setiampolicyrequest return c @@ -8538,7 +11607,7 @@ func (r *ProjectsLocationsDataScansService) SetIamPolicy(resource string, google // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse // for more information. -func (c *ProjectsLocationsDataScansSetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsLocationsDataScansSetIamPolicyCall { +func (c *ProjectsLocationsDataTaxonomiesSetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsLocationsDataTaxonomiesSetIamPolicyCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } @@ -8546,21 +11615,21 @@ func (c *ProjectsLocationsDataScansSetIamPolicyCall) Fields(s ...googleapi.Field // 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 *ProjectsLocationsDataScansSetIamPolicyCall) Context(ctx context.Context) *ProjectsLocationsDataScansSetIamPolicyCall { +func (c *ProjectsLocationsDataTaxonomiesSetIamPolicyCall) Context(ctx context.Context) *ProjectsLocationsDataTaxonomiesSetIamPolicyCall { 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 *ProjectsLocationsDataScansSetIamPolicyCall) Header() http.Header { +func (c *ProjectsLocationsDataTaxonomiesSetIamPolicyCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } -func (c *ProjectsLocationsDataScansSetIamPolicyCall) doRequest(alt string) (*http.Response, error) { +func (c *ProjectsLocationsDataTaxonomiesSetIamPolicyCall) 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_ { @@ -8588,14 +11657,14 @@ func (c *ProjectsLocationsDataScansSetIamPolicyCall) doRequest(alt string) (*htt return gensupport.SendRequest(c.ctx_, c.s.client, req) } -// Do executes the "dataplex.projects.locations.dataScans.setIamPolicy" call. +// Do executes the "dataplex.projects.locations.dataTaxonomies.setIamPolicy" call. // Exactly one of *GoogleIamV1Policy or error will be non-nil. Any // non-2xx status code is an error. Response headers are in either // *GoogleIamV1Policy.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 *ProjectsLocationsDataScansSetIamPolicyCall) Do(opts ...googleapi.CallOption) (*GoogleIamV1Policy, error) { +func (c *ProjectsLocationsDataTaxonomiesSetIamPolicyCall) Do(opts ...googleapi.CallOption) (*GoogleIamV1Policy, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { @@ -8627,9 +11696,9 @@ func (c *ProjectsLocationsDataScansSetIamPolicyCall) Do(opts ...googleapi.CallOp return ret, nil // { // "description": "Sets the access control policy on the specified resource. Replaces any existing policy.Can return NOT_FOUND, INVALID_ARGUMENT, and PERMISSION_DENIED errors.", - // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataScans/{dataScansId}:setIamPolicy", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataTaxonomies/{dataTaxonomiesId}:setIamPolicy", // "httpMethod": "POST", - // "id": "dataplex.projects.locations.dataScans.setIamPolicy", + // "id": "dataplex.projects.locations.dataTaxonomies.setIamPolicy", // "parameterOrder": [ // "resource" // ], @@ -8637,7 +11706,7 @@ func (c *ProjectsLocationsDataScansSetIamPolicyCall) Do(opts ...googleapi.CallOp // "resource": { // "description": "REQUIRED: The resource for which the policy is being specified. See Resource names (https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.", // "location": "path", - // "pattern": "^projects/[^/]+/locations/[^/]+/dataScans/[^/]+$", + // "pattern": "^projects/[^/]+/locations/[^/]+/dataTaxonomies/[^/]+$", // "required": true, // "type": "string" // } @@ -8656,9 +11725,9 @@ func (c *ProjectsLocationsDataScansSetIamPolicyCall) Do(opts ...googleapi.CallOp } -// method id "dataplex.projects.locations.dataScans.testIamPermissions": +// method id "dataplex.projects.locations.dataTaxonomies.testIamPermissions": -type ProjectsLocationsDataScansTestIamPermissionsCall struct { +type ProjectsLocationsDataTaxonomiesTestIamPermissionsCall struct { s *Service resource string googleiamv1testiampermissionsrequest *GoogleIamV1TestIamPermissionsRequest @@ -8678,8 +11747,8 @@ type ProjectsLocationsDataScansTestIamPermissionsCall struct { // being requested. See Resource names // (https://cloud.google.com/apis/design/resource_names) for the // appropriate value for this field. -func (r *ProjectsLocationsDataScansService) TestIamPermissions(resource string, googleiamv1testiampermissionsrequest *GoogleIamV1TestIamPermissionsRequest) *ProjectsLocationsDataScansTestIamPermissionsCall { - c := &ProjectsLocationsDataScansTestIamPermissionsCall{s: r.s, urlParams_: make(gensupport.URLParams)} +func (r *ProjectsLocationsDataTaxonomiesService) TestIamPermissions(resource string, googleiamv1testiampermissionsrequest *GoogleIamV1TestIamPermissionsRequest) *ProjectsLocationsDataTaxonomiesTestIamPermissionsCall { + c := &ProjectsLocationsDataTaxonomiesTestIamPermissionsCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.resource = resource c.googleiamv1testiampermissionsrequest = googleiamv1testiampermissionsrequest return c @@ -8688,7 +11757,7 @@ func (r *ProjectsLocationsDataScansService) TestIamPermissions(resource string, // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse // for more information. -func (c *ProjectsLocationsDataScansTestIamPermissionsCall) Fields(s ...googleapi.Field) *ProjectsLocationsDataScansTestIamPermissionsCall { +func (c *ProjectsLocationsDataTaxonomiesTestIamPermissionsCall) Fields(s ...googleapi.Field) *ProjectsLocationsDataTaxonomiesTestIamPermissionsCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } @@ -8696,21 +11765,21 @@ func (c *ProjectsLocationsDataScansTestIamPermissionsCall) Fields(s ...googleapi // 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 *ProjectsLocationsDataScansTestIamPermissionsCall) Context(ctx context.Context) *ProjectsLocationsDataScansTestIamPermissionsCall { +func (c *ProjectsLocationsDataTaxonomiesTestIamPermissionsCall) Context(ctx context.Context) *ProjectsLocationsDataTaxonomiesTestIamPermissionsCall { 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 *ProjectsLocationsDataScansTestIamPermissionsCall) Header() http.Header { +func (c *ProjectsLocationsDataTaxonomiesTestIamPermissionsCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } -func (c *ProjectsLocationsDataScansTestIamPermissionsCall) doRequest(alt string) (*http.Response, error) { +func (c *ProjectsLocationsDataTaxonomiesTestIamPermissionsCall) 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_ { @@ -8738,7 +11807,7 @@ func (c *ProjectsLocationsDataScansTestIamPermissionsCall) doRequest(alt string) return gensupport.SendRequest(c.ctx_, c.s.client, req) } -// Do executes the "dataplex.projects.locations.dataScans.testIamPermissions" call. +// Do executes the "dataplex.projects.locations.dataTaxonomies.testIamPermissions" call. // Exactly one of *GoogleIamV1TestIamPermissionsResponse or error will // be non-nil. Any non-2xx status code is an error. Response headers are // in either @@ -8746,7 +11815,7 @@ func (c *ProjectsLocationsDataScansTestIamPermissionsCall) doRequest(alt string) // 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 *ProjectsLocationsDataScansTestIamPermissionsCall) Do(opts ...googleapi.CallOption) (*GoogleIamV1TestIamPermissionsResponse, error) { +func (c *ProjectsLocationsDataTaxonomiesTestIamPermissionsCall) Do(opts ...googleapi.CallOption) (*GoogleIamV1TestIamPermissionsResponse, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { @@ -8778,9 +11847,9 @@ func (c *ProjectsLocationsDataScansTestIamPermissionsCall) Do(opts ...googleapi. return ret, nil // { // "description": "Returns permissions that a caller has on the specified resource. If the resource does not exist, this will return an empty set of permissions, not a NOT_FOUND error.Note: This operation is designed to be used for building permission-aware UIs and command-line tools, not for authorization checking. This operation may \"fail open\" without warning.", - // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataScans/{dataScansId}:testIamPermissions", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataTaxonomies/{dataTaxonomiesId}:testIamPermissions", // "httpMethod": "POST", - // "id": "dataplex.projects.locations.dataScans.testIamPermissions", + // "id": "dataplex.projects.locations.dataTaxonomies.testIamPermissions", // "parameterOrder": [ // "resource" // ], @@ -8788,7 +11857,7 @@ func (c *ProjectsLocationsDataScansTestIamPermissionsCall) Do(opts ...googleapi. // "resource": { // "description": "REQUIRED: The resource for which the policy detail is being requested. See Resource names (https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.", // "location": "path", - // "pattern": "^projects/[^/]+/locations/[^/]+/dataScans/[^/]+$", + // "pattern": "^projects/[^/]+/locations/[^/]+/dataTaxonomies/[^/]+$", // "required": true, // "type": "string" // } @@ -8807,115 +11876,108 @@ func (c *ProjectsLocationsDataScansTestIamPermissionsCall) Do(opts ...googleapi. } -// method id "dataplex.projects.locations.dataScans.jobs.get": +// method id "dataplex.projects.locations.dataTaxonomies.attributes.create": -type ProjectsLocationsDataScansJobsGetCall struct { - s *Service - name string - urlParams_ gensupport.URLParams - ifNoneMatch_ string - ctx_ context.Context - header_ http.Header +type ProjectsLocationsDataTaxonomiesAttributesCreateCall struct { + s *Service + parent string + googleclouddataplexv1dataattribute *GoogleCloudDataplexV1DataAttribute + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header } -// Get: Gets a DataScanJob resource. +// Create: Create a DataAttribute resource. // -// - name: The resource name of the DataScanJob: -// projects/{project}/locations/{location_id}/dataScans/{data_scan_id}/ -// dataScanJobs/{data_scan_job_id} where project refers to a -// project_id or project_number and location_id refers to a GCP -// region. -func (r *ProjectsLocationsDataScansJobsService) Get(name string) *ProjectsLocationsDataScansJobsGetCall { - c := &ProjectsLocationsDataScansJobsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} - c.name = name +// - parent: The resource name of the parent data taxonomy +// projects/{project_number}/locations/{location_id}/dataTaxonomies/{da +// ta_taxonomy_id}. +func (r *ProjectsLocationsDataTaxonomiesAttributesService) Create(parent string, googleclouddataplexv1dataattribute *GoogleCloudDataplexV1DataAttribute) *ProjectsLocationsDataTaxonomiesAttributesCreateCall { + c := &ProjectsLocationsDataTaxonomiesAttributesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + c.googleclouddataplexv1dataattribute = googleclouddataplexv1dataattribute return c } -// View sets the optional parameter "view": Select the DataScanJob view -// to return. Defaults to BASIC. -// -// Possible values: -// -// "DATA_SCAN_JOB_VIEW_UNSPECIFIED" - The API will default to the -// -// BASIC view. -// -// "BASIC" - Basic view that does not include spec and result. -// "FULL" - Include everything. -func (c *ProjectsLocationsDataScansJobsGetCall) View(view string) *ProjectsLocationsDataScansJobsGetCall { - c.urlParams_.Set("view", view) +// DataAttributeId sets the optional parameter "dataAttributeId": +// Required. DataAttribute identifier. * Must contain only lowercase +// letters, numbers and hyphens. * Must start with a letter. * Must be +// between 1-63 characters. * Must end with a number or a letter. * Must +// be unique within the DataTaxonomy. +func (c *ProjectsLocationsDataTaxonomiesAttributesCreateCall) DataAttributeId(dataAttributeId string) *ProjectsLocationsDataTaxonomiesAttributesCreateCall { + c.urlParams_.Set("dataAttributeId", dataAttributeId) + return c +} + +// ValidateOnly sets the optional parameter "validateOnly": Only +// validate the request, but do not perform mutations. The default is +// false. +func (c *ProjectsLocationsDataTaxonomiesAttributesCreateCall) ValidateOnly(validateOnly bool) *ProjectsLocationsDataTaxonomiesAttributesCreateCall { + c.urlParams_.Set("validateOnly", fmt.Sprint(validateOnly)) 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 *ProjectsLocationsDataScansJobsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsDataScansJobsGetCall { +func (c *ProjectsLocationsDataTaxonomiesAttributesCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsDataTaxonomiesAttributesCreateCall { 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 *ProjectsLocationsDataScansJobsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsDataScansJobsGetCall { - 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 *ProjectsLocationsDataScansJobsGetCall) Context(ctx context.Context) *ProjectsLocationsDataScansJobsGetCall { +func (c *ProjectsLocationsDataTaxonomiesAttributesCreateCall) Context(ctx context.Context) *ProjectsLocationsDataTaxonomiesAttributesCreateCall { 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 *ProjectsLocationsDataScansJobsGetCall) Header() http.Header { +func (c *ProjectsLocationsDataTaxonomiesAttributesCreateCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } -func (c *ProjectsLocationsDataScansJobsGetCall) doRequest(alt string) (*http.Response, error) { +func (c *ProjectsLocationsDataTaxonomiesAttributesCreateCall) 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 + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddataplexv1dataattribute) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") - urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/attributes") urls += "?" + c.urlParams_.Encode() - req, err := http.NewRequest("GET", urls, body) + req, err := http.NewRequest("POST", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ - "name": c.name, + "parent": c.parent, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } -// Do executes the "dataplex.projects.locations.dataScans.jobs.get" call. -// Exactly one of *GoogleCloudDataplexV1DataScanJob or error will be -// non-nil. Any non-2xx status code is an error. Response headers are in -// either *GoogleCloudDataplexV1DataScanJob.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 +// Do executes the "dataplex.projects.locations.dataTaxonomies.attributes.create" call. +// Exactly one of *GoogleLongrunningOperation or error will be non-nil. +// Any non-2xx status code is an error. Response headers are in either +// *GoogleLongrunningOperation.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 *ProjectsLocationsDataScansJobsGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDataplexV1DataScanJob, error) { +func (c *ProjectsLocationsDataTaxonomiesAttributesCreateCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { @@ -8934,7 +11996,7 @@ func (c *ProjectsLocationsDataScansJobsGetCall) Do(opts ...googleapi.CallOption) if err := googleapi.CheckResponse(res); err != nil { return nil, gensupport.WrapError(err) } - ret := &GoogleCloudDataplexV1DataScanJob{ + ret := &GoogleLongrunningOperation{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, @@ -8946,40 +12008,38 @@ func (c *ProjectsLocationsDataScansJobsGetCall) Do(opts ...googleapi.CallOption) } return ret, nil // { - // "description": "Gets a DataScanJob resource.", - // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataScans/{dataScansId}/jobs/{jobsId}", - // "httpMethod": "GET", - // "id": "dataplex.projects.locations.dataScans.jobs.get", + // "description": "Create a DataAttribute resource.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataTaxonomies/{dataTaxonomiesId}/attributes", + // "httpMethod": "POST", + // "id": "dataplex.projects.locations.dataTaxonomies.attributes.create", // "parameterOrder": [ - // "name" + // "parent" // ], // "parameters": { - // "name": { - // "description": "Required. The resource name of the DataScanJob: projects/{project}/locations/{location_id}/dataScans/{data_scan_id}/dataScanJobs/{data_scan_job_id} where project refers to a project_id or project_number and location_id refers to a GCP region.", + // "dataAttributeId": { + // "description": "Required. DataAttribute identifier. * Must contain only lowercase letters, numbers and hyphens. * Must start with a letter. * Must be between 1-63 characters. * Must end with a number or a letter. * Must be unique within the DataTaxonomy.", + // "location": "query", + // "type": "string" + // }, + // "parent": { + // "description": "Required. The resource name of the parent data taxonomy projects/{project_number}/locations/{location_id}/dataTaxonomies/{data_taxonomy_id}", // "location": "path", - // "pattern": "^projects/[^/]+/locations/[^/]+/dataScans/[^/]+/jobs/[^/]+$", + // "pattern": "^projects/[^/]+/locations/[^/]+/dataTaxonomies/[^/]+$", // "required": true, // "type": "string" // }, - // "view": { - // "description": "Optional. Select the DataScanJob view to return. Defaults to BASIC.", - // "enum": [ - // "DATA_SCAN_JOB_VIEW_UNSPECIFIED", - // "BASIC", - // "FULL" - // ], - // "enumDescriptions": [ - // "The API will default to the BASIC view.", - // "Basic view that does not include spec and result.", - // "Include everything." - // ], + // "validateOnly": { + // "description": "Optional. Only validate the request, but do not perform mutations. The default is false.", // "location": "query", - // "type": "string" + // "type": "boolean" // } // }, - // "path": "v1/{+name}", + // "path": "v1/{+parent}/attributes", + // "request": { + // "$ref": "GoogleCloudDataplexV1DataAttribute" + // }, // "response": { - // "$ref": "GoogleCloudDataplexV1DataScanJob" + // "$ref": "GoogleLongrunningOperation" // }, // "scopes": [ // "https://www.googleapis.com/auth/cloud-platform" @@ -8988,119 +12048,91 @@ func (c *ProjectsLocationsDataScansJobsGetCall) Do(opts ...googleapi.CallOption) } -// method id "dataplex.projects.locations.dataScans.jobs.list": +// method id "dataplex.projects.locations.dataTaxonomies.attributes.delete": -type ProjectsLocationsDataScansJobsListCall struct { - s *Service - parent string - urlParams_ gensupport.URLParams - ifNoneMatch_ string - ctx_ context.Context - header_ http.Header +type ProjectsLocationsDataTaxonomiesAttributesDeleteCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header } -// List: Lists DataScanJobs under the given DataScan. +// Delete: Deletes a Data Attribute resource. // -// - parent: The resource name of the parent environment: -// projects/{project}/locations/{location_id}/dataScans/{data_scan_id} -// where project refers to a project_id or project_number and -// location_id refers to a GCP region. -func (r *ProjectsLocationsDataScansJobsService) List(parent string) *ProjectsLocationsDataScansJobsListCall { - c := &ProjectsLocationsDataScansJobsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} - c.parent = parent - return c -} - -// PageSize sets the optional parameter "pageSize": Maximum number of -// DataScanJobs to return. The service may return fewer than this value. -// If unspecified, at most 10 DataScanJobs will be returned. The maximum -// value is 1000; values above 1000 will be coerced to 1000. -func (c *ProjectsLocationsDataScansJobsListCall) PageSize(pageSize int64) *ProjectsLocationsDataScansJobsListCall { - c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) +// - name: The resource name of the DataAttribute: +// projects/{project_number}/locations/{location_id}/dataTaxonomies/{da +// taTaxonomy}/attributes/{data_attribute_id}. +func (r *ProjectsLocationsDataTaxonomiesAttributesService) Delete(name string) *ProjectsLocationsDataTaxonomiesAttributesDeleteCall { + c := &ProjectsLocationsDataTaxonomiesAttributesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name return c } -// PageToken sets the optional parameter "pageToken": Page token -// received from a previous ListDataScanJobs call. Provide this to -// retrieve the subsequent page. When paginating, all other parameters -// provided to ListDataScanJobs must match the call that provided the -// page token. -func (c *ProjectsLocationsDataScansJobsListCall) PageToken(pageToken string) *ProjectsLocationsDataScansJobsListCall { - c.urlParams_.Set("pageToken", pageToken) +// Etag sets the optional parameter "etag": If the client provided etag +// value does not match the current etag value, the DeleteDataAttribute +// method returns an ABORTED error response. +func (c *ProjectsLocationsDataTaxonomiesAttributesDeleteCall) Etag(etag string) *ProjectsLocationsDataTaxonomiesAttributesDeleteCall { + c.urlParams_.Set("etag", etag) 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 *ProjectsLocationsDataScansJobsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsDataScansJobsListCall { +func (c *ProjectsLocationsDataTaxonomiesAttributesDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsDataTaxonomiesAttributesDeleteCall { 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 *ProjectsLocationsDataScansJobsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsDataScansJobsListCall { - 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 *ProjectsLocationsDataScansJobsListCall) Context(ctx context.Context) *ProjectsLocationsDataScansJobsListCall { +func (c *ProjectsLocationsDataTaxonomiesAttributesDeleteCall) Context(ctx context.Context) *ProjectsLocationsDataTaxonomiesAttributesDeleteCall { 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 *ProjectsLocationsDataScansJobsListCall) Header() http.Header { +func (c *ProjectsLocationsDataTaxonomiesAttributesDeleteCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } -func (c *ProjectsLocationsDataScansJobsListCall) doRequest(alt string) (*http.Response, error) { +func (c *ProjectsLocationsDataTaxonomiesAttributesDeleteCall) 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, "v1/{+parent}/jobs") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}") urls += "?" + c.urlParams_.Encode() - req, err := http.NewRequest("GET", urls, body) + req, err := http.NewRequest("DELETE", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ - "parent": c.parent, + "name": c.name, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } -// Do executes the "dataplex.projects.locations.dataScans.jobs.list" call. -// Exactly one of *GoogleCloudDataplexV1ListDataScanJobsResponse or -// error will be non-nil. Any non-2xx status code is an error. Response -// headers are in either -// *GoogleCloudDataplexV1ListDataScanJobsResponse.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 *ProjectsLocationsDataScansJobsListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDataplexV1ListDataScanJobsResponse, error) { +// Do executes the "dataplex.projects.locations.dataTaxonomies.attributes.delete" call. +// Exactly one of *GoogleLongrunningOperation or error will be non-nil. +// Any non-2xx status code is an error. Response headers are in either +// *GoogleLongrunningOperation.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 *ProjectsLocationsDataTaxonomiesAttributesDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { @@ -9119,7 +12151,7 @@ func (c *ProjectsLocationsDataScansJobsListCall) Do(opts ...googleapi.CallOption if err := googleapi.CheckResponse(res); err != nil { return nil, gensupport.WrapError(err) } - ret := &GoogleCloudDataplexV1ListDataScanJobsResponse{ + ret := &GoogleLongrunningOperation{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, @@ -9131,36 +12163,30 @@ func (c *ProjectsLocationsDataScansJobsListCall) Do(opts ...googleapi.CallOption } return ret, nil // { - // "description": "Lists DataScanJobs under the given DataScan.", - // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataScans/{dataScansId}/jobs", - // "httpMethod": "GET", - // "id": "dataplex.projects.locations.dataScans.jobs.list", + // "description": "Deletes a Data Attribute resource.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataTaxonomies/{dataTaxonomiesId}/attributes/{attributesId}", + // "httpMethod": "DELETE", + // "id": "dataplex.projects.locations.dataTaxonomies.attributes.delete", // "parameterOrder": [ - // "parent" + // "name" // ], // "parameters": { - // "pageSize": { - // "description": "Optional. Maximum number of DataScanJobs to return. The service may return fewer than this value. If unspecified, at most 10 DataScanJobs will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000.", - // "format": "int32", - // "location": "query", - // "type": "integer" - // }, - // "pageToken": { - // "description": "Optional. Page token received from a previous ListDataScanJobs call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to ListDataScanJobs must match the call that provided the page token.", + // "etag": { + // "description": "Optional. If the client provided etag value does not match the current etag value, the DeleteDataAttribute method returns an ABORTED error response.", // "location": "query", // "type": "string" // }, - // "parent": { - // "description": "Required. The resource name of the parent environment: projects/{project}/locations/{location_id}/dataScans/{data_scan_id} where project refers to a project_id or project_number and location_id refers to a GCP region.", + // "name": { + // "description": "Required. The resource name of the DataAttribute: projects/{project_number}/locations/{location_id}/dataTaxonomies/{dataTaxonomy}/attributes/{data_attribute_id}", // "location": "path", - // "pattern": "^projects/[^/]+/locations/[^/]+/dataScans/[^/]+$", + // "pattern": "^projects/[^/]+/locations/[^/]+/dataTaxonomies/[^/]+/attributes/[^/]+$", // "required": true, // "type": "string" // } // }, - // "path": "v1/{+parent}/jobs", + // "path": "v1/{+name}", // "response": { - // "$ref": "GoogleCloudDataplexV1ListDataScanJobsResponse" + // "$ref": "GoogleLongrunningOperation" // }, // "scopes": [ // "https://www.googleapis.com/auth/cloud-platform" @@ -9169,74 +12195,32 @@ func (c *ProjectsLocationsDataScansJobsListCall) Do(opts ...googleapi.CallOption } -// 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 *ProjectsLocationsDataScansJobsListCall) Pages(ctx context.Context, f func(*GoogleCloudDataplexV1ListDataScanJobsResponse) 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 "dataplex.projects.locations.dataTaxonomies.getIamPolicy": +// method id "dataplex.projects.locations.dataTaxonomies.attributes.get": -type ProjectsLocationsDataTaxonomiesGetIamPolicyCall struct { +type ProjectsLocationsDataTaxonomiesAttributesGetCall struct { s *Service - resource string + name string urlParams_ gensupport.URLParams ifNoneMatch_ string ctx_ context.Context header_ http.Header } -// GetIamPolicy: Gets the access control policy for a resource. Returns -// an empty policy if the resource exists and does not have a policy -// set. +// Get: Retrieves a Data Attribute resource. // -// - resource: REQUIRED: The resource for which the policy is being -// requested. See Resource names -// (https://cloud.google.com/apis/design/resource_names) for the -// appropriate value for this field. -func (r *ProjectsLocationsDataTaxonomiesService) GetIamPolicy(resource string) *ProjectsLocationsDataTaxonomiesGetIamPolicyCall { - c := &ProjectsLocationsDataTaxonomiesGetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)} - c.resource = resource - return c -} - -// OptionsRequestedPolicyVersion sets the optional parameter -// "options.requestedPolicyVersion": The maximum policy version that -// will be used to format the policy.Valid values are 0, 1, and 3. -// Requests specifying an invalid value will be rejected.Requests for -// policies with any conditional role bindings must specify version 3. -// Policies with no conditional role bindings may specify any valid -// value or leave the field unset.The policy in the response might use -// the policy version that you specified, or it might use a lower policy -// version. For example, if you specify version 3, but the policy has no -// conditional role bindings, the response uses version 1.To learn which -// resources support conditions in their IAM policies, see the IAM -// documentation -// (https://cloud.google.com/iam/help/conditions/resource-policies). -func (c *ProjectsLocationsDataTaxonomiesGetIamPolicyCall) OptionsRequestedPolicyVersion(optionsRequestedPolicyVersion int64) *ProjectsLocationsDataTaxonomiesGetIamPolicyCall { - c.urlParams_.Set("options.requestedPolicyVersion", fmt.Sprint(optionsRequestedPolicyVersion)) +// - name: The resource name of the dataAttribute: +// projects/{project_number}/locations/{location_id}/dataTaxonomies/{da +// taTaxonomy}/attributes/{data_attribute_id}. +func (r *ProjectsLocationsDataTaxonomiesAttributesService) Get(name string) *ProjectsLocationsDataTaxonomiesAttributesGetCall { + c := &ProjectsLocationsDataTaxonomiesAttributesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name 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 *ProjectsLocationsDataTaxonomiesGetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsLocationsDataTaxonomiesGetIamPolicyCall { +func (c *ProjectsLocationsDataTaxonomiesAttributesGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsDataTaxonomiesAttributesGetCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } @@ -9246,7 +12230,7 @@ func (c *ProjectsLocationsDataTaxonomiesGetIamPolicyCall) Fields(s ...googleapi. // 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 *ProjectsLocationsDataTaxonomiesGetIamPolicyCall) IfNoneMatch(entityTag string) *ProjectsLocationsDataTaxonomiesGetIamPolicyCall { +func (c *ProjectsLocationsDataTaxonomiesAttributesGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsDataTaxonomiesAttributesGetCall { c.ifNoneMatch_ = entityTag return c } @@ -9254,21 +12238,21 @@ func (c *ProjectsLocationsDataTaxonomiesGetIamPolicyCall) IfNoneMatch(entityTag // 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 *ProjectsLocationsDataTaxonomiesGetIamPolicyCall) Context(ctx context.Context) *ProjectsLocationsDataTaxonomiesGetIamPolicyCall { +func (c *ProjectsLocationsDataTaxonomiesAttributesGetCall) Context(ctx context.Context) *ProjectsLocationsDataTaxonomiesAttributesGetCall { 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 *ProjectsLocationsDataTaxonomiesGetIamPolicyCall) Header() http.Header { +func (c *ProjectsLocationsDataTaxonomiesAttributesGetCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } -func (c *ProjectsLocationsDataTaxonomiesGetIamPolicyCall) doRequest(alt string) (*http.Response, error) { +func (c *ProjectsLocationsDataTaxonomiesAttributesGetCall) 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_ { @@ -9281,7 +12265,7 @@ func (c *ProjectsLocationsDataTaxonomiesGetIamPolicyCall) doRequest(alt string) var body io.Reader = nil c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") - urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+resource}:getIamPolicy") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("GET", urls, body) if err != nil { @@ -9289,19 +12273,20 @@ func (c *ProjectsLocationsDataTaxonomiesGetIamPolicyCall) doRequest(alt string) } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ - "resource": c.resource, + "name": c.name, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } -// Do executes the "dataplex.projects.locations.dataTaxonomies.getIamPolicy" call. -// Exactly one of *GoogleIamV1Policy or error will be non-nil. Any -// non-2xx status code is an error. Response headers are in either -// *GoogleIamV1Policy.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 *ProjectsLocationsDataTaxonomiesGetIamPolicyCall) Do(opts ...googleapi.CallOption) (*GoogleIamV1Policy, error) { +// Do executes the "dataplex.projects.locations.dataTaxonomies.attributes.get" call. +// Exactly one of *GoogleCloudDataplexV1DataAttribute or error will be +// non-nil. Any non-2xx status code is an error. Response headers are in +// either *GoogleCloudDataplexV1DataAttribute.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 *ProjectsLocationsDataTaxonomiesAttributesGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDataplexV1DataAttribute, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { @@ -9320,7 +12305,7 @@ func (c *ProjectsLocationsDataTaxonomiesGetIamPolicyCall) Do(opts ...googleapi.C if err := googleapi.CheckResponse(res); err != nil { return nil, gensupport.WrapError(err) } - ret := &GoogleIamV1Policy{ + ret := &GoogleCloudDataplexV1DataAttribute{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, @@ -9332,31 +12317,25 @@ func (c *ProjectsLocationsDataTaxonomiesGetIamPolicyCall) Do(opts ...googleapi.C } return ret, nil // { - // "description": "Gets the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set.", - // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataTaxonomies/{dataTaxonomiesId}:getIamPolicy", + // "description": "Retrieves a Data Attribute resource.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataTaxonomies/{dataTaxonomiesId}/attributes/{attributesId}", // "httpMethod": "GET", - // "id": "dataplex.projects.locations.dataTaxonomies.getIamPolicy", + // "id": "dataplex.projects.locations.dataTaxonomies.attributes.get", // "parameterOrder": [ - // "resource" + // "name" // ], // "parameters": { - // "options.requestedPolicyVersion": { - // "description": "Optional. The maximum policy version that will be used to format the policy.Valid values are 0, 1, and 3. Requests specifying an invalid value will be rejected.Requests for policies with any conditional role bindings must specify version 3. Policies with no conditional role bindings may specify any valid value or leave the field unset.The policy in the response might use the policy version that you specified, or it might use a lower policy version. For example, if you specify version 3, but the policy has no conditional role bindings, the response uses version 1.To learn which resources support conditions in their IAM policies, see the IAM documentation (https://cloud.google.com/iam/help/conditions/resource-policies).", - // "format": "int32", - // "location": "query", - // "type": "integer" - // }, - // "resource": { - // "description": "REQUIRED: The resource for which the policy is being requested. See Resource names (https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.", + // "name": { + // "description": "Required. The resource name of the dataAttribute: projects/{project_number}/locations/{location_id}/dataTaxonomies/{dataTaxonomy}/attributes/{data_attribute_id}", // "location": "path", - // "pattern": "^projects/[^/]+/locations/[^/]+/dataTaxonomies/[^/]+$", + // "pattern": "^projects/[^/]+/locations/[^/]+/dataTaxonomies/[^/]+/attributes/[^/]+$", // "required": true, // "type": "string" // } // }, - // "path": "v1/{+resource}:getIamPolicy", + // "path": "v1/{+name}", // "response": { - // "$ref": "GoogleIamV1Policy" + // "$ref": "GoogleCloudDataplexV1DataAttribute" // }, // "scopes": [ // "https://www.googleapis.com/auth/cloud-platform" @@ -9365,75 +12344,100 @@ func (c *ProjectsLocationsDataTaxonomiesGetIamPolicyCall) Do(opts ...googleapi.C } -// method id "dataplex.projects.locations.dataTaxonomies.setIamPolicy": +// method id "dataplex.projects.locations.dataTaxonomies.attributes.getIamPolicy": -type ProjectsLocationsDataTaxonomiesSetIamPolicyCall struct { - s *Service - resource string - googleiamv1setiampolicyrequest *GoogleIamV1SetIamPolicyRequest - urlParams_ gensupport.URLParams - ctx_ context.Context - header_ http.Header +type ProjectsLocationsDataTaxonomiesAttributesGetIamPolicyCall struct { + s *Service + resource string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header } -// SetIamPolicy: Sets the access control policy on the specified -// resource. Replaces any existing policy.Can return NOT_FOUND, -// INVALID_ARGUMENT, and PERMISSION_DENIED errors. +// GetIamPolicy: Gets the access control policy for a resource. Returns +// an empty policy if the resource exists and does not have a policy +// set. // // - resource: REQUIRED: The resource for which the policy is being -// specified. See Resource names +// requested. See Resource names // (https://cloud.google.com/apis/design/resource_names) for the // appropriate value for this field. -func (r *ProjectsLocationsDataTaxonomiesService) SetIamPolicy(resource string, googleiamv1setiampolicyrequest *GoogleIamV1SetIamPolicyRequest) *ProjectsLocationsDataTaxonomiesSetIamPolicyCall { - c := &ProjectsLocationsDataTaxonomiesSetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)} +func (r *ProjectsLocationsDataTaxonomiesAttributesService) GetIamPolicy(resource string) *ProjectsLocationsDataTaxonomiesAttributesGetIamPolicyCall { + c := &ProjectsLocationsDataTaxonomiesAttributesGetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.resource = resource - c.googleiamv1setiampolicyrequest = googleiamv1setiampolicyrequest + return c +} + +// OptionsRequestedPolicyVersion sets the optional parameter +// "options.requestedPolicyVersion": The maximum policy version that +// will be used to format the policy.Valid values are 0, 1, and 3. +// Requests specifying an invalid value will be rejected.Requests for +// policies with any conditional role bindings must specify version 3. +// Policies with no conditional role bindings may specify any valid +// value or leave the field unset.The policy in the response might use +// the policy version that you specified, or it might use a lower policy +// version. For example, if you specify version 3, but the policy has no +// conditional role bindings, the response uses version 1.To learn which +// resources support conditions in their IAM policies, see the IAM +// documentation +// (https://cloud.google.com/iam/help/conditions/resource-policies). +func (c *ProjectsLocationsDataTaxonomiesAttributesGetIamPolicyCall) OptionsRequestedPolicyVersion(optionsRequestedPolicyVersion int64) *ProjectsLocationsDataTaxonomiesAttributesGetIamPolicyCall { + c.urlParams_.Set("options.requestedPolicyVersion", fmt.Sprint(optionsRequestedPolicyVersion)) 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 *ProjectsLocationsDataTaxonomiesSetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsLocationsDataTaxonomiesSetIamPolicyCall { +func (c *ProjectsLocationsDataTaxonomiesAttributesGetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsLocationsDataTaxonomiesAttributesGetIamPolicyCall { 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 *ProjectsLocationsDataTaxonomiesAttributesGetIamPolicyCall) IfNoneMatch(entityTag string) *ProjectsLocationsDataTaxonomiesAttributesGetIamPolicyCall { + 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 *ProjectsLocationsDataTaxonomiesSetIamPolicyCall) Context(ctx context.Context) *ProjectsLocationsDataTaxonomiesSetIamPolicyCall { +func (c *ProjectsLocationsDataTaxonomiesAttributesGetIamPolicyCall) Context(ctx context.Context) *ProjectsLocationsDataTaxonomiesAttributesGetIamPolicyCall { 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 *ProjectsLocationsDataTaxonomiesSetIamPolicyCall) Header() http.Header { +func (c *ProjectsLocationsDataTaxonomiesAttributesGetIamPolicyCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } -func (c *ProjectsLocationsDataTaxonomiesSetIamPolicyCall) doRequest(alt string) (*http.Response, error) { +func (c *ProjectsLocationsDataTaxonomiesAttributesGetIamPolicyCall) 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()) - var body io.Reader = nil - body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleiamv1setiampolicyrequest) - if err != nil { - return nil, err + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) } - reqHeaders.Set("Content-Type", "application/json") + var body io.Reader = nil c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") - urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+resource}:setIamPolicy") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+resource}:getIamPolicy") urls += "?" + c.urlParams_.Encode() - req, err := http.NewRequest("POST", urls, body) + req, err := http.NewRequest("GET", urls, body) if err != nil { return nil, err } @@ -9444,14 +12448,14 @@ func (c *ProjectsLocationsDataTaxonomiesSetIamPolicyCall) doRequest(alt string) return gensupport.SendRequest(c.ctx_, c.s.client, req) } -// Do executes the "dataplex.projects.locations.dataTaxonomies.setIamPolicy" call. +// Do executes the "dataplex.projects.locations.dataTaxonomies.attributes.getIamPolicy" call. // Exactly one of *GoogleIamV1Policy or error will be non-nil. Any // non-2xx status code is an error. Response headers are in either // *GoogleIamV1Policy.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 *ProjectsLocationsDataTaxonomiesSetIamPolicyCall) Do(opts ...googleapi.CallOption) (*GoogleIamV1Policy, error) { +func (c *ProjectsLocationsDataTaxonomiesAttributesGetIamPolicyCall) Do(opts ...googleapi.CallOption) (*GoogleIamV1Policy, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { @@ -9482,26 +12486,29 @@ func (c *ProjectsLocationsDataTaxonomiesSetIamPolicyCall) Do(opts ...googleapi.C } return ret, nil // { - // "description": "Sets the access control policy on the specified resource. Replaces any existing policy.Can return NOT_FOUND, INVALID_ARGUMENT, and PERMISSION_DENIED errors.", - // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataTaxonomies/{dataTaxonomiesId}:setIamPolicy", - // "httpMethod": "POST", - // "id": "dataplex.projects.locations.dataTaxonomies.setIamPolicy", + // "description": "Gets the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataTaxonomies/{dataTaxonomiesId}/attributes/{attributesId}:getIamPolicy", + // "httpMethod": "GET", + // "id": "dataplex.projects.locations.dataTaxonomies.attributes.getIamPolicy", // "parameterOrder": [ // "resource" // ], // "parameters": { + // "options.requestedPolicyVersion": { + // "description": "Optional. The maximum policy version that will be used to format the policy.Valid values are 0, 1, and 3. Requests specifying an invalid value will be rejected.Requests for policies with any conditional role bindings must specify version 3. Policies with no conditional role bindings may specify any valid value or leave the field unset.The policy in the response might use the policy version that you specified, or it might use a lower policy version. For example, if you specify version 3, but the policy has no conditional role bindings, the response uses version 1.To learn which resources support conditions in their IAM policies, see the IAM documentation (https://cloud.google.com/iam/help/conditions/resource-policies).", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, // "resource": { - // "description": "REQUIRED: The resource for which the policy is being specified. See Resource names (https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.", + // "description": "REQUIRED: The resource for which the policy is being requested. See Resource names (https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.", // "location": "path", - // "pattern": "^projects/[^/]+/locations/[^/]+/dataTaxonomies/[^/]+$", + // "pattern": "^projects/[^/]+/locations/[^/]+/dataTaxonomies/[^/]+/attributes/[^/]+$", // "required": true, // "type": "string" // } // }, - // "path": "v1/{+resource}:setIamPolicy", - // "request": { - // "$ref": "GoogleIamV1SetIamPolicyRequest" - // }, + // "path": "v1/{+resource}:getIamPolicy", // "response": { // "$ref": "GoogleIamV1Policy" // }, @@ -9512,97 +12519,133 @@ func (c *ProjectsLocationsDataTaxonomiesSetIamPolicyCall) Do(opts ...googleapi.C } -// method id "dataplex.projects.locations.dataTaxonomies.testIamPermissions": +// method id "dataplex.projects.locations.dataTaxonomies.attributes.list": + +type ProjectsLocationsDataTaxonomiesAttributesListCall struct { + s *Service + parent string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// List: Lists Data Attribute resources in a DataTaxonomy. +// +// - parent: The resource name of the DataTaxonomy: +// projects/{project_number}/locations/{location_id}/dataTaxonomies/{da +// ta_taxonomy_id}. +func (r *ProjectsLocationsDataTaxonomiesAttributesService) List(parent string) *ProjectsLocationsDataTaxonomiesAttributesListCall { + c := &ProjectsLocationsDataTaxonomiesAttributesListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + return c +} + +// Filter sets the optional parameter "filter": Filter request. +func (c *ProjectsLocationsDataTaxonomiesAttributesListCall) Filter(filter string) *ProjectsLocationsDataTaxonomiesAttributesListCall { + c.urlParams_.Set("filter", filter) + return c +} + +// OrderBy sets the optional parameter "orderBy": Order by fields for +// the result. +func (c *ProjectsLocationsDataTaxonomiesAttributesListCall) OrderBy(orderBy string) *ProjectsLocationsDataTaxonomiesAttributesListCall { + c.urlParams_.Set("orderBy", orderBy) + return c +} -type ProjectsLocationsDataTaxonomiesTestIamPermissionsCall struct { - s *Service - resource string - googleiamv1testiampermissionsrequest *GoogleIamV1TestIamPermissionsRequest - urlParams_ gensupport.URLParams - ctx_ context.Context - header_ http.Header +// PageSize sets the optional parameter "pageSize": Maximum number of +// DataAttributes to return. The service may return fewer than this +// value. If unspecified, at most 10 dataAttributes will be returned. +// The maximum value is 1000; values above 1000 will be coerced to 1000. +func (c *ProjectsLocationsDataTaxonomiesAttributesListCall) PageSize(pageSize int64) *ProjectsLocationsDataTaxonomiesAttributesListCall { + c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) + return c } -// TestIamPermissions: Returns permissions that a caller has on the -// specified resource. If the resource does not exist, this will return -// an empty set of permissions, not a NOT_FOUND error.Note: This -// operation is designed to be used for building permission-aware UIs -// and command-line tools, not for authorization checking. This -// operation may "fail open" without warning. -// -// - resource: REQUIRED: The resource for which the policy detail is -// being requested. See Resource names -// (https://cloud.google.com/apis/design/resource_names) for the -// appropriate value for this field. -func (r *ProjectsLocationsDataTaxonomiesService) TestIamPermissions(resource string, googleiamv1testiampermissionsrequest *GoogleIamV1TestIamPermissionsRequest) *ProjectsLocationsDataTaxonomiesTestIamPermissionsCall { - c := &ProjectsLocationsDataTaxonomiesTestIamPermissionsCall{s: r.s, urlParams_: make(gensupport.URLParams)} - c.resource = resource - c.googleiamv1testiampermissionsrequest = googleiamv1testiampermissionsrequest +// PageToken sets the optional parameter "pageToken": Page token +// received from a previous ListDataAttributes call. Provide this to +// retrieve the subsequent page. When paginating, all other parameters +// provided to ListDataAttributes must match the call that provided the +// page token. +func (c *ProjectsLocationsDataTaxonomiesAttributesListCall) PageToken(pageToken string) *ProjectsLocationsDataTaxonomiesAttributesListCall { + c.urlParams_.Set("pageToken", pageToken) 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 *ProjectsLocationsDataTaxonomiesTestIamPermissionsCall) Fields(s ...googleapi.Field) *ProjectsLocationsDataTaxonomiesTestIamPermissionsCall { +func (c *ProjectsLocationsDataTaxonomiesAttributesListCall) Fields(s ...googleapi.Field) *ProjectsLocationsDataTaxonomiesAttributesListCall { 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 *ProjectsLocationsDataTaxonomiesAttributesListCall) IfNoneMatch(entityTag string) *ProjectsLocationsDataTaxonomiesAttributesListCall { + 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 *ProjectsLocationsDataTaxonomiesTestIamPermissionsCall) Context(ctx context.Context) *ProjectsLocationsDataTaxonomiesTestIamPermissionsCall { +func (c *ProjectsLocationsDataTaxonomiesAttributesListCall) Context(ctx context.Context) *ProjectsLocationsDataTaxonomiesAttributesListCall { 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 *ProjectsLocationsDataTaxonomiesTestIamPermissionsCall) Header() http.Header { +func (c *ProjectsLocationsDataTaxonomiesAttributesListCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } -func (c *ProjectsLocationsDataTaxonomiesTestIamPermissionsCall) doRequest(alt string) (*http.Response, error) { +func (c *ProjectsLocationsDataTaxonomiesAttributesListCall) 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()) - var body io.Reader = nil - body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleiamv1testiampermissionsrequest) - if err != nil { - return nil, err + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) } - reqHeaders.Set("Content-Type", "application/json") + var body io.Reader = nil c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") - urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+resource}:testIamPermissions") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/attributes") urls += "?" + c.urlParams_.Encode() - req, err := http.NewRequest("POST", urls, body) + req, err := http.NewRequest("GET", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ - "resource": c.resource, + "parent": c.parent, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } -// Do executes the "dataplex.projects.locations.dataTaxonomies.testIamPermissions" call. -// Exactly one of *GoogleIamV1TestIamPermissionsResponse or error will -// be non-nil. Any non-2xx status code is an error. Response headers are -// in either -// *GoogleIamV1TestIamPermissionsResponse.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 *ProjectsLocationsDataTaxonomiesTestIamPermissionsCall) Do(opts ...googleapi.CallOption) (*GoogleIamV1TestIamPermissionsResponse, error) { +// Do executes the "dataplex.projects.locations.dataTaxonomies.attributes.list" call. +// Exactly one of *GoogleCloudDataplexV1ListDataAttributesResponse or +// error will be non-nil. Any non-2xx status code is an error. Response +// headers are in either +// *GoogleCloudDataplexV1ListDataAttributesResponse.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 *ProjectsLocationsDataTaxonomiesAttributesListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDataplexV1ListDataAttributesResponse, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { @@ -9621,7 +12664,7 @@ func (c *ProjectsLocationsDataTaxonomiesTestIamPermissionsCall) Do(opts ...googl if err := googleapi.CheckResponse(res); err != nil { return nil, gensupport.WrapError(err) } - ret := &GoogleIamV1TestIamPermissionsResponse{ + ret := &GoogleCloudDataplexV1ListDataAttributesResponse{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, @@ -9633,28 +12676,46 @@ func (c *ProjectsLocationsDataTaxonomiesTestIamPermissionsCall) Do(opts ...googl } return ret, nil // { - // "description": "Returns permissions that a caller has on the specified resource. If the resource does not exist, this will return an empty set of permissions, not a NOT_FOUND error.Note: This operation is designed to be used for building permission-aware UIs and command-line tools, not for authorization checking. This operation may \"fail open\" without warning.", - // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataTaxonomies/{dataTaxonomiesId}:testIamPermissions", - // "httpMethod": "POST", - // "id": "dataplex.projects.locations.dataTaxonomies.testIamPermissions", + // "description": "Lists Data Attribute resources in a DataTaxonomy.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataTaxonomies/{dataTaxonomiesId}/attributes", + // "httpMethod": "GET", + // "id": "dataplex.projects.locations.dataTaxonomies.attributes.list", // "parameterOrder": [ - // "resource" + // "parent" // ], // "parameters": { - // "resource": { - // "description": "REQUIRED: The resource for which the policy detail is being requested. See Resource names (https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.", + // "filter": { + // "description": "Optional. Filter request.", + // "location": "query", + // "type": "string" + // }, + // "orderBy": { + // "description": "Optional. Order by fields for the result.", + // "location": "query", + // "type": "string" + // }, + // "pageSize": { + // "description": "Optional. Maximum number of DataAttributes to return. The service may return fewer than this value. If unspecified, at most 10 dataAttributes will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000.", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "pageToken": { + // "description": "Optional. Page token received from a previous ListDataAttributes call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to ListDataAttributes must match the call that provided the page token.", + // "location": "query", + // "type": "string" + // }, + // "parent": { + // "description": "Required. The resource name of the DataTaxonomy: projects/{project_number}/locations/{location_id}/dataTaxonomies/{data_taxonomy_id}", // "location": "path", // "pattern": "^projects/[^/]+/locations/[^/]+/dataTaxonomies/[^/]+$", // "required": true, // "type": "string" // } // }, - // "path": "v1/{+resource}:testIamPermissions", - // "request": { - // "$ref": "GoogleIamV1TestIamPermissionsRequest" - // }, + // "path": "v1/{+parent}/attributes", // "response": { - // "$ref": "GoogleIamV1TestIamPermissionsResponse" + // "$ref": "GoogleCloudDataplexV1ListDataAttributesResponse" // }, // "scopes": [ // "https://www.googleapis.com/auth/cloud-platform" @@ -9663,118 +12724,127 @@ func (c *ProjectsLocationsDataTaxonomiesTestIamPermissionsCall) Do(opts ...googl } -// method id "dataplex.projects.locations.dataTaxonomies.attributes.getIamPolicy": +// 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 *ProjectsLocationsDataTaxonomiesAttributesListCall) Pages(ctx context.Context, f func(*GoogleCloudDataplexV1ListDataAttributesResponse) 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) + } +} -type ProjectsLocationsDataTaxonomiesAttributesGetIamPolicyCall struct { - s *Service - resource string - urlParams_ gensupport.URLParams - ifNoneMatch_ string - ctx_ context.Context - header_ http.Header +// method id "dataplex.projects.locations.dataTaxonomies.attributes.patch": + +type ProjectsLocationsDataTaxonomiesAttributesPatchCall struct { + s *Service + name string + googleclouddataplexv1dataattribute *GoogleCloudDataplexV1DataAttribute + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header } -// GetIamPolicy: Gets the access control policy for a resource. Returns -// an empty policy if the resource exists and does not have a policy -// set. +// Patch: Updates a DataAttribute resource. // -// - resource: REQUIRED: The resource for which the policy is being -// requested. See Resource names -// (https://cloud.google.com/apis/design/resource_names) for the -// appropriate value for this field. -func (r *ProjectsLocationsDataTaxonomiesAttributesService) GetIamPolicy(resource string) *ProjectsLocationsDataTaxonomiesAttributesGetIamPolicyCall { - c := &ProjectsLocationsDataTaxonomiesAttributesGetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)} - c.resource = resource +// - name: Output only. The relative resource name of the dataAttribute, +// of the form: +// projects/{project_number}/locations/{location_id}/dataTaxonomies/{da +// taTaxonomy}/attributes/{data_attribute_id}. +func (r *ProjectsLocationsDataTaxonomiesAttributesService) Patch(name string, googleclouddataplexv1dataattribute *GoogleCloudDataplexV1DataAttribute) *ProjectsLocationsDataTaxonomiesAttributesPatchCall { + c := &ProjectsLocationsDataTaxonomiesAttributesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + c.googleclouddataplexv1dataattribute = googleclouddataplexv1dataattribute return c } -// OptionsRequestedPolicyVersion sets the optional parameter -// "options.requestedPolicyVersion": The maximum policy version that -// will be used to format the policy.Valid values are 0, 1, and 3. -// Requests specifying an invalid value will be rejected.Requests for -// policies with any conditional role bindings must specify version 3. -// Policies with no conditional role bindings may specify any valid -// value or leave the field unset.The policy in the response might use -// the policy version that you specified, or it might use a lower policy -// version. For example, if you specify version 3, but the policy has no -// conditional role bindings, the response uses version 1.To learn which -// resources support conditions in their IAM policies, see the IAM -// documentation -// (https://cloud.google.com/iam/help/conditions/resource-policies). -func (c *ProjectsLocationsDataTaxonomiesAttributesGetIamPolicyCall) OptionsRequestedPolicyVersion(optionsRequestedPolicyVersion int64) *ProjectsLocationsDataTaxonomiesAttributesGetIamPolicyCall { - c.urlParams_.Set("options.requestedPolicyVersion", fmt.Sprint(optionsRequestedPolicyVersion)) +// UpdateMask sets the optional parameter "updateMask": Required. Mask +// of fields to update. +func (c *ProjectsLocationsDataTaxonomiesAttributesPatchCall) UpdateMask(updateMask string) *ProjectsLocationsDataTaxonomiesAttributesPatchCall { + c.urlParams_.Set("updateMask", updateMask) + return c +} + +// ValidateOnly sets the optional parameter "validateOnly": Only +// validate the request, but do not perform mutations. The default is +// false. +func (c *ProjectsLocationsDataTaxonomiesAttributesPatchCall) ValidateOnly(validateOnly bool) *ProjectsLocationsDataTaxonomiesAttributesPatchCall { + c.urlParams_.Set("validateOnly", fmt.Sprint(validateOnly)) 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 *ProjectsLocationsDataTaxonomiesAttributesGetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsLocationsDataTaxonomiesAttributesGetIamPolicyCall { +func (c *ProjectsLocationsDataTaxonomiesAttributesPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsDataTaxonomiesAttributesPatchCall { 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 *ProjectsLocationsDataTaxonomiesAttributesGetIamPolicyCall) IfNoneMatch(entityTag string) *ProjectsLocationsDataTaxonomiesAttributesGetIamPolicyCall { - 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 *ProjectsLocationsDataTaxonomiesAttributesGetIamPolicyCall) Context(ctx context.Context) *ProjectsLocationsDataTaxonomiesAttributesGetIamPolicyCall { +func (c *ProjectsLocationsDataTaxonomiesAttributesPatchCall) Context(ctx context.Context) *ProjectsLocationsDataTaxonomiesAttributesPatchCall { 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 *ProjectsLocationsDataTaxonomiesAttributesGetIamPolicyCall) Header() http.Header { +func (c *ProjectsLocationsDataTaxonomiesAttributesPatchCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } -func (c *ProjectsLocationsDataTaxonomiesAttributesGetIamPolicyCall) doRequest(alt string) (*http.Response, error) { +func (c *ProjectsLocationsDataTaxonomiesAttributesPatchCall) 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 + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddataplexv1dataattribute) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") - urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+resource}:getIamPolicy") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}") urls += "?" + c.urlParams_.Encode() - req, err := http.NewRequest("GET", urls, body) + req, err := http.NewRequest("PATCH", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ - "resource": c.resource, + "name": c.name, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } -// Do executes the "dataplex.projects.locations.dataTaxonomies.attributes.getIamPolicy" call. -// Exactly one of *GoogleIamV1Policy or error will be non-nil. Any -// non-2xx status code is an error. Response headers are in either -// *GoogleIamV1Policy.ServerResponse.Header or (if a response was -// returned at all) in error.(*googleapi.Error).Header. Use +// Do executes the "dataplex.projects.locations.dataTaxonomies.attributes.patch" call. +// Exactly one of *GoogleLongrunningOperation or error will be non-nil. +// Any non-2xx status code is an error. Response headers are in either +// *GoogleLongrunningOperation.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 *ProjectsLocationsDataTaxonomiesAttributesGetIamPolicyCall) Do(opts ...googleapi.CallOption) (*GoogleIamV1Policy, error) { +func (c *ProjectsLocationsDataTaxonomiesAttributesPatchCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { @@ -9793,7 +12863,7 @@ func (c *ProjectsLocationsDataTaxonomiesAttributesGetIamPolicyCall) Do(opts ...g if err := googleapi.CheckResponse(res); err != nil { return nil, gensupport.WrapError(err) } - ret := &GoogleIamV1Policy{ + ret := &GoogleLongrunningOperation{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, @@ -9805,31 +12875,39 @@ func (c *ProjectsLocationsDataTaxonomiesAttributesGetIamPolicyCall) Do(opts ...g } return ret, nil // { - // "description": "Gets the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set.", - // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataTaxonomies/{dataTaxonomiesId}/attributes/{attributesId}:getIamPolicy", - // "httpMethod": "GET", - // "id": "dataplex.projects.locations.dataTaxonomies.attributes.getIamPolicy", + // "description": "Updates a DataAttribute resource.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/dataTaxonomies/{dataTaxonomiesId}/attributes/{attributesId}", + // "httpMethod": "PATCH", + // "id": "dataplex.projects.locations.dataTaxonomies.attributes.patch", // "parameterOrder": [ - // "resource" + // "name" // ], // "parameters": { - // "options.requestedPolicyVersion": { - // "description": "Optional. The maximum policy version that will be used to format the policy.Valid values are 0, 1, and 3. Requests specifying an invalid value will be rejected.Requests for policies with any conditional role bindings must specify version 3. Policies with no conditional role bindings may specify any valid value or leave the field unset.The policy in the response might use the policy version that you specified, or it might use a lower policy version. For example, if you specify version 3, but the policy has no conditional role bindings, the response uses version 1.To learn which resources support conditions in their IAM policies, see the IAM documentation (https://cloud.google.com/iam/help/conditions/resource-policies).", - // "format": "int32", - // "location": "query", - // "type": "integer" - // }, - // "resource": { - // "description": "REQUIRED: The resource for which the policy is being requested. See Resource names (https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.", + // "name": { + // "description": "Output only. The relative resource name of the dataAttribute, of the form: projects/{project_number}/locations/{location_id}/dataTaxonomies/{dataTaxonomy}/attributes/{data_attribute_id}.", // "location": "path", // "pattern": "^projects/[^/]+/locations/[^/]+/dataTaxonomies/[^/]+/attributes/[^/]+$", // "required": true, // "type": "string" + // }, + // "updateMask": { + // "description": "Required. Mask of fields to update.", + // "format": "google-fieldmask", + // "location": "query", + // "type": "string" + // }, + // "validateOnly": { + // "description": "Optional. Only validate the request, but do not perform mutations. The default is false.", + // "location": "query", + // "type": "boolean" // } // }, - // "path": "v1/{+resource}:getIamPolicy", + // "path": "v1/{+name}", + // "request": { + // "$ref": "GoogleCloudDataplexV1DataAttribute" + // }, // "response": { - // "$ref": "GoogleIamV1Policy" + // "$ref": "GoogleLongrunningOperation" // }, // "scopes": [ // "https://www.googleapis.com/auth/cloud-platform" diff --git a/dataproc/v1/dataproc-api.json b/dataproc/v1/dataproc-api.json index 0f948c4110d..2cedb108388 100644 --- a/dataproc/v1/dataproc-api.json +++ b/dataproc/v1/dataproc-api.json @@ -2661,7 +2661,7 @@ } } }, - "revision": "20230103", + "revision": "20230117", "rootUrl": "https://dataproc.googleapis.com/", "schemas": { "AcceleratorConfig": { @@ -2674,7 +2674,7 @@ "type": "integer" }, "acceleratorTypeUri": { - "description": "Full URL, partial URI, or short name of the accelerator type resource to expose to this instance. See Compute Engine AcceleratorTypes (https://cloud.google.com/compute/docs/reference/beta/acceleratorTypes).Examples: https://www.googleapis.com/compute/beta/projects/[project_id]/zones/us-east1-a/acceleratorTypes/nvidia-tesla-k80 projects/[project_id]/zones/us-east1-a/acceleratorTypes/nvidia-tesla-k80 nvidia-tesla-k80Auto Zone Exception: If you are using the Dataproc Auto Zone Placement (https://cloud.google.com/dataproc/docs/concepts/configuring-clusters/auto-zone#using_auto_zone_placement) feature, you must use the short name of the accelerator type resource, for example, nvidia-tesla-k80.", + "description": "Full URL, partial URI, or short name of the accelerator type resource to expose to this instance. See Compute Engine AcceleratorTypes (https://cloud.google.com/compute/docs/reference/v1/acceleratorTypes).Examples: https://www.googleapis.com/compute/v1/projects/[project_id]/zones/[zone]/acceleratorTypes/nvidia-tesla-k80 projects/[project_id]/zones/[zone]/acceleratorTypes/nvidia-tesla-k80 nvidia-tesla-k80Auto Zone Exception: If you are using the Dataproc Auto Zone Placement (https://cloud.google.com/dataproc/docs/concepts/configuring-clusters/auto-zone#using_auto_zone_placement) feature, you must use the short name of the accelerator type resource, for example, nvidia-tesla-k80.", "type": "string" } }, @@ -3049,7 +3049,7 @@ }, "virtualClusterConfig": { "$ref": "VirtualClusterConfig", - "description": "Optional. The virtual cluster config is used when creating a Dataproc cluster that does not directly control the underlying compute resources, for example, when creating a Dataproc-on-GKE cluster (https://cloud.google.com/dataproc/docs/guides/dpgke/dataproc-gke). Dataproc may set default values, and values may change when clusters are updated. Exactly one of config or virtual_cluster_config must be specified." + "description": "Optional. The virtual cluster config is used when creating a Dataproc cluster that does not directly control the underlying compute resources, for example, when creating a Dataproc-on-GKE cluster (https://cloud.google.com/dataproc/docs/guides/dpgke/dataproc-gke-overview). Dataproc may set default values, and values may change when clusters are updated. Exactly one of config or virtual_cluster_config must be specified." } }, "type": "object" @@ -3394,7 +3394,20 @@ "DiagnoseClusterRequest": { "description": "A request to collect cluster diagnostic information.", "id": "DiagnoseClusterRequest", - "properties": {}, + "properties": { + "diagnosisInterval": { + "$ref": "Interval", + "description": "Optional. Time interval in which diagnosis should be carried out on the cluster." + }, + "job": { + "description": "Optional. DEPRECATED Specifies the job on which diagnosis is to be performed. Format: projects/{project}/regions/{region}/jobs/{job}", + "type": "string" + }, + "yarnApplicationId": { + "description": "Optional. DEPRECATED Specifies the yarn application on which diagnosis is to be performed.", + "type": "string" + } + }, "type": "object" }, "DiagnoseClusterResults": { @@ -3580,7 +3593,7 @@ "type": "object" }, "networkUri": { - "description": "Optional. The Compute Engine network to be used for machine communications. Cannot be specified with subnetwork_uri. If neither network_uri nor subnetwork_uri is specified, the \"default\" network of the project is used, if it exists. Cannot be a \"Custom Subnet Network\" (see Using Subnetworks (https://cloud.google.com/compute/docs/subnetworks) for more information).A full URL, partial URI, or short name are valid. Examples: https://www.googleapis.com/compute/v1/projects/[project_id]/regions/global/default projects/[project_id]/regions/global/default default", + "description": "Optional. The Compute Engine network to be used for machine communications. Cannot be specified with subnetwork_uri. If neither network_uri nor subnetwork_uri is specified, the \"default\" network of the project is used, if it exists. Cannot be a \"Custom Subnet Network\" (see Using Subnetworks (https://cloud.google.com/compute/docs/subnetworks) for more information).A full URL, partial URI, or short name are valid. Examples: https://www.googleapis.com/compute/v1/projects/[project_id]/regions/[region]/default projects/[project_id]/regions/[region]/default default", "type": "string" }, "nodeGroupAffinity": { @@ -3623,7 +3636,7 @@ "description": "Optional. Shielded Instance Config for clusters using Compute Engine Shielded VMs (https://cloud.google.com/security/shielded-cloud/shielded-vm)." }, "subnetworkUri": { - "description": "Optional. The Compute Engine subnetwork to be used for machine communications. Cannot be specified with network_uri.A full URL, partial URI, or short name are valid. Examples: https://www.googleapis.com/compute/v1/projects/[project_id]/regions/us-east1/subnetworks/sub0 projects/[project_id]/regions/us-east1/subnetworks/sub0 sub0", + "description": "Optional. The Compute Engine subnetwork to be used for machine communications. Cannot be specified with network_uri.A full URL, partial URI, or short name are valid. Examples: https://www.googleapis.com/compute/v1/projects/[project_id]/regions/[region]/subnetworks/sub0 projects/[project_id]/regions/[region]/subnetworks/sub0 sub0", "type": "string" }, "tags": { @@ -3634,7 +3647,7 @@ "type": "array" }, "zoneUri": { - "description": "Optional. The zone where the Compute Engine cluster will be located. On a create request, it is required in the \"global\" region. If omitted in a non-global Dataproc region, the service will pick a zone in the corresponding Compute Engine region. On a get request, zone will always be present.A full URL, partial URI, or short name are valid. Examples: https://www.googleapis.com/compute/v1/projects/[project_id]/zones/[zone] projects/[project_id]/zones/[zone] us-central1-f", + "description": "Optional. The Compute Engine zone where the Dataproc cluster will be located. If omitted, the service will pick a zone in the cluster's Compute Engine region. On a get request, zone will always be present.A full URL, partial URI, or short name are valid. Examples: https://www.googleapis.com/compute/v1/projects/[project_id]/zones/[zone] projects/[project_id]/zones/[zone] [zone]", "type": "string" } }, @@ -3980,7 +3993,7 @@ "description": "Optional. Disk option config settings." }, "imageUri": { - "description": "Optional. The Compute Engine image resource used for cluster instances.The URI can represent an image or image family.Image examples: https://www.googleapis.com/compute/beta/projects/[project_id]/global/images/[image-id] projects/[project_id]/global/images/[image-id] image-idImage family examples. Dataproc will use the most recent image from the family: https://www.googleapis.com/compute/beta/projects/[project_id]/global/images/family/[custom-image-family-name] projects/[project_id]/global/images/family/[custom-image-family-name]If the URI is unspecified, it will be inferred from SoftwareConfig.image_version or the system default.", + "description": "Optional. The Compute Engine image resource used for cluster instances.The URI can represent an image or image family.Image examples: https://www.googleapis.com/compute/v1/projects/[project_id]/global/images/[image-id] projects/[project_id]/global/images/[image-id] image-idImage family examples. Dataproc will use the most recent image from the family: https://www.googleapis.com/compute/v1/projects/[project_id]/global/images/family/[custom-image-family-name] projects/[project_id]/global/images/family/[custom-image-family-name]If the URI is unspecified, it will be inferred from SoftwareConfig.image_version or the system default.", "type": "string" }, "instanceNames": { @@ -4005,7 +4018,7 @@ "type": "boolean" }, "machineTypeUri": { - "description": "Optional. The Compute Engine machine type used for cluster instances.A full URL, partial URI, or short name are valid. Examples: https://www.googleapis.com/compute/v1/projects/[project_id]/zones/us-east1-a/machineTypes/n1-standard-2 projects/[project_id]/zones/us-east1-a/machineTypes/n1-standard-2 n1-standard-2Auto Zone Exception: If you are using the Dataproc Auto Zone Placement (https://cloud.google.com/dataproc/docs/concepts/configuring-clusters/auto-zone#using_auto_zone_placement) feature, you must use the short name of the machine type resource, for example, n1-standard-2.", + "description": "Optional. The Compute Engine machine type used for cluster instances.A full URL, partial URI, or short name are valid. Examples: https://www.googleapis.com/compute/v1/projects/[project_id]/zones/[zone]/machineTypes/n1-standard-2 projects/[project_id]/zones/[zone]/machineTypes/n1-standard-2 n1-standard-2Auto Zone Exception: If you are using the Dataproc Auto Zone Placement (https://cloud.google.com/dataproc/docs/concepts/configuring-clusters/auto-zone#using_auto_zone_placement) feature, you must use the short name of the machine type resource, for example, n1-standard-2.", "type": "string" }, "managedGroupConfig": { @@ -4087,6 +4100,23 @@ }, "type": "object" }, + "Interval": { + "description": "Represents a time interval, encoded as a Timestamp start (inclusive) and a Timestamp end (exclusive).The start must be less than or equal to the end. When the start equals the end, the interval is empty (matches no time). When both start and end are unspecified, the interval matches any time.", + "id": "Interval", + "properties": { + "endTime": { + "description": "Optional. Exclusive end of the interval.If specified, a Timestamp matching this interval will have to be before the end.", + "format": "google-datetime", + "type": "string" + }, + "startTime": { + "description": "Optional. Inclusive start of the interval.If specified, a Timestamp matching this interval will have to be the same or after the start.", + "format": "google-datetime", + "type": "string" + } + }, + "type": "object" + }, "Job": { "description": "A Dataproc job resource.", "id": "Job", @@ -4773,7 +4803,7 @@ "id": "NodeGroupAffinity", "properties": { "nodeGroupUri": { - "description": "Required. The URI of a sole-tenant node group resource (https://cloud.google.com/compute/docs/reference/rest/v1/nodeGroups) that the cluster will be created on.A full URL, partial URI, or node group name are valid. Examples: https://www.googleapis.com/compute/v1/projects/[project_id]/zones/us-central1-a/nodeGroups/node-group-1 projects/[project_id]/zones/us-central1-a/nodeGroups/node-group-1 node-group-1", + "description": "Required. The URI of a sole-tenant node group resource (https://cloud.google.com/compute/docs/reference/rest/v1/nodeGroups) that the cluster will be created on.A full URL, partial URI, or node group name are valid. Examples: https://www.googleapis.com/compute/v1/projects/[project_id]/zones/[zone]/nodeGroups/node-group-1 projects/[project_id]/zones/[zone]/nodeGroups/node-group-1 node-group-1", "type": "string" } }, @@ -6110,7 +6140,7 @@ "type": "object" }, "VirtualClusterConfig": { - "description": "The Dataproc cluster config for a cluster that does not directly control the underlying compute resources, such as a Dataproc-on-GKE cluster (https://cloud.google.com/dataproc/docs/guides/dpgke/dataproc-gke).", + "description": "The Dataproc cluster config for a cluster that does not directly control the underlying compute resources, such as a Dataproc-on-GKE cluster (https://cloud.google.com/dataproc/docs/guides/dpgke/dataproc-gke-overview).", "id": "VirtualClusterConfig", "properties": { "auxiliaryServicesConfig": { diff --git a/dataproc/v1/dataproc-gen.go b/dataproc/v1/dataproc-gen.go index c4aa7b1b5c5..1f7076242fb 100644 --- a/dataproc/v1/dataproc-gen.go +++ b/dataproc/v1/dataproc-gen.go @@ -303,10 +303,10 @@ type AcceleratorConfig struct { // AcceleratorTypeUri: Full URL, partial URI, or short name of the // accelerator type resource to expose to this instance. See Compute // Engine AcceleratorTypes - // (https://cloud.google.com/compute/docs/reference/beta/acceleratorTypes).Examples: - // https://www.googleapis.com/compute/beta/projects/[project_id]/zones/us-east1-a/acceleratorTypes/nvidia-tesla-k80 - // projects/[project_id]/zones/us-east1-a/acceleratorTypes/nvidia-tesla-k - // 80 nvidia-tesla-k80Auto Zone Exception: If you are using the Dataproc + // (https://cloud.google.com/compute/docs/reference/v1/acceleratorTypes).Examples: + // https://www.googleapis.com/compute/v1/projects/[project_id]/zones/[zone]/acceleratorTypes/nvidia-tesla-k80 + // projects/[project_id]/zones/[zone]/acceleratorTypes/nvidia-tesla-k80 + // nvidia-tesla-k80Auto Zone Exception: If you are using the Dataproc // Auto Zone Placement // (https://cloud.google.com/dataproc/docs/concepts/configuring-clusters/auto-zone#using_auto_zone_placement) // feature, you must use the short name of the accelerator type @@ -921,7 +921,7 @@ type Cluster struct { // when creating a Dataproc cluster that does not directly control the // underlying compute resources, for example, when creating a // Dataproc-on-GKE cluster - // (https://cloud.google.com/dataproc/docs/guides/dpgke/dataproc-gke). + // (https://cloud.google.com/dataproc/docs/guides/dpgke/dataproc-gke-overview). // Dataproc may set default values, and values may change when clusters // are updated. Exactly one of config or virtual_cluster_config must be // specified. @@ -1407,6 +1407,40 @@ func (s *DataprocMetricConfig) MarshalJSON() ([]byte, error) { // DiagnoseClusterRequest: A request to collect cluster diagnostic // information. type DiagnoseClusterRequest struct { + // DiagnosisInterval: Optional. Time interval in which diagnosis should + // be carried out on the cluster. + DiagnosisInterval *Interval `json:"diagnosisInterval,omitempty"` + + // Job: Optional. DEPRECATED Specifies the job on which diagnosis is to + // be performed. Format: projects/{project}/regions/{region}/jobs/{job} + Job string `json:"job,omitempty"` + + // YarnApplicationId: Optional. DEPRECATED Specifies the yarn + // application on which diagnosis is to be performed. + YarnApplicationId string `json:"yarnApplicationId,omitempty"` + + // ForceSendFields is a list of field names (e.g. "DiagnosisInterval") + // 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. "DiagnosisInterval") 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 *DiagnoseClusterRequest) MarshalJSON() ([]byte, error) { + type NoMethod DiagnoseClusterRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } // DiagnoseClusterResults: The location of diagnostic output. @@ -1777,8 +1811,8 @@ type GceClusterConfig struct { // (https://cloud.google.com/compute/docs/subnetworks) for more // information).A full URL, partial URI, or short name are valid. // Examples: - // https://www.googleapis.com/compute/v1/projects/[project_id]/regions/global/default - // projects/[project_id]/regions/global/default default + // https://www.googleapis.com/compute/v1/projects/[project_id]/regions/[region]/default + // projects/[project_id]/regions/[region]/default default NetworkUri string `json:"networkUri,omitempty"` // NodeGroupAffinity: Optional. Node Group Affinity for sole-tenant @@ -1836,8 +1870,8 @@ type GceClusterConfig struct { // SubnetworkUri: Optional. The Compute Engine subnetwork to be used for // machine communications. Cannot be specified with network_uri.A full // URL, partial URI, or short name are valid. Examples: - // https://www.googleapis.com/compute/v1/projects/[project_id]/regions/us-east1/subnetworks/sub0 - // projects/[project_id]/regions/us-east1/subnetworks/sub0 sub0 + // https://www.googleapis.com/compute/v1/projects/[project_id]/regions/[region]/subnetworks/sub0 + // projects/[project_id]/regions/[region]/subnetworks/sub0 sub0 SubnetworkUri string `json:"subnetworkUri,omitempty"` // Tags: The Compute Engine tags to add to all instances (see Tagging @@ -1845,14 +1879,13 @@ type GceClusterConfig struct { // (https://cloud.google.com/compute/docs/label-or-tag-resources#tags)). Tags []string `json:"tags,omitempty"` - // ZoneUri: Optional. The zone where the Compute Engine cluster will be - // located. On a create request, it is required in the "global" region. - // If omitted in a non-global Dataproc region, the service will pick a - // zone in the corresponding Compute Engine region. On a get request, - // zone will always be present.A full URL, partial URI, or short name - // are valid. Examples: + // ZoneUri: Optional. The Compute Engine zone where the Dataproc cluster + // will be located. If omitted, the service will pick a zone in the + // cluster's Compute Engine region. On a get request, zone will always + // be present.A full URL, partial URI, or short name are valid. + // Examples: // https://www.googleapis.com/compute/v1/projects/[project_id]/zones/[zone] - // projects/[project_id]/zones/[zone] us-central1-f + // projects/[project_id]/zones/[zone] [zone] ZoneUri string `json:"zoneUri,omitempty"` // ForceSendFields is a list of field names (e.g. @@ -2506,10 +2539,10 @@ type InstanceGroupConfig struct { // ImageUri: Optional. The Compute Engine image resource used for // cluster instances.The URI can represent an image or image // family.Image examples: - // https://www.googleapis.com/compute/beta/projects/[project_id]/global/images/[image-id] + // https://www.googleapis.com/compute/v1/projects/[project_id]/global/images/[image-id] // projects/[project_id]/global/images/[image-id] image-idImage family // examples. Dataproc will use the most recent image from the family: - // https://www.googleapis.com/compute/beta/projects/[project_id]/global/images/family/[custom-image-family-name] + // https://www.googleapis.com/compute/v1/projects/[project_id]/global/images/family/[custom-image-family-name] // projects/[project_id]/global/images/family/[custom-image-family-name]I // f the URI is unspecified, it will be inferred from // SoftwareConfig.image_version or the system default. @@ -2531,8 +2564,8 @@ type InstanceGroupConfig struct { // MachineTypeUri: Optional. The Compute Engine machine type used for // cluster instances.A full URL, partial URI, or short name are valid. // Examples: - // https://www.googleapis.com/compute/v1/projects/[project_id]/zones/us-east1-a/machineTypes/n1-standard-2 - // projects/[project_id]/zones/us-east1-a/machineTypes/n1-standard-2 + // https://www.googleapis.com/compute/v1/projects/[project_id]/zones/[zone]/machineTypes/n1-standard-2 + // projects/[project_id]/zones/[zone]/machineTypes/n1-standard-2 // n1-standard-2Auto Zone Exception: If you are using the Dataproc Auto // Zone Placement // (https://cloud.google.com/dataproc/docs/concepts/configuring-clusters/auto-zone#using_auto_zone_placement) @@ -2688,6 +2721,44 @@ func (s *InstantiateWorkflowTemplateRequest) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// Interval: Represents a time interval, encoded as a Timestamp start +// (inclusive) and a Timestamp end (exclusive).The start must be less +// than or equal to the end. When the start equals the end, the interval +// is empty (matches no time). When both start and end are unspecified, +// the interval matches any time. +type Interval struct { + // EndTime: Optional. Exclusive end of the interval.If specified, a + // Timestamp matching this interval will have to be before the end. + EndTime string `json:"endTime,omitempty"` + + // StartTime: Optional. Inclusive start of the interval.If specified, a + // Timestamp matching this interval will have to be the same or after + // the start. + StartTime string `json:"startTime,omitempty"` + + // ForceSendFields is a list of field names (e.g. "EndTime") 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. "EndTime") 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 *Interval) MarshalJSON() ([]byte, error) { + type NoMethod Interval + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // Job: A Dataproc job resource. type Job struct { // Done: Output only. Indicates whether the job is completed. If the @@ -3789,8 +3860,8 @@ type NodeGroupAffinity struct { // (https://cloud.google.com/compute/docs/reference/rest/v1/nodeGroups) // that the cluster will be created on.A full URL, partial URI, or node // group name are valid. Examples: - // https://www.googleapis.com/compute/v1/projects/[project_id]/zones/us-central1-a/nodeGroups/node-group-1 - // projects/[project_id]/zones/us-central1-a/nodeGroups/node-group-1 + // https://www.googleapis.com/compute/v1/projects/[project_id]/zones/[zone]/nodeGroups/node-group-1 + // projects/[project_id]/zones/[zone]/nodeGroups/node-group-1 // node-group-1 NodeGroupUri string `json:"nodeGroupUri,omitempty"` @@ -5968,7 +6039,7 @@ func (s *ValueValidation) MarshalJSON() ([]byte, error) { // VirtualClusterConfig: The Dataproc cluster config for a cluster that // does not directly control the underlying compute resources, such as a // Dataproc-on-GKE cluster -// (https://cloud.google.com/dataproc/docs/guides/dpgke/dataproc-gke). +// (https://cloud.google.com/dataproc/docs/guides/dpgke/dataproc-gke-overview). type VirtualClusterConfig struct { // AuxiliaryServicesConfig: Optional. Configuration of auxiliary // services used by this cluster. diff --git a/datastore/v1/datastore-api.json b/datastore/v1/datastore-api.json index aa1755ff5b7..c6166554b75 100644 --- a/datastore/v1/datastore-api.json +++ b/datastore/v1/datastore-api.json @@ -654,7 +654,7 @@ } } }, - "revision": "20230110", + "revision": "20230118", "rootUrl": "https://datastore.googleapis.com/", "schemas": { "Aggregation": { @@ -843,6 +843,10 @@ }, "type": "array" }, + "singleUseTransaction": { + "$ref": "TransactionOptions", + "description": "Options for beginning a new transaction for this request. The transaction is committed when the request completes. If specified, TransactionOptions.mode must be TransactionOptions.ReadWrite." + }, "transaction": { "description": "The identifier of the transaction associated with the commit. A transaction identifier is returned by a call to Datastore.BeginTransaction.", "format": "byte", @@ -1834,6 +1838,11 @@ "description": "The time at which these entities were read or found missing.", "format": "google-datetime", "type": "string" + }, + "transaction": { + "description": "The identifier of the transaction that was started as part of this Lookup request. Set only when ReadOptions.begin_transaction was set in LookupRequest.read_options.", + "format": "byte", + "type": "string" } }, "type": "object" @@ -1978,7 +1987,7 @@ "The given `property` is equal to the given `value`.", "The given `property` is equal to at least one value in the given array. Requires: * That `value` is a non-empty `ArrayValue` with at most 10 values. * No other `IN` or `NOT_IN` is in the same query.", "The given `property` is not equal to the given `value`. Requires: * No other `NOT_EQUAL` or `NOT_IN` is in the same query. * That `property` comes first in the `order_by`.", - "Limit the result set to the given entity and its descendants. Requires: * That `value` is an entity key.", + "Limit the result set to the given entity and its descendants. Requires: * That `value` is an entity key. * No other `HAS_ANCESTOR` is in the same query.", "The value of the `property` is not in the given array. Requires: * That `value` is a non-empty `ArrayValue` with at most 10 values. * No other `IN`, `NOT_IN`, `NOT_EQUAL` is in the same query. * That `field` comes first in the `order_by`." ], "type": "string" @@ -2178,6 +2187,10 @@ "description": "The options shared by read requests.", "id": "ReadOptions", "properties": { + "newTransaction": { + "$ref": "TransactionOptions", + "description": "Options for beginning a new transaction for this request. The new transaction identifier will be returned in the corresponding response as either LookupResponse.transaction or RunQueryResponse.transaction." + }, "readConsistency": { "description": "The non-transactional read consistency to use.", "enum": [ @@ -2301,6 +2314,11 @@ "query": { "$ref": "AggregationQuery", "description": "The parsed form of the `GqlQuery` from the request, if it was set." + }, + "transaction": { + "description": "The identifier of the transaction that was started as part of this RunAggregationQuery request. Set only when ReadOptions.begin_transaction was set in RunAggregationQueryRequest.read_options.", + "format": "byte", + "type": "string" } }, "type": "object" @@ -2343,6 +2361,11 @@ "query": { "$ref": "Query", "description": "The parsed form of the `GqlQuery` from the request, if it was set." + }, + "transaction": { + "description": "The identifier of the transaction that was started as part of this RunQuery request. Set only when ReadOptions.begin_transaction was set in RunQueryRequest.read_options.", + "format": "byte", + "type": "string" } }, "type": "object" diff --git a/datastore/v1/datastore-gen.go b/datastore/v1/datastore-gen.go index 6ef77975ae1..45f4a953e77 100644 --- a/datastore/v1/datastore-gen.go +++ b/datastore/v1/datastore-gen.go @@ -531,6 +531,12 @@ type CommitRequest struct { // `NON_TRANSACTIONAL`, no two mutations may affect a single entity. Mutations []*Mutation `json:"mutations,omitempty"` + // SingleUseTransaction: Options for beginning a new transaction for + // this request. The transaction is committed when the request + // completes. If specified, TransactionOptions.mode must be + // TransactionOptions.ReadWrite. + SingleUseTransaction *TransactionOptions `json:"singleUseTransaction,omitempty"` + // Transaction: The identifier of the transaction associated with the // commit. A transaction identifier is returned by a call to // Datastore.BeginTransaction. @@ -2211,6 +2217,11 @@ type LookupResponse struct { // missing. ReadTime string `json:"readTime,omitempty"` + // Transaction: The identifier of the transaction that was started as + // part of this Lookup request. Set only when + // ReadOptions.begin_transaction was set in LookupRequest.read_options. + Transaction string `json:"transaction,omitempty"` + // ServerResponse contains the HTTP response code and headers from the // server. googleapi.ServerResponse `json:"-"` @@ -2488,7 +2499,8 @@ type PropertyFilter struct { // `value`. Requires: * No other `NOT_EQUAL` or `NOT_IN` is in the same // query. * That `property` comes first in the `order_by`. // "HAS_ANCESTOR" - Limit the result set to the given entity and its - // descendants. Requires: * That `value` is an entity key. + // descendants. Requires: * That `value` is an entity key. * No other + // `HAS_ANCESTOR` is in the same query. // "NOT_IN" - The value of the `property` is not in the given array. // Requires: * That `value` is a non-empty `ArrayValue` with at most 10 // values. * No other `IN`, `NOT_IN`, `NOT_EQUAL` is in the same query. @@ -2773,6 +2785,12 @@ func (s *ReadOnly) MarshalJSON() ([]byte, error) { // ReadOptions: The options shared by read requests. type ReadOptions struct { + // NewTransaction: Options for beginning a new transaction for this + // request. The new transaction identifier will be returned in the + // corresponding response as either LookupResponse.transaction or + // RunQueryResponse.transaction. + NewTransaction *TransactionOptions `json:"newTransaction,omitempty"` + // ReadConsistency: The non-transactional read consistency to use. // // Possible values: @@ -2792,7 +2810,7 @@ type ReadOptions struct { // Datastore.BeginTransaction. Transaction string `json:"transaction,omitempty"` - // ForceSendFields is a list of field names (e.g. "ReadConsistency") to + // ForceSendFields is a list of field names (e.g. "NewTransaction") 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 @@ -2800,7 +2818,7 @@ type ReadOptions struct { // This may be used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "ReadConsistency") to + // NullFields is a list of field names (e.g. "NewTransaction") 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 @@ -2987,6 +3005,12 @@ type RunAggregationQueryResponse struct { // set. Query *AggregationQuery `json:"query,omitempty"` + // Transaction: The identifier of the transaction that was started as + // part of this RunAggregationQuery request. Set only when + // ReadOptions.begin_transaction was set in + // RunAggregationQueryRequest.read_options. + Transaction string `json:"transaction,omitempty"` + // ServerResponse contains the HTTP response code and headers from the // server. googleapi.ServerResponse `json:"-"` @@ -3069,6 +3093,12 @@ type RunQueryResponse struct { // set. Query *Query `json:"query,omitempty"` + // Transaction: The identifier of the transaction that was started as + // part of this RunQuery request. Set only when + // ReadOptions.begin_transaction was set in + // RunQueryRequest.read_options. + Transaction string `json:"transaction,omitempty"` + // ServerResponse contains the HTTP response code and headers from the // server. googleapi.ServerResponse `json:"-"` diff --git a/datastore/v1beta3/datastore-api.json b/datastore/v1beta3/datastore-api.json index 201c00ed79c..65e933e3918 100644 --- a/datastore/v1beta3/datastore-api.json +++ b/datastore/v1beta3/datastore-api.json @@ -336,7 +336,7 @@ } } }, - "revision": "20230110", + "revision": "20230118", "rootUrl": "https://datastore.googleapis.com/", "schemas": { "Aggregation": { @@ -1433,7 +1433,7 @@ "The given `property` is equal to the given `value`.", "The given `property` is equal to at least one value in the given array. Requires: * That `value` is a non-empty `ArrayValue` with at most 10 values. * No other `IN` or `NOT_IN` is in the same query.", "The given `property` is not equal to the given `value`. Requires: * No other `NOT_EQUAL` or `NOT_IN` is in the same query. * That `property` comes first in the `order_by`.", - "Limit the result set to the given entity and its descendants. Requires: * That `value` is an entity key.", + "Limit the result set to the given entity and its descendants. Requires: * That `value` is an entity key. * No other `HAS_ANCESTOR` is in the same query.", "The value of the `property` is not in the given array. Requires: * That `value` is a non-empty `ArrayValue` with at most 10 values. * No other `IN`, `NOT_IN`, `NOT_EQUAL` is in the same query. * That `field` comes first in the `order_by`." ], "type": "string" diff --git a/datastore/v1beta3/datastore-gen.go b/datastore/v1beta3/datastore-gen.go index c0a187692e4..94008475101 100644 --- a/datastore/v1beta3/datastore-gen.go +++ b/datastore/v1beta3/datastore-gen.go @@ -2082,7 +2082,8 @@ type PropertyFilter struct { // `value`. Requires: * No other `NOT_EQUAL` or `NOT_IN` is in the same // query. * That `property` comes first in the `order_by`. // "HAS_ANCESTOR" - Limit the result set to the given entity and its - // descendants. Requires: * That `value` is an entity key. + // descendants. Requires: * That `value` is an entity key. * No other + // `HAS_ANCESTOR` is in the same query. // "NOT_IN" - The value of the `property` is not in the given array. // Requires: * That `value` is a non-empty `ArrayValue` with at most 10 // values. * No other `IN`, `NOT_IN`, `NOT_EQUAL` is in the same query. diff --git a/dialogflow/v3/dialogflow-api.json b/dialogflow/v3/dialogflow-api.json index f66d54a42e8..3c347d4d3a7 100644 --- a/dialogflow/v3/dialogflow-api.json +++ b/dialogflow/v3/dialogflow-api.json @@ -3820,7 +3820,7 @@ } } }, - "revision": "20230110", + "revision": "20230118", "rootUrl": "https://dialogflow.googleapis.com/", "schemas": { "GoogleCloudDialogflowCxV3AdvancedSettings": { @@ -4917,11 +4917,13 @@ "description": "Optional. The data format of the exported agent. If not specified, `BLOB` is assumed.", "enum": [ "DATA_FORMAT_UNSPECIFIED", - "BLOB" + "BLOB", + "JSON_PACKAGE" ], "enumDescriptions": [ "Unspecified format.", - "Agent content will be exported as raw bytes." + "Agent content will be exported as raw bytes.", + "Agent content will be exported in JSON Package format." ], "type": "string" }, diff --git a/dialogflow/v3/dialogflow-gen.go b/dialogflow/v3/dialogflow-gen.go index 35a9e99d02b..3badabd0311 100644 --- a/dialogflow/v3/dialogflow-gen.go +++ b/dialogflow/v3/dialogflow-gen.go @@ -2404,6 +2404,8 @@ type GoogleCloudDialogflowCxV3ExportAgentRequest struct { // Possible values: // "DATA_FORMAT_UNSPECIFIED" - Unspecified format. // "BLOB" - Agent content will be exported as raw bytes. + // "JSON_PACKAGE" - Agent content will be exported in JSON Package + // format. DataFormat string `json:"dataFormat,omitempty"` // Environment: Optional. Environment name. If not set, draft diff --git a/dialogflow/v3beta1/dialogflow-api.json b/dialogflow/v3beta1/dialogflow-api.json index b6c52e00433..f44934c1e59 100644 --- a/dialogflow/v3beta1/dialogflow-api.json +++ b/dialogflow/v3beta1/dialogflow-api.json @@ -3820,7 +3820,7 @@ } } }, - "revision": "20230110", + "revision": "20230118", "rootUrl": "https://dialogflow.googleapis.com/", "schemas": { "GoogleCloudDialogflowCxV3AudioInput": { @@ -6778,11 +6778,13 @@ "description": "Optional. The data format of the exported agent. If not specified, `BLOB` is assumed.", "enum": [ "DATA_FORMAT_UNSPECIFIED", - "BLOB" + "BLOB", + "JSON_PACKAGE" ], "enumDescriptions": [ "Unspecified format.", - "Agent content will be exported as raw bytes." + "Agent content will be exported as raw bytes.", + "Agent content will be exported in JSON Package format." ], "type": "string" }, diff --git a/dialogflow/v3beta1/dialogflow-gen.go b/dialogflow/v3beta1/dialogflow-gen.go index b71282221e3..471f633d9a6 100644 --- a/dialogflow/v3beta1/dialogflow-gen.go +++ b/dialogflow/v3beta1/dialogflow-gen.go @@ -5908,6 +5908,8 @@ type GoogleCloudDialogflowCxV3beta1ExportAgentRequest struct { // Possible values: // "DATA_FORMAT_UNSPECIFIED" - Unspecified format. // "BLOB" - Agent content will be exported as raw bytes. + // "JSON_PACKAGE" - Agent content will be exported in JSON Package + // format. DataFormat string `json:"dataFormat,omitempty"` // Environment: Optional. Environment name. If not set, draft diff --git a/displayvideo/v2/displayvideo-api.json b/displayvideo/v2/displayvideo-api.json index f1fa18b1d6d..1b35827fc25 100644 --- a/displayvideo/v2/displayvideo-api.json +++ b/displayvideo/v2/displayvideo-api.json @@ -761,7 +761,10 @@ "TARGETING_TYPE_NATIVE_CONTENT_POSITION", "TARGETING_TYPE_OMID", "TARGETING_TYPE_AUDIO_CONTENT_TYPE", - "TARGETING_TYPE_CONTENT_GENRE" + "TARGETING_TYPE_CONTENT_GENRE", + "TARGETING_TYPE_YOUTUBE_VIDEO", + "TARGETING_TYPE_YOUTUBE_CHANNEL", + "TARGETING_TYPE_SESSION_POSITION" ], "enumDescriptions": [ "Default value when type is not specified or is unknown in this version.", @@ -809,7 +812,10 @@ "Target ads to a specific native content position.", "Target ads in an Open Measurement enabled inventory.", "Target ads to a specific audio content type.", - "Target ads to a specific content genre." + "Target ads to a specific content genre.", + "Target ads to a specific YouTube video.", + "Target ads to a specific YouTube channel.", + "Target ads to a serve it in a certain position of a session. Only supported for the AdGroup of YouTube Programmatic Reservation line item." ], "location": "path", "pattern": "^[^/]+$", @@ -921,7 +927,10 @@ "TARGETING_TYPE_NATIVE_CONTENT_POSITION", "TARGETING_TYPE_OMID", "TARGETING_TYPE_AUDIO_CONTENT_TYPE", - "TARGETING_TYPE_CONTENT_GENRE" + "TARGETING_TYPE_CONTENT_GENRE", + "TARGETING_TYPE_YOUTUBE_VIDEO", + "TARGETING_TYPE_YOUTUBE_CHANNEL", + "TARGETING_TYPE_SESSION_POSITION" ], "enumDescriptions": [ "Default value when type is not specified or is unknown in this version.", @@ -969,7 +978,10 @@ "Target ads to a specific native content position.", "Target ads in an Open Measurement enabled inventory.", "Target ads to a specific audio content type.", - "Target ads to a specific content genre." + "Target ads to a specific content genre.", + "Target ads to a specific YouTube video.", + "Target ads to a specific YouTube channel.", + "Target ads to a serve it in a certain position of a session. Only supported for the AdGroup of YouTube Programmatic Reservation line item." ], "location": "path", "pattern": "^[^/]+$", @@ -1929,7 +1941,10 @@ "TARGETING_TYPE_NATIVE_CONTENT_POSITION", "TARGETING_TYPE_OMID", "TARGETING_TYPE_AUDIO_CONTENT_TYPE", - "TARGETING_TYPE_CONTENT_GENRE" + "TARGETING_TYPE_CONTENT_GENRE", + "TARGETING_TYPE_YOUTUBE_VIDEO", + "TARGETING_TYPE_YOUTUBE_CHANNEL", + "TARGETING_TYPE_SESSION_POSITION" ], "enumDescriptions": [ "Default value when type is not specified or is unknown in this version.", @@ -1977,7 +1992,10 @@ "Target ads to a specific native content position.", "Target ads in an Open Measurement enabled inventory.", "Target ads to a specific audio content type.", - "Target ads to a specific content genre." + "Target ads to a specific content genre.", + "Target ads to a specific YouTube video.", + "Target ads to a specific YouTube channel.", + "Target ads to a serve it in a certain position of a session. Only supported for the AdGroup of YouTube Programmatic Reservation line item." ], "location": "path", "pattern": "^[^/]+$", @@ -2079,7 +2097,10 @@ "TARGETING_TYPE_NATIVE_CONTENT_POSITION", "TARGETING_TYPE_OMID", "TARGETING_TYPE_AUDIO_CONTENT_TYPE", - "TARGETING_TYPE_CONTENT_GENRE" + "TARGETING_TYPE_CONTENT_GENRE", + "TARGETING_TYPE_YOUTUBE_VIDEO", + "TARGETING_TYPE_YOUTUBE_CHANNEL", + "TARGETING_TYPE_SESSION_POSITION" ], "enumDescriptions": [ "Default value when type is not specified or is unknown in this version.", @@ -2127,7 +2148,10 @@ "Target ads to a specific native content position.", "Target ads in an Open Measurement enabled inventory.", "Target ads to a specific audio content type.", - "Target ads to a specific content genre." + "Target ads to a specific content genre.", + "Target ads to a specific YouTube video.", + "Target ads to a specific YouTube channel.", + "Target ads to a serve it in a certain position of a session. Only supported for the AdGroup of YouTube Programmatic Reservation line item." ], "location": "path", "pattern": "^[^/]+$", @@ -2226,7 +2250,10 @@ "TARGETING_TYPE_NATIVE_CONTENT_POSITION", "TARGETING_TYPE_OMID", "TARGETING_TYPE_AUDIO_CONTENT_TYPE", - "TARGETING_TYPE_CONTENT_GENRE" + "TARGETING_TYPE_CONTENT_GENRE", + "TARGETING_TYPE_YOUTUBE_VIDEO", + "TARGETING_TYPE_YOUTUBE_CHANNEL", + "TARGETING_TYPE_SESSION_POSITION" ], "enumDescriptions": [ "Default value when type is not specified or is unknown in this version.", @@ -2274,7 +2301,10 @@ "Target ads to a specific native content position.", "Target ads in an Open Measurement enabled inventory.", "Target ads to a specific audio content type.", - "Target ads to a specific content genre." + "Target ads to a specific content genre.", + "Target ads to a specific YouTube video.", + "Target ads to a specific YouTube channel.", + "Target ads to a serve it in a certain position of a session. Only supported for the AdGroup of YouTube Programmatic Reservation line item." ], "location": "path", "pattern": "^[^/]+$", @@ -2386,7 +2416,10 @@ "TARGETING_TYPE_NATIVE_CONTENT_POSITION", "TARGETING_TYPE_OMID", "TARGETING_TYPE_AUDIO_CONTENT_TYPE", - "TARGETING_TYPE_CONTENT_GENRE" + "TARGETING_TYPE_CONTENT_GENRE", + "TARGETING_TYPE_YOUTUBE_VIDEO", + "TARGETING_TYPE_YOUTUBE_CHANNEL", + "TARGETING_TYPE_SESSION_POSITION" ], "enumDescriptions": [ "Default value when type is not specified or is unknown in this version.", @@ -2434,7 +2467,10 @@ "Target ads to a specific native content position.", "Target ads in an Open Measurement enabled inventory.", "Target ads to a specific audio content type.", - "Target ads to a specific content genre." + "Target ads to a specific content genre.", + "Target ads to a specific YouTube video.", + "Target ads to a specific YouTube channel.", + "Target ads to a serve it in a certain position of a session. Only supported for the AdGroup of YouTube Programmatic Reservation line item." ], "location": "path", "pattern": "^[^/]+$", @@ -3002,7 +3038,10 @@ "TARGETING_TYPE_NATIVE_CONTENT_POSITION", "TARGETING_TYPE_OMID", "TARGETING_TYPE_AUDIO_CONTENT_TYPE", - "TARGETING_TYPE_CONTENT_GENRE" + "TARGETING_TYPE_CONTENT_GENRE", + "TARGETING_TYPE_YOUTUBE_VIDEO", + "TARGETING_TYPE_YOUTUBE_CHANNEL", + "TARGETING_TYPE_SESSION_POSITION" ], "enumDescriptions": [ "Default value when type is not specified or is unknown in this version.", @@ -3050,7 +3089,10 @@ "Target ads to a specific native content position.", "Target ads in an Open Measurement enabled inventory.", "Target ads to a specific audio content type.", - "Target ads to a specific content genre." + "Target ads to a specific content genre.", + "Target ads to a specific YouTube video.", + "Target ads to a specific YouTube channel.", + "Target ads to a serve it in a certain position of a session. Only supported for the AdGroup of YouTube Programmatic Reservation line item." ], "location": "path", "pattern": "^[^/]+$", @@ -3152,7 +3194,10 @@ "TARGETING_TYPE_NATIVE_CONTENT_POSITION", "TARGETING_TYPE_OMID", "TARGETING_TYPE_AUDIO_CONTENT_TYPE", - "TARGETING_TYPE_CONTENT_GENRE" + "TARGETING_TYPE_CONTENT_GENRE", + "TARGETING_TYPE_YOUTUBE_VIDEO", + "TARGETING_TYPE_YOUTUBE_CHANNEL", + "TARGETING_TYPE_SESSION_POSITION" ], "enumDescriptions": [ "Default value when type is not specified or is unknown in this version.", @@ -3200,7 +3245,10 @@ "Target ads to a specific native content position.", "Target ads in an Open Measurement enabled inventory.", "Target ads to a specific audio content type.", - "Target ads to a specific content genre." + "Target ads to a specific content genre.", + "Target ads to a specific YouTube video.", + "Target ads to a specific YouTube channel.", + "Target ads to a serve it in a certain position of a session. Only supported for the AdGroup of YouTube Programmatic Reservation line item." ], "location": "path", "pattern": "^[^/]+$", @@ -3299,7 +3347,10 @@ "TARGETING_TYPE_NATIVE_CONTENT_POSITION", "TARGETING_TYPE_OMID", "TARGETING_TYPE_AUDIO_CONTENT_TYPE", - "TARGETING_TYPE_CONTENT_GENRE" + "TARGETING_TYPE_CONTENT_GENRE", + "TARGETING_TYPE_YOUTUBE_VIDEO", + "TARGETING_TYPE_YOUTUBE_CHANNEL", + "TARGETING_TYPE_SESSION_POSITION" ], "enumDescriptions": [ "Default value when type is not specified or is unknown in this version.", @@ -3347,7 +3398,10 @@ "Target ads to a specific native content position.", "Target ads in an Open Measurement enabled inventory.", "Target ads to a specific audio content type.", - "Target ads to a specific content genre." + "Target ads to a specific content genre.", + "Target ads to a specific YouTube video.", + "Target ads to a specific YouTube channel.", + "Target ads to a serve it in a certain position of a session. Only supported for the AdGroup of YouTube Programmatic Reservation line item." ], "location": "path", "pattern": "^[^/]+$", @@ -3459,7 +3513,10 @@ "TARGETING_TYPE_NATIVE_CONTENT_POSITION", "TARGETING_TYPE_OMID", "TARGETING_TYPE_AUDIO_CONTENT_TYPE", - "TARGETING_TYPE_CONTENT_GENRE" + "TARGETING_TYPE_CONTENT_GENRE", + "TARGETING_TYPE_YOUTUBE_VIDEO", + "TARGETING_TYPE_YOUTUBE_CHANNEL", + "TARGETING_TYPE_SESSION_POSITION" ], "enumDescriptions": [ "Default value when type is not specified or is unknown in this version.", @@ -3507,7 +3564,10 @@ "Target ads to a specific native content position.", "Target ads in an Open Measurement enabled inventory.", "Target ads to a specific audio content type.", - "Target ads to a specific content genre." + "Target ads to a specific content genre.", + "Target ads to a specific YouTube video.", + "Target ads to a specific YouTube channel.", + "Target ads to a serve it in a certain position of a session. Only supported for the AdGroup of YouTube Programmatic Reservation line item." ], "location": "path", "pattern": "^[^/]+$", @@ -4565,7 +4625,10 @@ "TARGETING_TYPE_NATIVE_CONTENT_POSITION", "TARGETING_TYPE_OMID", "TARGETING_TYPE_AUDIO_CONTENT_TYPE", - "TARGETING_TYPE_CONTENT_GENRE" + "TARGETING_TYPE_CONTENT_GENRE", + "TARGETING_TYPE_YOUTUBE_VIDEO", + "TARGETING_TYPE_YOUTUBE_CHANNEL", + "TARGETING_TYPE_SESSION_POSITION" ], "enumDescriptions": [ "Default value when type is not specified or is unknown in this version.", @@ -4613,7 +4676,10 @@ "Target ads to a specific native content position.", "Target ads in an Open Measurement enabled inventory.", "Target ads to a specific audio content type.", - "Target ads to a specific content genre." + "Target ads to a specific content genre.", + "Target ads to a specific YouTube video.", + "Target ads to a specific YouTube channel.", + "Target ads to a serve it in a certain position of a session. Only supported for the AdGroup of YouTube Programmatic Reservation line item." ], "location": "path", "pattern": "^[^/]+$", @@ -4706,7 +4772,10 @@ "TARGETING_TYPE_NATIVE_CONTENT_POSITION", "TARGETING_TYPE_OMID", "TARGETING_TYPE_AUDIO_CONTENT_TYPE", - "TARGETING_TYPE_CONTENT_GENRE" + "TARGETING_TYPE_CONTENT_GENRE", + "TARGETING_TYPE_YOUTUBE_VIDEO", + "TARGETING_TYPE_YOUTUBE_CHANNEL", + "TARGETING_TYPE_SESSION_POSITION" ], "enumDescriptions": [ "Default value when type is not specified or is unknown in this version.", @@ -4754,7 +4823,10 @@ "Target ads to a specific native content position.", "Target ads in an Open Measurement enabled inventory.", "Target ads to a specific audio content type.", - "Target ads to a specific content genre." + "Target ads to a specific content genre.", + "Target ads to a specific YouTube video.", + "Target ads to a specific YouTube channel.", + "Target ads to a serve it in a certain position of a session. Only supported for the AdGroup of YouTube Programmatic Reservation line item." ], "location": "path", "pattern": "^[^/]+$", @@ -4844,7 +4916,10 @@ "TARGETING_TYPE_NATIVE_CONTENT_POSITION", "TARGETING_TYPE_OMID", "TARGETING_TYPE_AUDIO_CONTENT_TYPE", - "TARGETING_TYPE_CONTENT_GENRE" + "TARGETING_TYPE_CONTENT_GENRE", + "TARGETING_TYPE_YOUTUBE_VIDEO", + "TARGETING_TYPE_YOUTUBE_CHANNEL", + "TARGETING_TYPE_SESSION_POSITION" ], "enumDescriptions": [ "Default value when type is not specified or is unknown in this version.", @@ -4892,7 +4967,10 @@ "Target ads to a specific native content position.", "Target ads in an Open Measurement enabled inventory.", "Target ads to a specific audio content type.", - "Target ads to a specific content genre." + "Target ads to a specific content genre.", + "Target ads to a specific YouTube video.", + "Target ads to a specific YouTube channel.", + "Target ads to a serve it in a certain position of a session. Only supported for the AdGroup of YouTube Programmatic Reservation line item." ], "location": "path", "pattern": "^[^/]+$", @@ -4995,7 +5073,10 @@ "TARGETING_TYPE_NATIVE_CONTENT_POSITION", "TARGETING_TYPE_OMID", "TARGETING_TYPE_AUDIO_CONTENT_TYPE", - "TARGETING_TYPE_CONTENT_GENRE" + "TARGETING_TYPE_CONTENT_GENRE", + "TARGETING_TYPE_YOUTUBE_VIDEO", + "TARGETING_TYPE_YOUTUBE_CHANNEL", + "TARGETING_TYPE_SESSION_POSITION" ], "enumDescriptions": [ "Default value when type is not specified or is unknown in this version.", @@ -5043,7 +5124,10 @@ "Target ads to a specific native content position.", "Target ads in an Open Measurement enabled inventory.", "Target ads to a specific audio content type.", - "Target ads to a specific content genre." + "Target ads to a specific content genre.", + "Target ads to a specific YouTube video.", + "Target ads to a specific YouTube channel.", + "Target ads to a serve it in a certain position of a session. Only supported for the AdGroup of YouTube Programmatic Reservation line item." ], "location": "path", "pattern": "^[^/]+$", @@ -5062,6 +5146,561 @@ } } } + }, + "youtubeAdGroupAds": { + "methods": { + "get": { + "description": "Gets a YouTube ad group ad.", + "flatPath": "v2/advertisers/{advertisersId}/youtubeAdGroupAds/{youtubeAdGroupAdsId}", + "httpMethod": "GET", + "id": "displayvideo.advertisers.youtubeAdGroupAds.get", + "parameterOrder": [ + "advertiserId", + "youtubeAdGroupAdId" + ], + "parameters": { + "advertiserId": { + "description": "Required. The ID of the advertiser this ad group ad belongs to.", + "format": "int64", + "location": "path", + "pattern": "^[^/]+$", + "required": true, + "type": "string" + }, + "youtubeAdGroupAdId": { + "description": "Required. The ID of the ad group ad to fetch.", + "format": "int64", + "location": "path", + "pattern": "^[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2/advertisers/{+advertiserId}/youtubeAdGroupAds/{+youtubeAdGroupAdId}", + "response": { + "$ref": "YoutubeAdGroupAd" + }, + "scopes": [ + "https://www.googleapis.com/auth/display-video" + ] + }, + "list": { + "description": "Lists YouTube ad group ads.", + "flatPath": "v2/advertisers/{advertisersId}/youtubeAdGroupAds", + "httpMethod": "GET", + "id": "displayvideo.advertisers.youtubeAdGroupAds.list", + "parameterOrder": [ + "advertiserId" + ], + "parameters": { + "advertiserId": { + "description": "Required. The ID of the advertiser the ad groups belongs to.", + "format": "int64", + "location": "path", + "pattern": "^[^/]+$", + "required": true, + "type": "string" + }, + "filter": { + "description": "Allows filtering by custom YouTube ad group ad fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by `AND` and `OR`. Only the restrictions for * the same field can be combined by `OR`. A sequence of restrictions * implicitly uses `AND`. * A restriction has the form of `{field} {operator} {value}`. * The operator must be `EQUALS (=)`. * Supported properties: - `adGroupId` - `displayName` - `entityStatus` - `adGroupAdId` Examples: * All ad group ads under an ad group: `adGroupId=\"1234\"` and its * entityStatus is `ENTITY_STATUS_ACTIVE` or `ENTITY_STATUS_PAUSED`: `(entityStatus=\"ENTITY_STATUS_ACTIVE\" OR entityStatus=\"ENTITY_STATUS_PAUSED\") AND adGroupId=\"12345\"` The length of this field should be no more than 500 characters.", + "location": "query", + "type": "string" + }, + "orderBy": { + "description": "Field by which to sort the list. Acceptable values are: * `displayName` (default) * `entityStatus` 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": "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": "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 `ListYoutubeAdGroupAds` method. If not specified, the first page of results will be returned.", + "location": "query", + "type": "string" + } + }, + "path": "v2/advertisers/{+advertiserId}/youtubeAdGroupAds", + "response": { + "$ref": "ListYoutubeAdGroupAdsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/display-video" + ] + } + } + }, + "youtubeAdGroups": { + "methods": { + "bulkListAdGroupAssignedTargetingOptions": { + "description": "Lists assigned targeting options for multiple YouTube ad groups across targeting types.", + "flatPath": "v2/advertisers/{advertisersId}/youtubeAdGroups:bulkListAdGroupAssignedTargetingOptions", + "httpMethod": "GET", + "id": "displayvideo.advertisers.youtubeAdGroups.bulkListAdGroupAssignedTargetingOptions", + "parameterOrder": [ + "advertiserId" + ], + "parameters": { + "advertiserId": { + "description": "Required. The ID of the advertiser the line items belongs to.", + "format": "int64", + "location": "path", + "pattern": "^[^/]+$", + "required": true, + "type": "string" + }, + "filter": { + "description": "Allows filtering by assigned targeting option properties. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by the logical operator `OR` on the same field. * A restriction has the form of `{field} {operator} {value}`. * The operator must be `EQUALS (=)`. * Supported fields: - `targetingType` Examples: * AssignedTargetingOptions of targeting type TARGETING_TYPE_YOUTUBE_VIDEO or TARGETING_TYPE_YOUTUBE_CHANNEL `targetingType=\"TARGETING_TYPE_YOUTUBE_VIDEO\" OR targetingType=\"TARGETING_TYPE_YOUTUBE_CHANNEL\"` The length of this field should be no more than 500 characters.", + "location": "query", + "type": "string" + }, + "orderBy": { + "description": "Field by which to sort the list. Acceptable values are: * `youtubeAdGroupId` (default) * `assignedTargetingOption.targetingType` The default sorting order is ascending. To specify descending order for a field, a suffix \"desc\" should be added to the field name. Example: `targetingType desc`.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Requested page size. The size must be an integer between `1` and `5000`. If unspecified, the default is '5000'. Returns error code `INVALID_ARGUMENT` if an invalid value is specified.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "A token that lets the client fetch the next page of results. Typically, this is the value of next_page_token returned from the previous call to the `BulkListAdGroupAssignedTargetingOptions` method. If not specified, the first page of results will be returned.", + "location": "query", + "type": "string" + }, + "youtubeAdGroupIds": { + "description": "Required. The IDs of the youtube ad groups to list assigned targeting options for.", + "format": "int64", + "location": "query", + "repeated": true, + "type": "string" + } + }, + "path": "v2/advertisers/{+advertiserId}/youtubeAdGroups:bulkListAdGroupAssignedTargetingOptions", + "response": { + "$ref": "BulkListAdGroupAssignedTargetingOptionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/display-video" + ] + }, + "get": { + "description": "Gets a YouTube ad group.", + "flatPath": "v2/advertisers/{advertisersId}/youtubeAdGroups/{youtubeAdGroupsId}", + "httpMethod": "GET", + "id": "displayvideo.advertisers.youtubeAdGroups.get", + "parameterOrder": [ + "advertiserId", + "youtubeAdGroupId" + ], + "parameters": { + "advertiserId": { + "description": "Required. The ID of the advertiser this ad group belongs to.", + "format": "int64", + "location": "path", + "pattern": "^[^/]+$", + "required": true, + "type": "string" + }, + "youtubeAdGroupId": { + "description": "Required. The ID of the ad group to fetch.", + "format": "int64", + "location": "path", + "pattern": "^[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2/advertisers/{+advertiserId}/youtubeAdGroups/{+youtubeAdGroupId}", + "response": { + "$ref": "YoutubeAdGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/display-video" + ] + }, + "list": { + "description": "Lists YouTube ad groups.", + "flatPath": "v2/advertisers/{advertisersId}/youtubeAdGroups", + "httpMethod": "GET", + "id": "displayvideo.advertisers.youtubeAdGroups.list", + "parameterOrder": [ + "advertiserId" + ], + "parameters": { + "advertiserId": { + "description": "Required. The ID of the advertiser the ad groups belongs to.", + "format": "int64", + "location": "path", + "pattern": "^[^/]+$", + "required": true, + "type": "string" + }, + "filter": { + "description": "Allows filtering by custom YouTube ad group fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by `AND` and `OR`. Only the restrictions for * the same field can be combined by `OR`. A sequence of restrictions * implicitly uses `AND`. * A restriction has the form of `{field} {operator} {value}`. * The operator must be `EQUALS (=)`. * Supported properties: - `adGroupId` - `displayName` - `entityStatus` - `lineItemId` - `adGroupFormat` Examples: * All ad groups under an line item: `lineItemId=\"1234\"` * All `ENTITY_STATUS_ACTIVE` or `ENTITY_STATUS_PAUSED` and `YOUTUBE_AND_PARTNERS_AD_GROUP_FORMAT_IN_STREAM` ad groups under an advertiser: `(entityStatus=\"ENTITY_STATUS_ACTIVE\" OR entityStatus=\"ENTITY_STATUS_PAUSED\") AND adGroupFormat=\"YOUTUBE_AND_PARTNERS_AD_GROUP_FORMAT_IN_STREAM\"` The length of this field should be no more than 500 characters.", + "location": "query", + "type": "string" + }, + "orderBy": { + "description": "Field by which to sort the list. Acceptable values are: * `displayName` (default) * `entityStatus` 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": "Requested page size. Must be between `1` and `200`. 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": "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 `ListYoutubeAdGroups` method. If not specified, the first page of results will be returned.", + "location": "query", + "type": "string" + } + }, + "path": "v2/advertisers/{+advertiserId}/youtubeAdGroups", + "response": { + "$ref": "ListYoutubeAdGroupsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/display-video" + ] + } + }, + "resources": { + "targetingTypes": { + "resources": { + "assignedTargetingOptions": { + "methods": { + "get": { + "description": "Gets a single targeting option assigned to a YouTube ad group. Inherited targeting is not included.", + "flatPath": "v2/advertisers/{advertisersId}/youtubeAdGroups/{youtubeAdGroupsId}/targetingTypes/{targetingTypesId}/assignedTargetingOptions/{assignedTargetingOptionsId}", + "httpMethod": "GET", + "id": "displayvideo.advertisers.youtubeAdGroups.targetingTypes.assignedTargetingOptions.get", + "parameterOrder": [ + "advertiserId", + "youtubeAdGroupId", + "targetingType", + "assignedTargetingOptionId" + ], + "parameters": { + "advertiserId": { + "description": "Required. The ID of the advertiser the ad group belongs to.", + "format": "int64", + "location": "path", + "pattern": "^[^/]+$", + "required": true, + "type": "string" + }, + "assignedTargetingOptionId": { + "description": "Required. An identifier unique to the targeting type in this line item that identifies the assigned targeting option being requested.", + "location": "path", + "pattern": "^[^/]+$", + "required": true, + "type": "string" + }, + "targetingType": { + "description": "Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_SESSION_POSITION` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO`", + "enum": [ + "TARGETING_TYPE_UNSPECIFIED", + "TARGETING_TYPE_CHANNEL", + "TARGETING_TYPE_APP_CATEGORY", + "TARGETING_TYPE_APP", + "TARGETING_TYPE_URL", + "TARGETING_TYPE_DAY_AND_TIME", + "TARGETING_TYPE_AGE_RANGE", + "TARGETING_TYPE_REGIONAL_LOCATION_LIST", + "TARGETING_TYPE_PROXIMITY_LOCATION_LIST", + "TARGETING_TYPE_GENDER", + "TARGETING_TYPE_VIDEO_PLAYER_SIZE", + "TARGETING_TYPE_USER_REWARDED_CONTENT", + "TARGETING_TYPE_PARENTAL_STATUS", + "TARGETING_TYPE_CONTENT_INSTREAM_POSITION", + "TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION", + "TARGETING_TYPE_DEVICE_TYPE", + "TARGETING_TYPE_AUDIENCE_GROUP", + "TARGETING_TYPE_BROWSER", + "TARGETING_TYPE_HOUSEHOLD_INCOME", + "TARGETING_TYPE_ON_SCREEN_POSITION", + "TARGETING_TYPE_THIRD_PARTY_VERIFIER", + "TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION", + "TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION", + "TARGETING_TYPE_ENVIRONMENT", + "TARGETING_TYPE_CARRIER_AND_ISP", + "TARGETING_TYPE_OPERATING_SYSTEM", + "TARGETING_TYPE_DEVICE_MAKE_MODEL", + "TARGETING_TYPE_KEYWORD", + "TARGETING_TYPE_NEGATIVE_KEYWORD_LIST", + "TARGETING_TYPE_VIEWABILITY", + "TARGETING_TYPE_CATEGORY", + "TARGETING_TYPE_INVENTORY_SOURCE", + "TARGETING_TYPE_LANGUAGE", + "TARGETING_TYPE_AUTHORIZED_SELLER_STATUS", + "TARGETING_TYPE_GEO_REGION", + "TARGETING_TYPE_INVENTORY_SOURCE_GROUP", + "TARGETING_TYPE_EXCHANGE", + "TARGETING_TYPE_SUB_EXCHANGE", + "TARGETING_TYPE_POI", + "TARGETING_TYPE_BUSINESS_CHAIN", + "TARGETING_TYPE_CONTENT_DURATION", + "TARGETING_TYPE_CONTENT_STREAM_TYPE", + "TARGETING_TYPE_NATIVE_CONTENT_POSITION", + "TARGETING_TYPE_OMID", + "TARGETING_TYPE_AUDIO_CONTENT_TYPE", + "TARGETING_TYPE_CONTENT_GENRE", + "TARGETING_TYPE_YOUTUBE_VIDEO", + "TARGETING_TYPE_YOUTUBE_CHANNEL", + "TARGETING_TYPE_SESSION_POSITION" + ], + "enumDescriptions": [ + "Default value when type is not specified or is unknown in this version.", + "Target a channel (a custom group of related websites or apps).", + "Target an app category (for example, education or puzzle games).", + "Target a specific app (for example, Angry Birds).", + "Target a specific url (for example, quora.com).", + "Target ads during a chosen time period on a specific day.", + "Target ads to a specific age range (for example, 18-24).", + "Target ads to the specified regions on a regional location list.", + "Target ads to the specified points of interest on a proximity location list.", + "Target ads to a specific gender (for example, female or male).", + "Target a specific video player size for video ads.", + "Target user rewarded content for video ads.", + "Target ads to a specific parental status (for example, parent or not a parent).", + "Target video or audio ads in a specific content instream position (for example, pre-roll, mid-roll, or post-roll).", + "Target ads in a specific content outstream position.", + "Target ads to a specific device type (for example, tablet or connected TV).", + "Target ads to an audience or groups of audiences. Singleton field, at most one can exist on a single Lineitem at a time.", + "Target ads to specific web browsers (for example, Chrome).", + "Target ads to a specific household income range (for example, top 10%).", + "Target ads in a specific on screen position.", + "Filter web sites through third party verification (for example, IAS or DoubleVerify).", + "Filter web sites by specific digital content label ratings (for example, DL-MA: suitable only for mature audiences).", + "Filter website content by sensitive categories (for example, adult).", + "Target ads to a specific environment (for example, web or app).", + "Target ads to a specific network carrier or internet service provider (ISP) (for example, Comcast or Orange).", + "Target ads to a specific operating system (for example, macOS).", + "Target ads to a specific device make or model (for example, Roku or Samsung).", + "Target ads to a specific keyword (for example, dog or retriever).", + "Target ads to a specific negative keyword list.", + "Target ads to a specific viewability (for example, 80% viewable).", + "Target ads to a specific content category (for example, arts \u0026 entertainment).", + "Purchase impressions from specific deals and auction packages.", + "Target ads to a specific language (for example, English or Japanese).", + "Target ads to ads.txt authorized sellers.", + "Target ads to a specific regional location (for example, a city or state).", + "Purchase impressions from a group of deals and auction packages.", + "Purchase impressions from specific exchanges.", + "Purchase impressions from specific sub-exchanges.", + "Target ads around a specific point of interest, such as a notable building, a street address, or latitude/longitude coordinates.", + "Target ads around locations of a business chain within a specific geo region.", + "Target ads to a specific video content duration.", + "Target ads to a specific video content stream type.", + "Target ads to a specific native content position.", + "Target ads in an Open Measurement enabled inventory.", + "Target ads to a specific audio content type.", + "Target ads to a specific content genre.", + "Target ads to a specific YouTube video.", + "Target ads to a specific YouTube channel.", + "Target ads to a serve it in a certain position of a session. Only supported for the AdGroup of YouTube Programmatic Reservation line item." + ], + "location": "path", + "pattern": "^[^/]+$", + "required": true, + "type": "string" + }, + "youtubeAdGroupId": { + "description": "Required. The ID of the ad group the assigned targeting option belongs to.", + "format": "int64", + "location": "path", + "pattern": "^[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2/advertisers/{+advertiserId}/youtubeAdGroups/{+youtubeAdGroupId}/targetingTypes/{+targetingType}/assignedTargetingOptions/{+assignedTargetingOptionId}", + "response": { + "$ref": "AssignedTargetingOption" + }, + "scopes": [ + "https://www.googleapis.com/auth/display-video" + ] + }, + "list": { + "description": "Lists the targeting options assigned to a YouTube ad group. Inherited targeting is not included.", + "flatPath": "v2/advertisers/{advertisersId}/youtubeAdGroups/{youtubeAdGroupsId}/targetingTypes/{targetingTypesId}/assignedTargetingOptions", + "httpMethod": "GET", + "id": "displayvideo.advertisers.youtubeAdGroups.targetingTypes.assignedTargetingOptions.list", + "parameterOrder": [ + "advertiserId", + "youtubeAdGroupId", + "targetingType" + ], + "parameters": { + "advertiserId": { + "description": "Required. The ID of the advertiser the ad group belongs to.", + "format": "int64", + "location": "path", + "pattern": "^[^/]+$", + "required": true, + "type": "string" + }, + "filter": { + "description": "Allows filtering by assigned targeting option properties. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by the logical operator `OR`. * A restriction has the form of `{field} {operator} {value}`. * The operator must be `EQUALS (=)`. * Supported fields: - `assignedTargetingOptionId` Examples: * AssignedTargetingOptions with ID 1 or 2 `assignedTargetingOptionId=\"1\" OR assignedTargetingOptionId=\"2\"` The length of this field should be no more than 500 characters.", + "location": "query", + "type": "string" + }, + "orderBy": { + "description": "Field by which to sort the list. Acceptable values are: * `assignedTargetingOptionId` (default) The default sorting order is ascending. To specify descending order for a field, a suffix \"desc\" should be added to the field name. Example: `assignedTargetingOptionId desc`.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Requested page size. Must be between `1` and `5000`. 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": "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 `ListYoutubeAdGroupAssignedTargetingOptions` method. If not specified, the first page of results will be returned.", + "location": "query", + "type": "string" + }, + "targetingType": { + "description": "Required. Identifies the type of assigned targeting options to list. Supported targeting types include: * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_SESSION_POSITION` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO`", + "enum": [ + "TARGETING_TYPE_UNSPECIFIED", + "TARGETING_TYPE_CHANNEL", + "TARGETING_TYPE_APP_CATEGORY", + "TARGETING_TYPE_APP", + "TARGETING_TYPE_URL", + "TARGETING_TYPE_DAY_AND_TIME", + "TARGETING_TYPE_AGE_RANGE", + "TARGETING_TYPE_REGIONAL_LOCATION_LIST", + "TARGETING_TYPE_PROXIMITY_LOCATION_LIST", + "TARGETING_TYPE_GENDER", + "TARGETING_TYPE_VIDEO_PLAYER_SIZE", + "TARGETING_TYPE_USER_REWARDED_CONTENT", + "TARGETING_TYPE_PARENTAL_STATUS", + "TARGETING_TYPE_CONTENT_INSTREAM_POSITION", + "TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION", + "TARGETING_TYPE_DEVICE_TYPE", + "TARGETING_TYPE_AUDIENCE_GROUP", + "TARGETING_TYPE_BROWSER", + "TARGETING_TYPE_HOUSEHOLD_INCOME", + "TARGETING_TYPE_ON_SCREEN_POSITION", + "TARGETING_TYPE_THIRD_PARTY_VERIFIER", + "TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION", + "TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION", + "TARGETING_TYPE_ENVIRONMENT", + "TARGETING_TYPE_CARRIER_AND_ISP", + "TARGETING_TYPE_OPERATING_SYSTEM", + "TARGETING_TYPE_DEVICE_MAKE_MODEL", + "TARGETING_TYPE_KEYWORD", + "TARGETING_TYPE_NEGATIVE_KEYWORD_LIST", + "TARGETING_TYPE_VIEWABILITY", + "TARGETING_TYPE_CATEGORY", + "TARGETING_TYPE_INVENTORY_SOURCE", + "TARGETING_TYPE_LANGUAGE", + "TARGETING_TYPE_AUTHORIZED_SELLER_STATUS", + "TARGETING_TYPE_GEO_REGION", + "TARGETING_TYPE_INVENTORY_SOURCE_GROUP", + "TARGETING_TYPE_EXCHANGE", + "TARGETING_TYPE_SUB_EXCHANGE", + "TARGETING_TYPE_POI", + "TARGETING_TYPE_BUSINESS_CHAIN", + "TARGETING_TYPE_CONTENT_DURATION", + "TARGETING_TYPE_CONTENT_STREAM_TYPE", + "TARGETING_TYPE_NATIVE_CONTENT_POSITION", + "TARGETING_TYPE_OMID", + "TARGETING_TYPE_AUDIO_CONTENT_TYPE", + "TARGETING_TYPE_CONTENT_GENRE", + "TARGETING_TYPE_YOUTUBE_VIDEO", + "TARGETING_TYPE_YOUTUBE_CHANNEL", + "TARGETING_TYPE_SESSION_POSITION" + ], + "enumDescriptions": [ + "Default value when type is not specified or is unknown in this version.", + "Target a channel (a custom group of related websites or apps).", + "Target an app category (for example, education or puzzle games).", + "Target a specific app (for example, Angry Birds).", + "Target a specific url (for example, quora.com).", + "Target ads during a chosen time period on a specific day.", + "Target ads to a specific age range (for example, 18-24).", + "Target ads to the specified regions on a regional location list.", + "Target ads to the specified points of interest on a proximity location list.", + "Target ads to a specific gender (for example, female or male).", + "Target a specific video player size for video ads.", + "Target user rewarded content for video ads.", + "Target ads to a specific parental status (for example, parent or not a parent).", + "Target video or audio ads in a specific content instream position (for example, pre-roll, mid-roll, or post-roll).", + "Target ads in a specific content outstream position.", + "Target ads to a specific device type (for example, tablet or connected TV).", + "Target ads to an audience or groups of audiences. Singleton field, at most one can exist on a single Lineitem at a time.", + "Target ads to specific web browsers (for example, Chrome).", + "Target ads to a specific household income range (for example, top 10%).", + "Target ads in a specific on screen position.", + "Filter web sites through third party verification (for example, IAS or DoubleVerify).", + "Filter web sites by specific digital content label ratings (for example, DL-MA: suitable only for mature audiences).", + "Filter website content by sensitive categories (for example, adult).", + "Target ads to a specific environment (for example, web or app).", + "Target ads to a specific network carrier or internet service provider (ISP) (for example, Comcast or Orange).", + "Target ads to a specific operating system (for example, macOS).", + "Target ads to a specific device make or model (for example, Roku or Samsung).", + "Target ads to a specific keyword (for example, dog or retriever).", + "Target ads to a specific negative keyword list.", + "Target ads to a specific viewability (for example, 80% viewable).", + "Target ads to a specific content category (for example, arts \u0026 entertainment).", + "Purchase impressions from specific deals and auction packages.", + "Target ads to a specific language (for example, English or Japanese).", + "Target ads to ads.txt authorized sellers.", + "Target ads to a specific regional location (for example, a city or state).", + "Purchase impressions from a group of deals and auction packages.", + "Purchase impressions from specific exchanges.", + "Purchase impressions from specific sub-exchanges.", + "Target ads around a specific point of interest, such as a notable building, a street address, or latitude/longitude coordinates.", + "Target ads around locations of a business chain within a specific geo region.", + "Target ads to a specific video content duration.", + "Target ads to a specific video content stream type.", + "Target ads to a specific native content position.", + "Target ads in an Open Measurement enabled inventory.", + "Target ads to a specific audio content type.", + "Target ads to a specific content genre.", + "Target ads to a specific YouTube video.", + "Target ads to a specific YouTube channel.", + "Target ads to a serve it in a certain position of a session. Only supported for the AdGroup of YouTube Programmatic Reservation line item." + ], + "location": "path", + "pattern": "^[^/]+$", + "required": true, + "type": "string" + }, + "youtubeAdGroupId": { + "description": "Required. The ID of the ad group to list assigned targeting options for.", + "format": "int64", + "location": "path", + "pattern": "^[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2/advertisers/{+advertiserId}/youtubeAdGroups/{+youtubeAdGroupId}/targetingTypes/{+targetingType}/assignedTargetingOptions", + "response": { + "$ref": "ListYoutubeAdGroupAssignedTargetingOptionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/display-video" + ] + } + } + } + } + } + } } } }, @@ -7346,7 +7985,10 @@ "TARGETING_TYPE_NATIVE_CONTENT_POSITION", "TARGETING_TYPE_OMID", "TARGETING_TYPE_AUDIO_CONTENT_TYPE", - "TARGETING_TYPE_CONTENT_GENRE" + "TARGETING_TYPE_CONTENT_GENRE", + "TARGETING_TYPE_YOUTUBE_VIDEO", + "TARGETING_TYPE_YOUTUBE_CHANNEL", + "TARGETING_TYPE_SESSION_POSITION" ], "enumDescriptions": [ "Default value when type is not specified or is unknown in this version.", @@ -7394,7 +8036,10 @@ "Target ads to a specific native content position.", "Target ads in an Open Measurement enabled inventory.", "Target ads to a specific audio content type.", - "Target ads to a specific content genre." + "Target ads to a specific content genre.", + "Target ads to a specific YouTube video.", + "Target ads to a specific YouTube channel.", + "Target ads to a serve it in a certain position of a session. Only supported for the AdGroup of YouTube Programmatic Reservation line item." ], "location": "path", "pattern": "^[^/]+$", @@ -7487,7 +8132,10 @@ "TARGETING_TYPE_NATIVE_CONTENT_POSITION", "TARGETING_TYPE_OMID", "TARGETING_TYPE_AUDIO_CONTENT_TYPE", - "TARGETING_TYPE_CONTENT_GENRE" + "TARGETING_TYPE_CONTENT_GENRE", + "TARGETING_TYPE_YOUTUBE_VIDEO", + "TARGETING_TYPE_YOUTUBE_CHANNEL", + "TARGETING_TYPE_SESSION_POSITION" ], "enumDescriptions": [ "Default value when type is not specified or is unknown in this version.", @@ -7535,7 +8183,10 @@ "Target ads to a specific native content position.", "Target ads in an Open Measurement enabled inventory.", "Target ads to a specific audio content type.", - "Target ads to a specific content genre." + "Target ads to a specific content genre.", + "Target ads to a specific YouTube video.", + "Target ads to a specific YouTube channel.", + "Target ads to a serve it in a certain position of a session. Only supported for the AdGroup of YouTube Programmatic Reservation line item." ], "location": "path", "pattern": "^[^/]+$", @@ -7625,7 +8276,10 @@ "TARGETING_TYPE_NATIVE_CONTENT_POSITION", "TARGETING_TYPE_OMID", "TARGETING_TYPE_AUDIO_CONTENT_TYPE", - "TARGETING_TYPE_CONTENT_GENRE" + "TARGETING_TYPE_CONTENT_GENRE", + "TARGETING_TYPE_YOUTUBE_VIDEO", + "TARGETING_TYPE_YOUTUBE_CHANNEL", + "TARGETING_TYPE_SESSION_POSITION" ], "enumDescriptions": [ "Default value when type is not specified or is unknown in this version.", @@ -7673,7 +8327,10 @@ "Target ads to a specific native content position.", "Target ads in an Open Measurement enabled inventory.", "Target ads to a specific audio content type.", - "Target ads to a specific content genre." + "Target ads to a specific content genre.", + "Target ads to a specific YouTube video.", + "Target ads to a specific YouTube channel.", + "Target ads to a serve it in a certain position of a session. Only supported for the AdGroup of YouTube Programmatic Reservation line item." ], "location": "path", "pattern": "^[^/]+$", @@ -7776,7 +8433,10 @@ "TARGETING_TYPE_NATIVE_CONTENT_POSITION", "TARGETING_TYPE_OMID", "TARGETING_TYPE_AUDIO_CONTENT_TYPE", - "TARGETING_TYPE_CONTENT_GENRE" + "TARGETING_TYPE_CONTENT_GENRE", + "TARGETING_TYPE_YOUTUBE_VIDEO", + "TARGETING_TYPE_YOUTUBE_CHANNEL", + "TARGETING_TYPE_SESSION_POSITION" ], "enumDescriptions": [ "Default value when type is not specified or is unknown in this version.", @@ -7824,7 +8484,10 @@ "Target ads to a specific native content position.", "Target ads in an Open Measurement enabled inventory.", "Target ads to a specific audio content type.", - "Target ads to a specific content genre." + "Target ads to a specific content genre.", + "Target ads to a specific YouTube video.", + "Target ads to a specific YouTube channel.", + "Target ads to a serve it in a certain position of a session. Only supported for the AdGroup of YouTube Programmatic Reservation line item." ], "location": "path", "pattern": "^[^/]+$", @@ -7975,7 +8638,10 @@ "TARGETING_TYPE_NATIVE_CONTENT_POSITION", "TARGETING_TYPE_OMID", "TARGETING_TYPE_AUDIO_CONTENT_TYPE", - "TARGETING_TYPE_CONTENT_GENRE" + "TARGETING_TYPE_CONTENT_GENRE", + "TARGETING_TYPE_YOUTUBE_VIDEO", + "TARGETING_TYPE_YOUTUBE_CHANNEL", + "TARGETING_TYPE_SESSION_POSITION" ], "enumDescriptions": [ "Default value when type is not specified or is unknown in this version.", @@ -8023,7 +8689,10 @@ "Target ads to a specific native content position.", "Target ads in an Open Measurement enabled inventory.", "Target ads to a specific audio content type.", - "Target ads to a specific content genre." + "Target ads to a specific content genre.", + "Target ads to a specific YouTube video.", + "Target ads to a specific YouTube channel.", + "Target ads to a serve it in a certain position of a session. Only supported for the AdGroup of YouTube Programmatic Reservation line item." ], "location": "path", "pattern": "^[^/]+$", @@ -8123,7 +8792,10 @@ "TARGETING_TYPE_NATIVE_CONTENT_POSITION", "TARGETING_TYPE_OMID", "TARGETING_TYPE_AUDIO_CONTENT_TYPE", - "TARGETING_TYPE_CONTENT_GENRE" + "TARGETING_TYPE_CONTENT_GENRE", + "TARGETING_TYPE_YOUTUBE_VIDEO", + "TARGETING_TYPE_YOUTUBE_CHANNEL", + "TARGETING_TYPE_SESSION_POSITION" ], "enumDescriptions": [ "Default value when type is not specified or is unknown in this version.", @@ -8171,7 +8843,10 @@ "Target ads to a specific native content position.", "Target ads in an Open Measurement enabled inventory.", "Target ads to a specific audio content type.", - "Target ads to a specific content genre." + "Target ads to a specific content genre.", + "Target ads to a specific YouTube video.", + "Target ads to a specific YouTube channel.", + "Target ads to a serve it in a certain position of a session. Only supported for the AdGroup of YouTube Programmatic Reservation line item." ], "location": "path", "pattern": "^[^/]+$", @@ -8244,7 +8919,10 @@ "TARGETING_TYPE_NATIVE_CONTENT_POSITION", "TARGETING_TYPE_OMID", "TARGETING_TYPE_AUDIO_CONTENT_TYPE", - "TARGETING_TYPE_CONTENT_GENRE" + "TARGETING_TYPE_CONTENT_GENRE", + "TARGETING_TYPE_YOUTUBE_VIDEO", + "TARGETING_TYPE_YOUTUBE_CHANNEL", + "TARGETING_TYPE_SESSION_POSITION" ], "enumDescriptions": [ "Default value when type is not specified or is unknown in this version.", @@ -8292,7 +8970,10 @@ "Target ads to a specific native content position.", "Target ads in an Open Measurement enabled inventory.", "Target ads to a specific audio content type.", - "Target ads to a specific content genre." + "Target ads to a specific content genre.", + "Target ads to a specific YouTube video.", + "Target ads to a specific YouTube channel.", + "Target ads to a serve it in a certain position of a session. Only supported for the AdGroup of YouTube Programmatic Reservation line item." ], "location": "path", "pattern": "^[^/]+$", @@ -8491,7 +9172,7 @@ } } }, - "revision": "20230105", + "revision": "20230119", "rootUrl": "https://displayvideo.googleapis.com/", "schemas": { "ActivateManualTriggerRequest": { @@ -8615,6 +9296,35 @@ }, "type": "object" }, + "AdUrl": { + "description": "Additional URLs related to the ad, including beacons.", + "id": "AdUrl", + "properties": { + "type": { + "description": "The type of the AD url.", + "enum": [ + "AD_URL_TYPE_UNSPECIFIED", + "AD_URL_TYPE_BEACON_IMPRESSION", + "AD_URL_TYPE_BEACON_EXPANDABLE_DCM_IMPRESSION", + "AD_URL_TYPE_BEACON_CLICK", + "AD_URL_TYPE_BEACON_SKIP" + ], + "enumDescriptions": [ + "Unknown or unspecified.", + "A 1x1 tracking pixel to ping when an impression of a creative is delivered.", + "Expandable DCM impression beacon. At serving time, it is expanded to several beacons.", + "Tracking url to ping when the click event is triggered.", + "Tracking url to ping when the skip event is triggered." + ], + "type": "string" + }, + "url": { + "description": "The url value of the ad url.", + "type": "string" + } + }, + "type": "object" + }, "Adloox": { "description": "Details of Adloox settings.", "id": "Adloox", @@ -9334,6 +10044,10 @@ "$ref": "SensitiveCategoryAssignedTargetingOptionDetails", "description": "Sensitive category details. This field will be populated when the targeting_type is `TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION`. Sensitive categories are targeting exclusions. Advertiser level sensitive category exclusions, if set, are always applied in serving (even though they aren't visible in resource settings). Resource settings can exclude sensitive categories in addition to advertiser exclusions, but can't override them." }, + "sessionPositionDetails": { + "$ref": "SessionPositionAssignedTargetingOptionDetails", + "description": "Session position details. This field will be populated when the targeting_type is `TARGETING_TYPE_SESSION_POSITION`." + }, "subExchangeDetails": { "$ref": "SubExchangeAssignedTargetingOptionDetails", "description": "Sub-exchange details. This field will be populated when the targeting_type is `TARGETING_TYPE_SUB_EXCHANGE`." @@ -9386,7 +10100,10 @@ "TARGETING_TYPE_NATIVE_CONTENT_POSITION", "TARGETING_TYPE_OMID", "TARGETING_TYPE_AUDIO_CONTENT_TYPE", - "TARGETING_TYPE_CONTENT_GENRE" + "TARGETING_TYPE_CONTENT_GENRE", + "TARGETING_TYPE_YOUTUBE_VIDEO", + "TARGETING_TYPE_YOUTUBE_CHANNEL", + "TARGETING_TYPE_SESSION_POSITION" ], "enumDescriptions": [ "Default value when type is not specified or is unknown in this version.", @@ -9434,7 +10151,10 @@ "Target ads to a specific native content position.", "Target ads in an Open Measurement enabled inventory.", "Target ads to a specific audio content type.", - "Target ads to a specific content genre." + "Target ads to a specific content genre.", + "Target ads to a specific YouTube video.", + "Target ads to a specific YouTube channel.", + "Target ads to a serve it in a certain position of a session. Only supported for the AdGroup of YouTube Programmatic Reservation line item." ], "readOnly": true, "type": "string" @@ -9458,6 +10178,14 @@ "viewabilityDetails": { "$ref": "ViewabilityAssignedTargetingOptionDetails", "description": "Viewability details. This field will be populated when the targeting_type is `TARGETING_TYPE_VIEWABILITY`. You can only target one viewability option per resource." + }, + "youtubeChannelDetails": { + "$ref": "YoutubeChannelAssignedTargetingOptionDetails", + "description": "YouTube channel details. This field will be populated when the targeting_type is `TARGETING_TYPE_YOUTUBE_CHANNEL`." + }, + "youtubeVideoDetails": { + "$ref": "YoutubeVideoAssignedTargetingOptionDetails", + "description": "YouTube video details. This field will be populated when the targeting_type is `TARGETING_TYPE_YOUTUBE_VIDEO`." } }, "type": "object" @@ -9550,6 +10278,29 @@ }, "type": "object" }, + "AudioAd": { + "description": "The details for audio ad.", + "id": "AudioAd", + "properties": { + "displayUrl": { + "description": "The webpage address that appears with the ad.", + "type": "string" + }, + "finalUrl": { + "description": "The URL address of the webpage that people reach after they click the ad.", + "type": "string" + }, + "trackingUrl": { + "description": "The URL address which is loaded in background for tracking purpose.", + "type": "string" + }, + "video": { + "$ref": "YoutubeVideoDetails", + "description": "The YouTube video of the ad." + } + }, + "type": "object" + }, "AudioContentTypeAssignedTargetingOptionDetails": { "description": "Details for audio content type assigned targeting option. This will be populated in the audio_content_type_details field when targeting_type is `TARGETING_TYPE_AUDIO_CONTENT_TYPE`. Explicitly targeting all options is not supported. Remove all audio content type targeting options to achieve this effect.", "id": "AudioContentTypeAssignedTargetingOptionDetails", @@ -10118,6 +10869,23 @@ }, "type": "object" }, + "BulkListAdGroupAssignedTargetingOptionsResponse": { + "id": "BulkListAdGroupAssignedTargetingOptionsResponse", + "properties": { + "nextPageToken": { + "description": "A token identifying the next page of results. This value should be specified as the pageToken in a subsequent call to `BulkListAdGroupAssignedTargetingOptions` to fetch the next page of results. This token will be absent if there are no more youtube_ad_group_assigned_targeting_options to return.", + "type": "string" + }, + "youtubeAdGroupAssignedTargetingOptions": { + "description": "The list of wrapper objects, each providing an assigned targeting option and the youtube ad group it is assigned to. This list will be absent if empty.", + "items": { + "$ref": "YoutubeAdGroupAssignedTargetingOption" + }, + "type": "array" + } + }, + "type": "object" + }, "BulkListAdvertiserAssignedTargetingOptionsResponse": { "id": "BulkListAdvertiserAssignedTargetingOptionsResponse", "properties": { @@ -10250,6 +11018,17 @@ }, "type": "object" }, + "BumperAd": { + "description": "Ad details for BumperAd.", + "id": "BumperAd", + "properties": { + "commonInStreamAttribute": { + "$ref": "CommonInStreamAttribute", + "description": "Common attributes data model." + } + }, + "type": "object" + }, "BusinessChainAssignedTargetingOptionDetails": { "description": "Details for assigned Business chain targeting option. This will be populated in the details field of an AssignedTargetingOption when targeting_type is `TARGETING_TYPE_BUSINESS_CHAIN`.", "id": "BusinessChainAssignedTargetingOptionDetails", @@ -10814,6 +11593,41 @@ }, "type": "object" }, + "CommonInStreamAttribute": { + "description": "The common attributes for InStreamAd, NonSkippableAd and BumperAd.", + "id": "CommonInStreamAttribute", + "properties": { + "actionButtonLabel": { + "description": "The text on the call-to-action button.", + "type": "string" + }, + "actionHeadline": { + "description": "The headline of the call-to-action banner.", + "type": "string" + }, + "companionBanner": { + "$ref": "ImageAsset", + "description": "The image which shows next to the video Ad." + }, + "displayUrl": { + "description": "The webpage address that appears with the ad.", + "type": "string" + }, + "finalUrl": { + "description": "The URL address of the webpage that people reach after they click the ad.", + "type": "string" + }, + "trackingUrl": { + "description": "The URL address which is loaded in background for tracking purpose.", + "type": "string" + }, + "video": { + "$ref": "YoutubeVideoDetails", + "description": "The YouTube video of the ad." + } + }, + "type": "object" + }, "ContactInfo": { "description": "Contact information defining a Customer Match audience member.", "id": "ContactInfo", @@ -11271,7 +12085,10 @@ "TARGETING_TYPE_NATIVE_CONTENT_POSITION", "TARGETING_TYPE_OMID", "TARGETING_TYPE_AUDIO_CONTENT_TYPE", - "TARGETING_TYPE_CONTENT_GENRE" + "TARGETING_TYPE_CONTENT_GENRE", + "TARGETING_TYPE_YOUTUBE_VIDEO", + "TARGETING_TYPE_YOUTUBE_CHANNEL", + "TARGETING_TYPE_SESSION_POSITION" ], "enumDescriptions": [ "Default value when type is not specified or is unknown in this version.", @@ -11319,7 +12136,10 @@ "Target ads to a specific native content position.", "Target ads in an Open Measurement enabled inventory.", "Target ads to a specific audio content type.", - "Target ads to a specific content genre." + "Target ads to a specific content genre.", + "Target ads to a specific YouTube video.", + "Target ads to a specific YouTube channel.", + "Target ads to a serve it in a certain position of a session. Only supported for the AdGroup of YouTube Programmatic Reservation line item." ], "type": "string" } @@ -12002,6 +12822,37 @@ }, "type": "object" }, + "CustomLabel": { + "description": "The key and value of a custom label.", + "id": "CustomLabel", + "properties": { + "key": { + "description": "The key of the label.", + "enum": [ + "CUSTOM_LABEL_KEY_UNSPECIFIED", + "CUSTOM_LABEL_KEY_0", + "CUSTOM_LABEL_KEY_1", + "CUSTOM_LABEL_KEY_2", + "CUSTOM_LABEL_KEY_3", + "CUSTOM_LABEL_KEY_4" + ], + "enumDescriptions": [ + "Not specified or unknown.", + "index 0.", + "index 1.", + "index 2.", + "index 3.", + "index 4." + ], + "type": "string" + }, + "value": { + "description": "The value of the label.", + "type": "string" + } + }, + "type": "object" + }, "CustomList": { "description": "Describes a custom list entity, such as a custom affinity or custom intent audience list.", "id": "CustomList", @@ -12208,7 +13059,10 @@ "TARGETING_TYPE_NATIVE_CONTENT_POSITION", "TARGETING_TYPE_OMID", "TARGETING_TYPE_AUDIO_CONTENT_TYPE", - "TARGETING_TYPE_CONTENT_GENRE" + "TARGETING_TYPE_CONTENT_GENRE", + "TARGETING_TYPE_YOUTUBE_VIDEO", + "TARGETING_TYPE_YOUTUBE_CHANNEL", + "TARGETING_TYPE_SESSION_POSITION" ], "enumDescriptions": [ "Default value when type is not specified or is unknown in this version.", @@ -12256,7 +13110,10 @@ "Target ads to a specific native content position.", "Target ads in an Open Measurement enabled inventory.", "Target ads to a specific audio content type.", - "Target ads to a specific content genre." + "Target ads to a specific content genre.", + "Target ads to a specific YouTube video.", + "Target ads to a specific YouTube channel.", + "Target ads to a serve it in a certain position of a session. Only supported for the AdGroup of YouTube Programmatic Reservation line item." ], "type": "string" } @@ -12428,6 +13285,18 @@ }, "type": "object" }, + "DisplayVideoSourceAd": { + "description": "The ad of which source is DV360 creative.", + "id": "DisplayVideoSourceAd", + "properties": { + "creativeId": { + "description": "The ID of the source creative.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, "DoubleVerify": { "description": "Details of DoubleVerify settings.", "id": "DoubleVerify", @@ -14133,7 +15002,8 @@ "LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_SIMPLE", "LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_NON_SKIPPABLE_OVER_THE_TOP", "LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_REACH_OVER_THE_TOP", - "LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_SIMPLE_OVER_THE_TOP" + "LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_SIMPLE_OVER_THE_TOP", + "LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_TARGET_FREQUENCY" ], "enumDescriptions": [ "Type value is not specified or is unknown in this version. Line items of this type and their targeting cannot be created or updated using the API.", @@ -14153,7 +15023,8 @@ "Default YouTube video ads. Line items of this type and their targeting cannot be created or updated using the API.", "Connected TV youTube video ads (up to 15 seconds) that cannot be skipped. Line items of this type and their targeting cannot be created or updated using the API.", "Connected TV youTube video ads that optimize reaching more unique users at lower cost. May include bumper ads, skippable in-stream ads, or a mix of types. Line items of this type and their targeting cannot be created or updated using the API.", - "Connected TV default YouTube video ads. Only include in-stream ad-format. Line items of this type and their targeting cannot be created or updated using the API." + "Connected TV default YouTube video ads. Only include in-stream ad-format. Line items of this type and their targeting cannot be created or updated using the API.", + "The goal of this line item type is to show the YouTube ads target number of times to the same person in a certain period of time. Line items of this type and their targeting cannot be created or updated using the API." ], "type": "string" }, @@ -14815,6 +15686,44 @@ }, "type": "object" }, + "ImageAsset": { + "description": "The meta data of an image asset.", + "id": "ImageAsset", + "properties": { + "fileSize": { + "description": "File size of the image asset in bytes.", + "format": "int64", + "type": "string" + }, + "fullSize": { + "$ref": "Dimensions", + "description": "Metadata for this image at its original size." + }, + "mimeType": { + "description": "MIME type of the image asset.", + "type": "string" + } + }, + "type": "object" + }, + "InStreamAd": { + "description": "Ad details for InStreamAd", + "id": "InStreamAd", + "properties": { + "commonInStreamAttribute": { + "$ref": "CommonInStreamAttribute", + "description": "Common attributes data model." + }, + "customParameters": { + "additionalProperties": { + "type": "string" + }, + "description": "The custom parameters to pass custom values to tracking url template.", + "type": "object" + } + }, + "type": "object" + }, "InsertionOrder": { "description": "A single insertion order.", "id": "InsertionOrder", @@ -16015,7 +16924,8 @@ "LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_SIMPLE", "LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_NON_SKIPPABLE_OVER_THE_TOP", "LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_REACH_OVER_THE_TOP", - "LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_SIMPLE_OVER_THE_TOP" + "LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_SIMPLE_OVER_THE_TOP", + "LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_TARGET_FREQUENCY" ], "enumDescriptions": [ "Type value is not specified or is unknown in this version. Line items of this type and their targeting cannot be created or updated using the API.", @@ -16035,7 +16945,8 @@ "Default YouTube video ads. Line items of this type and their targeting cannot be created or updated using the API.", "Connected TV youTube video ads (up to 15 seconds) that cannot be skipped. Line items of this type and their targeting cannot be created or updated using the API.", "Connected TV youTube video ads that optimize reaching more unique users at lower cost. May include bumper ads, skippable in-stream ads, or a mix of types. Line items of this type and their targeting cannot be created or updated using the API.", - "Connected TV default YouTube video ads. Only include in-stream ad-format. Line items of this type and their targeting cannot be created or updated using the API." + "Connected TV default YouTube video ads. Only include in-stream ad-format. Line items of this type and their targeting cannot be created or updated using the API.", + "The goal of this line item type is to show the YouTube ads target number of times to the same person in a certain period of time. Line items of this type and their targeting cannot be created or updated using the API." ], "type": "string" }, @@ -16758,6 +17669,59 @@ }, "type": "object" }, + "ListYoutubeAdGroupAdsResponse": { + "description": "Response message for YoutubeAdGroupAdService.ListYoutubeAdGroupAds.", + "id": "ListYoutubeAdGroupAdsResponse", + "properties": { + "nextPageToken": { + "description": "A token to retrieve the next page of results. Pass this value in the page_token field in the subsequent call to `ListYoutubeAdGroupAds` method to retrieve the next page of results.", + "type": "string" + }, + "youtubeAdGroupAds": { + "description": "The list of ad group ads. This list will be absent if empty.", + "items": { + "$ref": "YoutubeAdGroupAd" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListYoutubeAdGroupAssignedTargetingOptionsResponse": { + "description": "Response message for ListYoutubeAdGroupAssignedTargetingOptions.", + "id": "ListYoutubeAdGroupAssignedTargetingOptionsResponse", + "properties": { + "assignedTargetingOptions": { + "description": "The list of assigned targeting options. This list will be absent if empty.", + "items": { + "$ref": "AssignedTargetingOption" + }, + "type": "array" + }, + "nextPageToken": { + "description": "A token identifying the next page of results. This value should be specified as the pageToken in a subsequent ListYoutubeAdGroupAssignedTargetingOptionsRequest to fetch the next page of results. This token will be absent if there are no more assigned_targeting_options to return.", + "type": "string" + } + }, + "type": "object" + }, + "ListYoutubeAdGroupsResponse": { + "id": "ListYoutubeAdGroupsResponse", + "properties": { + "nextPageToken": { + "description": "A token to retrieve the next page of results. Pass this value in the page_token field in the subsequent call to `ListYoutubeAdGroups` method to retrieve the next page of results.", + "type": "string" + }, + "youtubeAdGroups": { + "description": "The list of ad groups. This list will be absent if empty.", + "items": { + "$ref": "YoutubeAdGroup" + }, + "type": "array" + } + }, + "type": "object" + }, "LocationList": { "description": "A list of locations used for targeting.", "id": "LocationList", @@ -16879,6 +17843,72 @@ }, "type": "object" }, + "MastheadAd": { + "description": "The details for masthead ad.", + "id": "MastheadAd", + "properties": { + "autoplayVideoDuration": { + "description": "Video will autoplay for certain period of time.", + "format": "google-duration", + "type": "string" + }, + "autoplayVideoStartMillisecond": { + "description": "Video will start to play after certain period of time in millisecond.", + "format": "int64", + "type": "string" + }, + "callToActionButtonLabel": { + "description": "The text on the call-to-action button.", + "type": "string" + }, + "callToActionFinalUrl": { + "description": "The destination URL for the call-to-action button.", + "type": "string" + }, + "callToActionTrackingUrl": { + "description": "The tracking URL for the call-to-action button.", + "type": "string" + }, + "companionYoutubeVideos": { + "description": "The videos (up to 2) that appear next to the Masthead ad on desktop.", + "items": { + "$ref": "YoutubeVideoDetails" + }, + "type": "array" + }, + "description": { + "description": "The description of the ad.", + "type": "string" + }, + "headline": { + "description": "The headline of the ad.", + "type": "string" + }, + "showChannelArt": { + "description": "Whether to show a background or banner that appears at the top of a YouTube page.", + "type": "boolean" + }, + "video": { + "$ref": "YoutubeVideoDetails", + "description": "The YouTube video of the ad." + }, + "videoAspectRatio": { + "description": "Aspect ratio of the autoplaying YouTube video on the Masthead.", + "enum": [ + "VIDEO_ASPECT_RATIO_UNSPECIFIED", + "VIDEO_ASPECT_RATIO_WIDESCREEN", + "VIDEO_ASPECT_RATIO_FIXED_16_9" + ], + "enumDescriptions": [ + "Not specified or unknown.", + "The video is stretched and the top and bottom are cropped.", + "The video uses a fixed 16:9 aspect ratio." + ], + "type": "string" + } + }, + "type": "object" + }, "MaximizeSpendBidStrategy": { "description": "A strategy that automatically adjusts the bid to optimize a specified performance goal while spending the full budget.", "id": "MaximizeSpendBidStrategy", @@ -17127,6 +18157,24 @@ }, "type": "object" }, + "NonSkippableAd": { + "description": "Ad details for NonSkippableAd", + "id": "NonSkippableAd", + "properties": { + "commonInStreamAttribute": { + "$ref": "CommonInStreamAttribute", + "description": "Common attributes data model." + }, + "customParameters": { + "additionalProperties": { + "type": "string" + }, + "description": "The custom parameters to pass custom values to tracking url template.", + "type": "object" + } + }, + "type": "object" + }, "ObaIcon": { "description": "OBA Icon for a Creative", "id": "ObaIcon", @@ -17997,6 +19045,55 @@ }, "type": "object" }, + "ProductFeedData": { + "description": "The details of product feed.", + "id": "ProductFeedData", + "properties": { + "isFeedDisabled": { + "description": "True if opt out of showing products.", + "type": "boolean" + }, + "productMatchDimensions": { + "description": "A list of dimensions which are used to match products.", + "items": { + "$ref": "ProductMatchDimension" + }, + "type": "array" + }, + "productMatchType": { + "description": "The type of the way to select the products.", + "enum": [ + "PRODUCT_MATCH_TYPE_UNSPECIFIED", + "PRODUCT_MATCH_TYPE_ALL_PRODUCTS", + "PRODUCT_MATCH_TYPE_SPECIFIC_PRODUCTS", + "PRODUCT_MATCH_TYPE_CUSTOM_LABEL" + ], + "enumDescriptions": [ + "Not specified or unknown.", + "All the products are matched.", + "Specific products are selected.", + "Match products by their custom labels." + ], + "type": "string" + } + }, + "type": "object" + }, + "ProductMatchDimension": { + "description": "The dimension which are used to match products.", + "id": "ProductMatchDimension", + "properties": { + "customLabel": { + "$ref": "CustomLabel", + "description": "The custom label to match all the products with the label." + }, + "productOfferId": { + "description": "The ID of the product offer to match the product with the same offer ID.", + "type": "string" + } + }, + "type": "object" + }, "ProximityLocationListAssignedTargetingOptionDetails": { "description": "Targeting details for proximity location list. This will be populated in the details field of an AssignedTargetingOption when targeting_type is `TARGETING_TYPE_PROXIMITY_LOCATION_LIST`.", "id": "ProximityLocationListAssignedTargetingOptionDetails", @@ -18545,6 +19642,25 @@ }, "type": "object" }, + "SessionPositionAssignedTargetingOptionDetails": { + "description": "Details for session position assigned targeting option. This will be populated in the session_position_details field when targeting_type is `TARGETING_TYPE_SESSION_POSITION`.", + "id": "SessionPositionAssignedTargetingOptionDetails", + "properties": { + "sessionPosition": { + "description": "The position where the ad will show in a session.", + "enum": [ + "SESSION_POSITION_UNSPECIFIED", + "SESSION_POSITION_FIRST_IMPRESSION" + ], + "enumDescriptions": [ + "This is a placeholder, does not indicate any positions.", + "The first impression of the session." + ], + "type": "string" + } + }, + "type": "object" + }, "Site": { "description": "A single site. Sites are apps or websites belonging to a channel.", "id": "Site", @@ -18611,6 +19727,45 @@ }, "type": "object" }, + "TargetFrequency": { + "description": "Setting that controls the average number of times the ads will show to the same person over a certain period of time.", + "id": "TargetFrequency", + "properties": { + "targetCount": { + "description": "The target number of times, on average, the ads will be shown to the same person in the timespan dictated by time_unit and time_unit_count.", + "format": "int64", + "type": "string" + }, + "timeUnit": { + "description": "The unit of time in which the target frequency will be applied. The following time unit is applicable: * `TIME_UNIT_WEEKS`", + "enum": [ + "TIME_UNIT_UNSPECIFIED", + "TIME_UNIT_LIFETIME", + "TIME_UNIT_MONTHS", + "TIME_UNIT_WEEKS", + "TIME_UNIT_DAYS", + "TIME_UNIT_HOURS", + "TIME_UNIT_MINUTES" + ], + "enumDescriptions": [ + "Time unit value is not specified or is unknown in this version.", + "The frequency cap will be applied to the whole life time of the line item.", + "The frequency cap will be applied to a number of months.", + "The frequency cap will be applied to a number of weeks.", + "The frequency cap will be applied to a number of days.", + "The frequency cap will be applied to a number of hours.", + "The frequency cap will be applied to a number of minutes." + ], + "type": "string" + }, + "timeUnitCount": { + "description": "The number of time_unit the target frequency will last. The following restrictions apply based on the value of time_unit: * `TIME_UNIT_WEEKS` - must be 1", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, "TargetingExpansionConfig": { "description": "Settings that control the targeting expansion of the line item. Targeting expansion allows the line item to reach a larger audience based on the original audience list and the targeting expansion level. Beginning November 7, 2022, these settings may represent the [optimized targeting feature](//support.google.com/displayvideo/answer/12060859) in place of targeting expansion. This feature will be rolled out to all partners by November 9, 2022.", "id": "TargetingExpansionConfig", @@ -18826,7 +19981,10 @@ "TARGETING_TYPE_NATIVE_CONTENT_POSITION", "TARGETING_TYPE_OMID", "TARGETING_TYPE_AUDIO_CONTENT_TYPE", - "TARGETING_TYPE_CONTENT_GENRE" + "TARGETING_TYPE_CONTENT_GENRE", + "TARGETING_TYPE_YOUTUBE_VIDEO", + "TARGETING_TYPE_YOUTUBE_CHANNEL", + "TARGETING_TYPE_SESSION_POSITION" ], "enumDescriptions": [ "Default value when type is not specified or is unknown in this version.", @@ -18874,7 +20032,10 @@ "Target ads to a specific native content position.", "Target ads in an Open Measurement enabled inventory.", "Target ads to a specific audio content type.", - "Target ads to a specific content genre." + "Target ads to a specific content genre.", + "Target ads to a specific YouTube video.", + "Target ads to a specific YouTube channel.", + "Target ads to a serve it in a certain position of a session. Only supported for the AdGroup of YouTube Programmatic Reservation line item." ], "readOnly": true, "type": "string" @@ -19313,6 +20474,123 @@ }, "type": "object" }, + "VideoDiscoveryAd": { + "description": "The details for video discovery ad.", + "id": "VideoDiscoveryAd", + "properties": { + "description1": { + "description": "First text line for the ad.", + "type": "string" + }, + "description2": { + "description": "Second text line for the ad.", + "type": "string" + }, + "headline": { + "description": "The headline of the video discovery ad.", + "type": "string" + }, + "thumbnail": { + "description": "Thumbnail image to use in the ad.", + "enum": [ + "THUMBNAIL_UNSPECIFIED", + "THUMBNAIL_DEFAULT", + "THUMBNAIL_1", + "THUMBNAIL_2", + "THUMBNAIL_3" + ], + "enumDescriptions": [ + "Unknown or unspecified.", + "The default thumbnail, can be auto-generated or user-uploaded.", + "Thumbnail 1, generated from the video.", + "Thumbnail 2, generated from the video.", + "Thumbnail 3, generated from the video." + ], + "type": "string" + }, + "video": { + "$ref": "YoutubeVideoDetails", + "description": "The YouTube video which the ad wants to promote." + } + }, + "type": "object" + }, + "VideoPerformanceAd": { + "description": "The details for video performance ad.", + "id": "VideoPerformanceAd", + "properties": { + "actionButtonLabels": { + "description": "The list of text assets which show on the call-to-action button.", + "items": { + "type": "string" + }, + "type": "array" + }, + "companionBanners": { + "description": "The list of companion banners of this ad.", + "items": { + "$ref": "ImageAsset" + }, + "type": "array" + }, + "customParameters": { + "additionalProperties": { + "type": "string" + }, + "description": "The custom parameters to pass custom values to tracking url template.", + "type": "object" + }, + "descriptions": { + "description": "The list of descriptions which show on the call-to-action banner.", + "items": { + "type": "string" + }, + "type": "array" + }, + "displayUrlBreadcrumb1": { + "description": "The first piece after the domain in the display url.", + "type": "string" + }, + "displayUrlBreadcrumb2": { + "description": "The second piece after the domain in the display url.", + "type": "string" + }, + "domain": { + "description": "The domain of the display url", + "type": "string" + }, + "finalUrl": { + "description": "The URL address of the webpage that people reach after they click the ad.", + "type": "string" + }, + "headlines": { + "description": "The list of headlines which show on the call-to-action banner.", + "items": { + "type": "string" + }, + "type": "array" + }, + "longHeadlines": { + "description": "The list of lone headlines which show on the call-to-action banner.", + "items": { + "type": "string" + }, + "type": "array" + }, + "trackingUrl": { + "description": "The URL address which is loaded in background for tracking purpose.", + "type": "string" + }, + "videos": { + "description": "The list of YouTube video assets in this ad.", + "items": { + "$ref": "YoutubeVideoDetails" + }, + "type": "array" + } + }, + "type": "object" + }, "VideoPlayerSizeAssignedTargetingOptionDetails": { "description": "Video player size targeting option details. This will be populated in the video_player_size_details field when targeting_type is `TARGETING_TYPE_VIDEO_PLAYER_SIZE`. Explicitly targeting all options is not supported. Remove all video player size targeting options to achieve this effect.", "id": "VideoPlayerSizeAssignedTargetingOptionDetails", @@ -19435,10 +20713,232 @@ }, "type": "object" }, + "YoutubeAdGroup": { + "description": "A single YouTube ad group associated with a YouTube and Partners line item.", + "id": "YoutubeAdGroup", + "properties": { + "adGroupFormat": { + "description": "The format of the ad group.", + "enum": [ + "YOUTUBE_AND_PARTNERS_AD_GROUP_FORMAT_UNSPECIFIED", + "YOUTUBE_AND_PARTNERS_AD_GROUP_FORMAT_IN_STREAM", + "YOUTUBE_AND_PARTNERS_AD_GROUP_FORMAT_VIDEO_DISCOVERY", + "YOUTUBE_AND_PARTNERS_AD_GROUP_FORMAT_BUMPER", + "YOUTUBE_AND_PARTNERS_AD_GROUP_FORMAT_NON_SKIPPABLE_IN_STREAM", + "YOUTUBE_AND_PARTNERS_AD_GROUP_FORMAT_AUDIO", + "YOUTUBE_AND_PARTNERS_AD_GROUP_FORMAT_ACTION", + "YOUTUBE_AND_PARTNERS_AD_GROUP_FORMAT_REACH", + "YOUTUBE_AND_PARTNERS_AD_GROUP_FORMAT_MASTHEAD" + ], + "enumDescriptions": [ + "Format value is not specified or is unknown in this version.", + "In-stream ads.", + "In-feed ads.", + "Bumper ads.", + "Non-skippable in-stream ads.", + "Non-skippable in-stream audio ads.", + "[Responsive ads for video action campaigns] (https://support.google.com/displayvideo/answer/9065351).", + "[Effective reach ad groups] (https://support.google.com/displayvideo/answer/9173684), including in-stream and bumper ads.", + "Video Masthead that is surfaced on the top slot on the YouTube homepage." + ], + "type": "string" + }, + "adGroupId": { + "description": "The unique ID of the ad group. Assigned by the system.", + "format": "int64", + "type": "string" + }, + "advertiserId": { + "description": "The unique ID of the advertiser the ad group belongs to.", + "format": "int64", + "type": "string" + }, + "biddingStrategy": { + "$ref": "YoutubeAndPartnersBiddingStrategy", + "description": "The bidding strategy of the ad group." + }, + "displayName": { + "description": "The display name of the ad group. Must be UTF-8 encoded with a maximum size of 255 bytes.", + "type": "string" + }, + "entityStatus": { + "description": "Controls whether or not the ad group can spend its budget and bid on inventory. If the ad group's parent line item is not active, the ad group can't spend its budget even if its own status is `ENTITY_STATUS_ACTIVE`.", + "enum": [ + "ENTITY_STATUS_UNSPECIFIED", + "ENTITY_STATUS_ACTIVE", + "ENTITY_STATUS_ARCHIVED", + "ENTITY_STATUS_DRAFT", + "ENTITY_STATUS_PAUSED", + "ENTITY_STATUS_SCHEDULED_FOR_DELETION" + ], + "enumDescriptions": [ + "Default value when status is not specified or is unknown in this version.", + "The entity is enabled to bid and spend budget.", + "The entity is archived. Bidding and budget spending are disabled. An entity can be deleted after archived. Deleted entities cannot be retrieved.", + "The entity is under draft. Bidding and budget spending are disabled.", + "Bidding and budget spending are paused for the entity.", + "The entity is scheduled for deletion." + ], + "type": "string" + }, + "lineItemId": { + "description": "The unique ID of the line item that the ad group belongs to.", + "format": "int64", + "type": "string" + }, + "name": { + "description": "The resource name of the ad group.", + "type": "string" + }, + "productFeedData": { + "$ref": "ProductFeedData", + "description": "The data to represent the product feed in this ad group." + }, + "targetingExpansion": { + "$ref": "TargetingExpansionConfig", + "description": "The [targeting expansion](https://support.google.com/displayvideo/answer/10191558) settings of the ad group. This config is only applicable when eligible audience list targeting is assigned to the ad group." + }, + "youtubeAdIds": { + "description": "The IDs of the YouTubeAds associated with the ad group.", + "items": { + "format": "int64", + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "YoutubeAdGroupAd": { + "description": "A single YouTube ad group ad associated with a YouTube ad group.", + "id": "YoutubeAdGroupAd", + "properties": { + "adGroupAdId": { + "description": "The unique ID of the ad group ad. Assigned by the system.", + "format": "int64", + "type": "string" + }, + "adGroupId": { + "description": "The unique ID of the ad group that the ad group ad belongs to.", + "format": "int64", + "type": "string" + }, + "adUrls": { + "description": "The list of ad urls.", + "items": { + "$ref": "AdUrl" + }, + "type": "array" + }, + "advertiserId": { + "description": "The unique ID of the advertiser the ad group ad belongs to.", + "format": "int64", + "type": "string" + }, + "audioAd": { + "$ref": "AudioAd", + "description": "Audio ad for reach purpose. [details](https://support.google.com/displayvideo/answer/6274216)" + }, + "bumperAd": { + "$ref": "BumperAd", + "description": "Non-skippable short video ad for reach purpose and video length equal to or less than 6 seconds. [details](https://support.google.com/displayvideo/answer/6274216)" + }, + "displayName": { + "description": "The display name of the ad group ad. Must be UTF-8 encoded with a maximum size of 255 bytes.", + "type": "string" + }, + "displayVideoSourceAd": { + "$ref": "DisplayVideoSourceAd", + "description": "The ad sourcing DV360 creative." + }, + "entityStatus": { + "description": "The entity status of the ad group ad.", + "enum": [ + "ENTITY_STATUS_UNSPECIFIED", + "ENTITY_STATUS_ACTIVE", + "ENTITY_STATUS_ARCHIVED", + "ENTITY_STATUS_DRAFT", + "ENTITY_STATUS_PAUSED", + "ENTITY_STATUS_SCHEDULED_FOR_DELETION" + ], + "enumDescriptions": [ + "Default value when status is not specified or is unknown in this version.", + "The entity is enabled to bid and spend budget.", + "The entity is archived. Bidding and budget spending are disabled. An entity can be deleted after archived. Deleted entities cannot be retrieved.", + "The entity is under draft. Bidding and budget spending are disabled.", + "Bidding and budget spending are paused for the entity.", + "The entity is scheduled for deletion." + ], + "type": "string" + }, + "inStreamAd": { + "$ref": "InStreamAd", + "description": "Skippable in-stream ad after 5 seconds for brand awareness or reach marketing objectives. [details](https://support.google.com/displayvideo/answer/6274216)" + }, + "mastheadAd": { + "$ref": "MastheadAd", + "description": "The ad which shows on YouTube homepage. [details](https://support.google.com/google-ads/answer/9709826)" + }, + "name": { + "description": "The resource name of the ad group ad.", + "type": "string" + }, + "nonSkippableAd": { + "$ref": "NonSkippableAd", + "description": "Non-skippable short in-stream ad for reach marketing objectives, and video length is between 6 and 15 seconds. [details](https://support.google.com/displayvideo/answer/6274216)" + }, + "videoDiscoverAd": { + "$ref": "VideoDiscoveryAd", + "description": "An ad which shows in places of discovery to promote a video. [details](https://support.google.com/displayvideo/answer/6274216)" + }, + "videoPerformanceAd": { + "$ref": "VideoPerformanceAd", + "description": "The ad to drive actions to the business, service or product. [details](https://support.google.com/google-ads/answer/10147229)" + } + }, + "type": "object" + }, + "YoutubeAdGroupAssignedTargetingOption": { + "description": "Wrapper object associating an assigned_targeting_option resource and the youtube ad group it is assigned to.", + "id": "YoutubeAdGroupAssignedTargetingOption", + "properties": { + "assignedTargetingOption": { + "$ref": "AssignedTargetingOption", + "description": "The assigned targeting option resource." + }, + "youtubeAdGroupId": { + "description": "The ID of the youtube ad group the assigned targeting option is assigned to.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, "YoutubeAndPartnersBiddingStrategy": { "description": "Settings that control the bid strategy for YouTube and Partners resources.", "id": "YoutubeAndPartnersBiddingStrategy", "properties": { + "adGroupEffectiveTargetCpaSource": { + "description": "Output only. Source of the effective targetCpa value for AdGroup.", + "enum": [ + "BIDDING_SOURCE_UNSPECIFIED", + "BIDDING_SOURCE_LINE_ITEM", + "BIDDING_SOURCE_AD_GROUP" + ], + "enumDescriptions": [ + "Bidding source is not specified or unknown.", + "Bidding value is inherited from the line item.", + "Bidding value is defined on the ad group." + ], + "readOnly": true, + "type": "string" + }, + "adGroupEffectiveTargetCpaValue": { + "description": "Output only. The effective targetCpa for AdGroup, in micros of advertiser's currency.", + "format": "int64", + "readOnly": true, + "type": "string" + }, "type": { "description": "The type of the bidding strategy.", "enum": [ @@ -19516,6 +21016,27 @@ "$ref": "YoutubeAndPartnersInventorySourceConfig", "description": "Settings that control what YouTube and Partners inventories the line item will target." }, + "leadFormId": { + "description": "The ID of the form to generate leads.", + "format": "int64", + "type": "string" + }, + "linkedMerchantId": { + "description": "The ID of the merchant which is linked to the line item for product feed.", + "format": "int64", + "type": "string" + }, + "relatedVideoIds": { + "description": "The IDs of the videos appear below the primary video ad when the ad is playing in the YouTube app on mobile devices.", + "items": { + "type": "string" + }, + "type": "array" + }, + "targetFrequency": { + "$ref": "TargetFrequency", + "description": "The average number of times you want ads from this line item to show to the same person over a certain period of time." + }, "thirdPartyMeasurementSettings": { "$ref": "YoutubeAndPartnersThirdPartyMeasurementSettings", "description": "The third-party measurement settings of the line item." @@ -19565,6 +21086,61 @@ } }, "type": "object" + }, + "YoutubeChannelAssignedTargetingOptionDetails": { + "description": "Details for YouTube channel assigned targeting option. This will be populated in the youtube_channel_details field when targeting_type is `TARGETING_TYPE_YOUTUBE_CHANNEL`.", + "id": "YoutubeChannelAssignedTargetingOptionDetails", + "properties": { + "channelId": { + "description": "The YouTube uploader channel id or the channel code of a YouTube channel.", + "type": "string" + }, + "negative": { + "description": "Indicates if this option is being negatively targeted.", + "type": "boolean" + } + }, + "type": "object" + }, + "YoutubeVideoAssignedTargetingOptionDetails": { + "description": "Details for YouTube video assigned targeting option. This will be populated in the youtube_video_details field when targeting_type is `TARGETING_TYPE_YOUTUBE_VIDEO`.", + "id": "YoutubeVideoAssignedTargetingOptionDetails", + "properties": { + "negative": { + "description": "Indicates if this option is being negatively targeted.", + "type": "boolean" + }, + "videoId": { + "description": "YouTube video id as it appears on the YouTube watch page.", + "type": "string" + } + }, + "type": "object" + }, + "YoutubeVideoDetails": { + "description": "Details of the YouTube video.", + "id": "YoutubeVideoDetails", + "properties": { + "id": { + "description": "The ID which can be searched on YouTube webpage.", + "type": "string" + }, + "unavailableReason": { + "description": "The reason why the video data is not available.", + "enum": [ + "VIDEO_UNAVAILABLE_REASON_UNSPECIFIED", + "VIDEO_UNAVAILABLE_REASON_PRIVATE", + "VIDEO_UNAVAILABLE_REASON_DELETED" + ], + "enumDescriptions": [ + "Unknown or unspecified.", + "The video is private.", + "The video is deleted." + ], + "type": "string" + } + }, + "type": "object" } }, "servicePath": "", diff --git a/displayvideo/v2/displayvideo-gen.go b/displayvideo/v2/displayvideo-gen.go index f615f4fe0ec..5270f813e93 100644 --- a/displayvideo/v2/displayvideo-gen.go +++ b/displayvideo/v2/displayvideo-gen.go @@ -210,6 +210,8 @@ func NewAdvertisersService(s *Service) *AdvertisersService { rs.ManualTriggers = NewAdvertisersManualTriggersService(s) rs.NegativeKeywordLists = NewAdvertisersNegativeKeywordListsService(s) rs.TargetingTypes = NewAdvertisersTargetingTypesService(s) + rs.YoutubeAdGroupAds = NewAdvertisersYoutubeAdGroupAdsService(s) + rs.YoutubeAdGroups = NewAdvertisersYoutubeAdGroupsService(s) return rs } @@ -237,6 +239,10 @@ type AdvertisersService struct { NegativeKeywordLists *AdvertisersNegativeKeywordListsService TargetingTypes *AdvertisersTargetingTypesService + + YoutubeAdGroupAds *AdvertisersYoutubeAdGroupAdsService + + YoutubeAdGroups *AdvertisersYoutubeAdGroupsService } func NewAdvertisersAssetsService(s *Service) *AdvertisersAssetsService { @@ -458,6 +464,48 @@ type AdvertisersTargetingTypesAssignedTargetingOptionsService struct { s *Service } +func NewAdvertisersYoutubeAdGroupAdsService(s *Service) *AdvertisersYoutubeAdGroupAdsService { + rs := &AdvertisersYoutubeAdGroupAdsService{s: s} + return rs +} + +type AdvertisersYoutubeAdGroupAdsService struct { + s *Service +} + +func NewAdvertisersYoutubeAdGroupsService(s *Service) *AdvertisersYoutubeAdGroupsService { + rs := &AdvertisersYoutubeAdGroupsService{s: s} + rs.TargetingTypes = NewAdvertisersYoutubeAdGroupsTargetingTypesService(s) + return rs +} + +type AdvertisersYoutubeAdGroupsService struct { + s *Service + + TargetingTypes *AdvertisersYoutubeAdGroupsTargetingTypesService +} + +func NewAdvertisersYoutubeAdGroupsTargetingTypesService(s *Service) *AdvertisersYoutubeAdGroupsTargetingTypesService { + rs := &AdvertisersYoutubeAdGroupsTargetingTypesService{s: s} + rs.AssignedTargetingOptions = NewAdvertisersYoutubeAdGroupsTargetingTypesAssignedTargetingOptionsService(s) + return rs +} + +type AdvertisersYoutubeAdGroupsTargetingTypesService struct { + s *Service + + AssignedTargetingOptions *AdvertisersYoutubeAdGroupsTargetingTypesAssignedTargetingOptionsService +} + +func NewAdvertisersYoutubeAdGroupsTargetingTypesAssignedTargetingOptionsService(s *Service) *AdvertisersYoutubeAdGroupsTargetingTypesAssignedTargetingOptionsService { + rs := &AdvertisersYoutubeAdGroupsTargetingTypesAssignedTargetingOptionsService{s: s} + return rs +} + +type AdvertisersYoutubeAdGroupsTargetingTypesAssignedTargetingOptionsService struct { + s *Service +} + func NewCombinedAudiencesService(s *Service) *CombinedAudiencesService { rs := &CombinedAudiencesService{s: s} return rs @@ -785,6 +833,49 @@ func (s *ActiveViewVideoViewabilityMetricConfig) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// AdUrl: Additional URLs related to the ad, including beacons. +type AdUrl struct { + // Type: The type of the AD url. + // + // Possible values: + // "AD_URL_TYPE_UNSPECIFIED" - Unknown or unspecified. + // "AD_URL_TYPE_BEACON_IMPRESSION" - A 1x1 tracking pixel to ping when + // an impression of a creative is delivered. + // "AD_URL_TYPE_BEACON_EXPANDABLE_DCM_IMPRESSION" - Expandable DCM + // impression beacon. At serving time, it is expanded to several + // beacons. + // "AD_URL_TYPE_BEACON_CLICK" - Tracking url to ping when the click + // event is triggered. + // "AD_URL_TYPE_BEACON_SKIP" - Tracking url to ping when the skip + // event is triggered. + Type string `json:"type,omitempty"` + + // Url: The url value of the ad url. + Url string `json:"url,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Type") 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. "Type") 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 *AdUrl) MarshalJSON() ([]byte, error) { + type NoMethod AdUrl + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // Adloox: Details of Adloox settings. type Adloox struct { // ExcludedAdlooxCategories: Adloox's brand safety settings. @@ -1992,6 +2083,11 @@ type AssignedTargetingOption struct { // override them. SensitiveCategoryExclusionDetails *SensitiveCategoryAssignedTargetingOptionDetails `json:"sensitiveCategoryExclusionDetails,omitempty"` + // SessionPositionDetails: Session position details. This field will be + // populated when the targeting_type is + // `TARGETING_TYPE_SESSION_POSITION`. + SessionPositionDetails *SessionPositionAssignedTargetingOptionDetails `json:"sessionPositionDetails,omitempty"` + // SubExchangeDetails: Sub-exchange details. This field will be // populated when the targeting_type is `TARGETING_TYPE_SUB_EXCHANGE`. SubExchangeDetails *SubExchangeAssignedTargetingOptionDetails `json:"subExchangeDetails,omitempty"` @@ -2097,6 +2193,13 @@ type AssignedTargetingOption struct { // audio content type. // "TARGETING_TYPE_CONTENT_GENRE" - Target ads to a specific content // genre. + // "TARGETING_TYPE_YOUTUBE_VIDEO" - Target ads to a specific YouTube + // video. + // "TARGETING_TYPE_YOUTUBE_CHANNEL" - Target ads to a specific YouTube + // channel. + // "TARGETING_TYPE_SESSION_POSITION" - Target ads to a serve it in a + // certain position of a session. Only supported for the AdGroup of + // YouTube Programmatic Reservation line item. TargetingType string `json:"targetingType,omitempty"` // ThirdPartyVerifierDetails: Third party verification details. This @@ -2123,6 +2226,15 @@ type AssignedTargetingOption struct { // target one viewability option per resource. ViewabilityDetails *ViewabilityAssignedTargetingOptionDetails `json:"viewabilityDetails,omitempty"` + // YoutubeChannelDetails: YouTube channel details. This field will be + // populated when the targeting_type is + // `TARGETING_TYPE_YOUTUBE_CHANNEL`. + YoutubeChannelDetails *YoutubeChannelAssignedTargetingOptionDetails `json:"youtubeChannelDetails,omitempty"` + + // YoutubeVideoDetails: YouTube video details. This field will be + // populated when the targeting_type is `TARGETING_TYPE_YOUTUBE_VIDEO`. + YoutubeVideoDetails *YoutubeVideoAssignedTargetingOptionDetails `json:"youtubeVideoDetails,omitempty"` + // ServerResponse contains the HTTP response code and headers from the // server. googleapi.ServerResponse `json:"-"` @@ -2308,6 +2420,45 @@ func (s *AudienceGroupAssignedTargetingOptionDetails) MarshalJSON() ([]byte, err return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// AudioAd: The details for audio ad. +type AudioAd struct { + // DisplayUrl: The webpage address that appears with the ad. + DisplayUrl string `json:"displayUrl,omitempty"` + + // FinalUrl: The URL address of the webpage that people reach after they + // click the ad. + FinalUrl string `json:"finalUrl,omitempty"` + + // TrackingUrl: The URL address which is loaded in background for + // tracking purpose. + TrackingUrl string `json:"trackingUrl,omitempty"` + + // Video: The YouTube video of the ad. + Video *YoutubeVideoDetails `json:"video,omitempty"` + + // ForceSendFields is a list of field names (e.g. "DisplayUrl") 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. "DisplayUrl") 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 *AudioAd) MarshalJSON() ([]byte, error) { + type NoMethod AudioAd + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // AudioContentTypeAssignedTargetingOptionDetails: Details for audio // content type assigned targeting option. This will be populated in the // audio_content_type_details field when targeting_type is @@ -3377,6 +3528,46 @@ func (s *BulkEditSitesResponse) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +type BulkListAdGroupAssignedTargetingOptionsResponse struct { + // NextPageToken: A token identifying the next page of results. This + // value should be specified as the pageToken in a subsequent call to + // `BulkListAdGroupAssignedTargetingOptions` to fetch the next page of + // results. This token will be absent if there are no more + // youtube_ad_group_assigned_targeting_options to return. + NextPageToken string `json:"nextPageToken,omitempty"` + + // YoutubeAdGroupAssignedTargetingOptions: The list of wrapper objects, + // each providing an assigned targeting option and the youtube ad group + // it is assigned to. This list will be absent if empty. + YoutubeAdGroupAssignedTargetingOptions []*YoutubeAdGroupAssignedTargetingOption `json:"youtubeAdGroupAssignedTargetingOptions,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "NextPageToken") 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. "NextPageToken") 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 *BulkListAdGroupAssignedTargetingOptionsResponse) MarshalJSON() ([]byte, error) { + type NoMethod BulkListAdGroupAssignedTargetingOptionsResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + type BulkListAdvertiserAssignedTargetingOptionsResponse struct { // AssignedTargetingOptions: The list of assigned targeting options. // This list will be absent if empty. @@ -3630,6 +3821,36 @@ func (s *BulkUpdateLineItemsResponse) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// BumperAd: Ad details for BumperAd. +type BumperAd struct { + // CommonInStreamAttribute: Common attributes data model. + CommonInStreamAttribute *CommonInStreamAttribute `json:"commonInStreamAttribute,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "CommonInStreamAttribute") 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. "CommonInStreamAttribute") + // 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 *BumperAd) MarshalJSON() ([]byte, error) { + type NoMethod BumperAd + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // BusinessChainAssignedTargetingOptionDetails: Details for assigned // Business chain targeting option. This will be populated in the // details field of an AssignedTargetingOption when targeting_type is @@ -4521,6 +4742,56 @@ func (s *CombinedAudienceTargetingSetting) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// CommonInStreamAttribute: The common attributes for InStreamAd, +// NonSkippableAd and BumperAd. +type CommonInStreamAttribute struct { + // ActionButtonLabel: The text on the call-to-action button. + ActionButtonLabel string `json:"actionButtonLabel,omitempty"` + + // ActionHeadline: The headline of the call-to-action banner. + ActionHeadline string `json:"actionHeadline,omitempty"` + + // CompanionBanner: The image which shows next to the video Ad. + CompanionBanner *ImageAsset `json:"companionBanner,omitempty"` + + // DisplayUrl: The webpage address that appears with the ad. + DisplayUrl string `json:"displayUrl,omitempty"` + + // FinalUrl: The URL address of the webpage that people reach after they + // click the ad. + FinalUrl string `json:"finalUrl,omitempty"` + + // TrackingUrl: The URL address which is loaded in background for + // tracking purpose. + TrackingUrl string `json:"trackingUrl,omitempty"` + + // Video: The YouTube video of the ad. + Video *YoutubeVideoDetails `json:"video,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ActionButtonLabel") + // 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. "ActionButtonLabel") 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 *CommonInStreamAttribute) MarshalJSON() ([]byte, error) { + type NoMethod CommonInStreamAttribute + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // ContactInfo: Contact information defining a Customer Match audience // member. type ContactInfo struct { @@ -5333,6 +5604,13 @@ type CreateAssignedTargetingOptionsRequest struct { // audio content type. // "TARGETING_TYPE_CONTENT_GENRE" - Target ads to a specific content // genre. + // "TARGETING_TYPE_YOUTUBE_VIDEO" - Target ads to a specific YouTube + // video. + // "TARGETING_TYPE_YOUTUBE_CHANNEL" - Target ads to a specific YouTube + // channel. + // "TARGETING_TYPE_SESSION_POSITION" - Target ads to a serve it in a + // certain position of a session. Only supported for the AdGroup of + // YouTube Programmatic Reservation line item. TargetingType string `json:"targetingType,omitempty"` // ForceSendFields is a list of field names (e.g. @@ -6243,6 +6521,45 @@ func (s *CustomBiddingScriptRef) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// CustomLabel: The key and value of a custom label. +type CustomLabel struct { + // Key: The key of the label. + // + // Possible values: + // "CUSTOM_LABEL_KEY_UNSPECIFIED" - Not specified or unknown. + // "CUSTOM_LABEL_KEY_0" - index 0. + // "CUSTOM_LABEL_KEY_1" - index 1. + // "CUSTOM_LABEL_KEY_2" - index 2. + // "CUSTOM_LABEL_KEY_3" - index 3. + // "CUSTOM_LABEL_KEY_4" - index 4. + Key string `json:"key,omitempty"` + + // Value: The value of the label. + Value string `json:"value,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Key") 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. "Key") 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 *CustomLabel) MarshalJSON() ([]byte, error) { + type NoMethod CustomLabel + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // CustomList: Describes a custom list entity, such as a custom affinity // or custom intent audience list. type CustomList struct { @@ -6598,6 +6915,13 @@ type DeleteAssignedTargetingOptionsRequest struct { // audio content type. // "TARGETING_TYPE_CONTENT_GENRE" - Target ads to a specific content // genre. + // "TARGETING_TYPE_YOUTUBE_VIDEO" - Target ads to a specific YouTube + // video. + // "TARGETING_TYPE_YOUTUBE_CHANNEL" - Target ads to a specific YouTube + // channel. + // "TARGETING_TYPE_SESSION_POSITION" - Target ads to a serve it in a + // certain position of a session. Only supported for the AdGroup of + // YouTube Programmatic Reservation line item. TargetingType string `json:"targetingType,omitempty"` // ForceSendFields is a list of field names (e.g. @@ -6932,6 +7256,34 @@ func (s *Dimensions) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// DisplayVideoSourceAd: The ad of which source is DV360 creative. +type DisplayVideoSourceAd struct { + // CreativeId: The ID of the source creative. + CreativeId int64 `json:"creativeId,omitempty,string"` + + // ForceSendFields is a list of field names (e.g. "CreativeId") 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. "CreativeId") 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 *DisplayVideoSourceAd) MarshalJSON() ([]byte, error) { + type NoMethod DisplayVideoSourceAd + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // DoubleVerify: Details of DoubleVerify settings. type DoubleVerify struct { // AppStarRating: Avoid bidding on apps with the star ratings. @@ -8857,6 +9209,11 @@ type GenerateDefaultLineItemRequest struct { // Connected TV default YouTube video ads. Only include in-stream // ad-format. Line items of this type and their targeting cannot be // created or updated using the API. + // "LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_TARGET_FREQUENCY" - The goal + // of this line item type is to show the YouTube ads target number of + // times to the same person in a certain period of time. Line items of + // this type and their targeting cannot be created or updated using the + // API. LineItemType string `json:"lineItemType,omitempty"` // MobileApp: The mobile app promoted by the line item. This is @@ -9635,6 +9992,74 @@ func (s *IdFilter) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// ImageAsset: The meta data of an image asset. +type ImageAsset struct { + // FileSize: File size of the image asset in bytes. + FileSize int64 `json:"fileSize,omitempty,string"` + + // FullSize: Metadata for this image at its original size. + FullSize *Dimensions `json:"fullSize,omitempty"` + + // MimeType: MIME type of the image asset. + MimeType string `json:"mimeType,omitempty"` + + // ForceSendFields is a list of field names (e.g. "FileSize") 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. "FileSize") 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 *ImageAsset) MarshalJSON() ([]byte, error) { + type NoMethod ImageAsset + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// InStreamAd: Ad details for InStreamAd +type InStreamAd struct { + // CommonInStreamAttribute: Common attributes data model. + CommonInStreamAttribute *CommonInStreamAttribute `json:"commonInStreamAttribute,omitempty"` + + // CustomParameters: The custom parameters to pass custom values to + // tracking url template. + CustomParameters map[string]string `json:"customParameters,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "CommonInStreamAttribute") 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. "CommonInStreamAttribute") + // 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 *InStreamAd) MarshalJSON() ([]byte, error) { + type NoMethod InStreamAd + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // InsertionOrder: A single insertion order. type InsertionOrder struct { // AdvertiserId: Output only. The unique ID of the advertiser the @@ -11090,6 +11515,11 @@ type LineItem struct { // Connected TV default YouTube video ads. Only include in-stream // ad-format. Line items of this type and their targeting cannot be // created or updated using the API. + // "LINE_ITEM_TYPE_YOUTUBE_AND_PARTNERS_TARGET_FREQUENCY" - The goal + // of this line item type is to show the YouTube ads target number of + // times to the same person in a certain period of time. Line items of + // this type and their targeting cannot be created or updated using the + // API. LineItemType string `json:"lineItemType,omitempty"` // MobileApp: The mobile app promoted by the line item. This is @@ -12566,6 +12996,125 @@ func (s *ListUsersResponse) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// ListYoutubeAdGroupAdsResponse: Response message for +// YoutubeAdGroupAdService.ListYoutubeAdGroupAds. +type ListYoutubeAdGroupAdsResponse struct { + // NextPageToken: A token to retrieve the next page of results. Pass + // this value in the page_token field in the subsequent call to + // `ListYoutubeAdGroupAds` method to retrieve the next page of results. + NextPageToken string `json:"nextPageToken,omitempty"` + + // YoutubeAdGroupAds: The list of ad group ads. This list will be absent + // if empty. + YoutubeAdGroupAds []*YoutubeAdGroupAd `json:"youtubeAdGroupAds,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "NextPageToken") 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. "NextPageToken") 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 *ListYoutubeAdGroupAdsResponse) MarshalJSON() ([]byte, error) { + type NoMethod ListYoutubeAdGroupAdsResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// ListYoutubeAdGroupAssignedTargetingOptionsResponse: Response message +// for ListYoutubeAdGroupAssignedTargetingOptions. +type ListYoutubeAdGroupAssignedTargetingOptionsResponse struct { + // AssignedTargetingOptions: The list of assigned targeting options. + // This list will be absent if empty. + AssignedTargetingOptions []*AssignedTargetingOption `json:"assignedTargetingOptions,omitempty"` + + // NextPageToken: A token identifying the next page of results. This + // value should be specified as the pageToken in a subsequent + // ListYoutubeAdGroupAssignedTargetingOptionsRequest to fetch the next + // page of results. This token will be absent if there are no more + // assigned_targeting_options to return. + 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. + // "AssignedTargetingOptions") 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. "AssignedTargetingOptions") + // 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 *ListYoutubeAdGroupAssignedTargetingOptionsResponse) MarshalJSON() ([]byte, error) { + type NoMethod ListYoutubeAdGroupAssignedTargetingOptionsResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +type ListYoutubeAdGroupsResponse struct { + // NextPageToken: A token to retrieve the next page of results. Pass + // this value in the page_token field in the subsequent call to + // `ListYoutubeAdGroups` method to retrieve the next page of results. + NextPageToken string `json:"nextPageToken,omitempty"` + + // YoutubeAdGroups: The list of ad groups. This list will be absent if + // empty. + YoutubeAdGroups []*YoutubeAdGroup `json:"youtubeAdGroups,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "NextPageToken") 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. "NextPageToken") 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 *ListYoutubeAdGroupsResponse) MarshalJSON() ([]byte, error) { + type NoMethod ListYoutubeAdGroupsResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // LocationList: A list of locations used for targeting. type LocationList struct { // AdvertiserId: Required. Immutable. The unique ID of the advertiser @@ -12752,6 +13301,80 @@ func (s *ManualTrigger) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// MastheadAd: The details for masthead ad. +type MastheadAd struct { + // AutoplayVideoDuration: Video will autoplay for certain period of + // time. + AutoplayVideoDuration string `json:"autoplayVideoDuration,omitempty"` + + // AutoplayVideoStartMillisecond: Video will start to play after certain + // period of time in millisecond. + AutoplayVideoStartMillisecond int64 `json:"autoplayVideoStartMillisecond,omitempty,string"` + + // CallToActionButtonLabel: The text on the call-to-action button. + CallToActionButtonLabel string `json:"callToActionButtonLabel,omitempty"` + + // CallToActionFinalUrl: The destination URL for the call-to-action + // button. + CallToActionFinalUrl string `json:"callToActionFinalUrl,omitempty"` + + // CallToActionTrackingUrl: The tracking URL for the call-to-action + // button. + CallToActionTrackingUrl string `json:"callToActionTrackingUrl,omitempty"` + + // CompanionYoutubeVideos: The videos (up to 2) that appear next to the + // Masthead ad on desktop. + CompanionYoutubeVideos []*YoutubeVideoDetails `json:"companionYoutubeVideos,omitempty"` + + // Description: The description of the ad. + Description string `json:"description,omitempty"` + + // Headline: The headline of the ad. + Headline string `json:"headline,omitempty"` + + // ShowChannelArt: Whether to show a background or banner that appears + // at the top of a YouTube page. + ShowChannelArt bool `json:"showChannelArt,omitempty"` + + // Video: The YouTube video of the ad. + Video *YoutubeVideoDetails `json:"video,omitempty"` + + // VideoAspectRatio: Aspect ratio of the autoplaying YouTube video on + // the Masthead. + // + // Possible values: + // "VIDEO_ASPECT_RATIO_UNSPECIFIED" - Not specified or unknown. + // "VIDEO_ASPECT_RATIO_WIDESCREEN" - The video is stretched and the + // top and bottom are cropped. + // "VIDEO_ASPECT_RATIO_FIXED_16_9" - The video uses a fixed 16:9 + // aspect ratio. + VideoAspectRatio string `json:"videoAspectRatio,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "AutoplayVideoDuration") 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. "AutoplayVideoDuration") 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 *MastheadAd) MarshalJSON() ([]byte, error) { + type NoMethod MastheadAd + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // MaximizeSpendBidStrategy: A strategy that automatically adjusts the // bid to optimize a specified performance goal while spending the full // budget. @@ -13199,6 +13822,40 @@ func (s *NegativeKeywordListAssignedTargetingOptionDetails) MarshalJSON() ([]byt return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// NonSkippableAd: Ad details for NonSkippableAd +type NonSkippableAd struct { + // CommonInStreamAttribute: Common attributes data model. + CommonInStreamAttribute *CommonInStreamAttribute `json:"commonInStreamAttribute,omitempty"` + + // CustomParameters: The custom parameters to pass custom values to + // tracking url template. + CustomParameters map[string]string `json:"customParameters,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "CommonInStreamAttribute") 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. "CommonInStreamAttribute") + // 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 *NonSkippableAd) MarshalJSON() ([]byte, error) { + type NoMethod NonSkippableAd + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // ObaIcon: OBA Icon for a Creative type ObaIcon struct { // ClickTrackingUrl: Required. The click tracking URL of the OBA icon. @@ -14600,6 +15257,84 @@ func (s *PrismaCpeCode) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// ProductFeedData: The details of product feed. +type ProductFeedData struct { + // IsFeedDisabled: True if opt out of showing products. + IsFeedDisabled bool `json:"isFeedDisabled,omitempty"` + + // ProductMatchDimensions: A list of dimensions which are used to match + // products. + ProductMatchDimensions []*ProductMatchDimension `json:"productMatchDimensions,omitempty"` + + // ProductMatchType: The type of the way to select the products. + // + // Possible values: + // "PRODUCT_MATCH_TYPE_UNSPECIFIED" - Not specified or unknown. + // "PRODUCT_MATCH_TYPE_ALL_PRODUCTS" - All the products are matched. + // "PRODUCT_MATCH_TYPE_SPECIFIC_PRODUCTS" - Specific products are + // selected. + // "PRODUCT_MATCH_TYPE_CUSTOM_LABEL" - Match products by their custom + // labels. + ProductMatchType string `json:"productMatchType,omitempty"` + + // ForceSendFields is a list of field names (e.g. "IsFeedDisabled") 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. "IsFeedDisabled") 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 *ProductFeedData) MarshalJSON() ([]byte, error) { + type NoMethod ProductFeedData + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// ProductMatchDimension: The dimension which are used to match +// products. +type ProductMatchDimension struct { + // CustomLabel: The custom label to match all the products with the + // label. + CustomLabel *CustomLabel `json:"customLabel,omitempty"` + + // ProductOfferId: The ID of the product offer to match the product with + // the same offer ID. + ProductOfferId string `json:"productOfferId,omitempty"` + + // ForceSendFields is a list of field names (e.g. "CustomLabel") 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. "CustomLabel") 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 *ProductMatchDimension) MarshalJSON() ([]byte, error) { + type NoMethod ProductMatchDimension + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // ProximityLocationListAssignedTargetingOptionDetails: Targeting // details for proximity location list. This will be populated in the // details field of an AssignedTargetingOption when targeting_type is @@ -15453,6 +16188,44 @@ func (s *SensitiveCategoryTargetingOptionDetails) MarshalJSON() ([]byte, error) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// SessionPositionAssignedTargetingOptionDetails: Details for session +// position assigned targeting option. This will be populated in the +// session_position_details field when targeting_type is +// `TARGETING_TYPE_SESSION_POSITION`. +type SessionPositionAssignedTargetingOptionDetails struct { + // SessionPosition: The position where the ad will show in a session. + // + // Possible values: + // "SESSION_POSITION_UNSPECIFIED" - This is a placeholder, does not + // indicate any positions. + // "SESSION_POSITION_FIRST_IMPRESSION" - The first impression of the + // session. + SessionPosition string `json:"sessionPosition,omitempty"` + + // ForceSendFields is a list of field names (e.g. "SessionPosition") 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. "SessionPosition") 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 *SessionPositionAssignedTargetingOptionDetails) MarshalJSON() ([]byte, error) { + type NoMethod SessionPositionAssignedTargetingOptionDetails + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // Site: A single site. Sites are apps or websites belonging to a // channel. type Site struct { @@ -15598,6 +16371,62 @@ func (s *SubExchangeTargetingOptionDetails) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// TargetFrequency: Setting that controls the average number of times +// the ads will show to the same person over a certain period of time. +type TargetFrequency struct { + // TargetCount: The target number of times, on average, the ads will be + // shown to the same person in the timespan dictated by time_unit and + // time_unit_count. + TargetCount int64 `json:"targetCount,omitempty,string"` + + // TimeUnit: The unit of time in which the target frequency will be + // applied. The following time unit is applicable: * `TIME_UNIT_WEEKS` + // + // Possible values: + // "TIME_UNIT_UNSPECIFIED" - Time unit value is not specified or is + // unknown in this version. + // "TIME_UNIT_LIFETIME" - The frequency cap will be applied to the + // whole life time of the line item. + // "TIME_UNIT_MONTHS" - The frequency cap will be applied to a number + // of months. + // "TIME_UNIT_WEEKS" - The frequency cap will be applied to a number + // of weeks. + // "TIME_UNIT_DAYS" - The frequency cap will be applied to a number of + // days. + // "TIME_UNIT_HOURS" - The frequency cap will be applied to a number + // of hours. + // "TIME_UNIT_MINUTES" - The frequency cap will be applied to a number + // of minutes. + TimeUnit string `json:"timeUnit,omitempty"` + + // TimeUnitCount: The number of time_unit the target frequency will + // last. The following restrictions apply based on the value of + // time_unit: * `TIME_UNIT_WEEKS` - must be 1 + TimeUnitCount int64 `json:"timeUnitCount,omitempty"` + + // ForceSendFields is a list of field names (e.g. "TargetCount") 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. "TargetCount") 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 *TargetFrequency) MarshalJSON() ([]byte, error) { + type NoMethod TargetFrequency + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // TargetingExpansionConfig: Settings that control the targeting // expansion of the line item. Targeting expansion allows the line item // to reach a larger audience based on the original audience list and @@ -15868,6 +16697,13 @@ type TargetingOption struct { // audio content type. // "TARGETING_TYPE_CONTENT_GENRE" - Target ads to a specific content // genre. + // "TARGETING_TYPE_YOUTUBE_VIDEO" - Target ads to a specific YouTube + // video. + // "TARGETING_TYPE_YOUTUBE_CHANNEL" - Target ads to a specific YouTube + // channel. + // "TARGETING_TYPE_SESSION_POSITION" - Target ads to a serve it in a + // certain position of a session. Only supported for the AdGroup of + // YouTube Programmatic Reservation line item. TargetingType string `json:"targetingType,omitempty"` // UserRewardedContentDetails: User rewarded content details. @@ -16578,6 +17414,125 @@ func (s *VideoAdSequenceStep) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// VideoDiscoveryAd: The details for video discovery ad. +type VideoDiscoveryAd struct { + // Description1: First text line for the ad. + Description1 string `json:"description1,omitempty"` + + // Description2: Second text line for the ad. + Description2 string `json:"description2,omitempty"` + + // Headline: The headline of the video discovery ad. + Headline string `json:"headline,omitempty"` + + // Thumbnail: Thumbnail image to use in the ad. + // + // Possible values: + // "THUMBNAIL_UNSPECIFIED" - Unknown or unspecified. + // "THUMBNAIL_DEFAULT" - The default thumbnail, can be auto-generated + // or user-uploaded. + // "THUMBNAIL_1" - Thumbnail 1, generated from the video. + // "THUMBNAIL_2" - Thumbnail 2, generated from the video. + // "THUMBNAIL_3" - Thumbnail 3, generated from the video. + Thumbnail string `json:"thumbnail,omitempty"` + + // Video: The YouTube video which the ad wants to promote. + Video *YoutubeVideoDetails `json:"video,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Description1") 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. "Description1") 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 *VideoDiscoveryAd) MarshalJSON() ([]byte, error) { + type NoMethod VideoDiscoveryAd + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// VideoPerformanceAd: The details for video performance ad. +type VideoPerformanceAd struct { + // ActionButtonLabels: The list of text assets which show on the + // call-to-action button. + ActionButtonLabels []string `json:"actionButtonLabels,omitempty"` + + // CompanionBanners: The list of companion banners of this ad. + CompanionBanners []*ImageAsset `json:"companionBanners,omitempty"` + + // CustomParameters: The custom parameters to pass custom values to + // tracking url template. + CustomParameters map[string]string `json:"customParameters,omitempty"` + + // Descriptions: The list of descriptions which show on the + // call-to-action banner. + Descriptions []string `json:"descriptions,omitempty"` + + // DisplayUrlBreadcrumb1: The first piece after the domain in the + // display url. + DisplayUrlBreadcrumb1 string `json:"displayUrlBreadcrumb1,omitempty"` + + // DisplayUrlBreadcrumb2: The second piece after the domain in the + // display url. + DisplayUrlBreadcrumb2 string `json:"displayUrlBreadcrumb2,omitempty"` + + // Domain: The domain of the display url + Domain string `json:"domain,omitempty"` + + // FinalUrl: The URL address of the webpage that people reach after they + // click the ad. + FinalUrl string `json:"finalUrl,omitempty"` + + // Headlines: The list of headlines which show on the call-to-action + // banner. + Headlines []string `json:"headlines,omitempty"` + + // LongHeadlines: The list of lone headlines which show on the + // call-to-action banner. + LongHeadlines []string `json:"longHeadlines,omitempty"` + + // TrackingUrl: The URL address which is loaded in background for + // tracking purpose. + TrackingUrl string `json:"trackingUrl,omitempty"` + + // Videos: The list of YouTube video assets in this ad. + Videos []*YoutubeVideoDetails `json:"videos,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ActionButtonLabels") + // 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. "ActionButtonLabels") 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 *VideoPerformanceAd) MarshalJSON() ([]byte, error) { + type NoMethod VideoPerformanceAd + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // VideoPlayerSizeAssignedTargetingOptionDetails: Video player size // targeting option details. This will be populated in the // video_player_size_details field when targeting_type is @@ -16785,9 +17740,275 @@ func (s *ViewabilityTargetingOptionDetails) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// YoutubeAdGroup: A single YouTube ad group associated with a YouTube +// and Partners line item. +type YoutubeAdGroup struct { + // AdGroupFormat: The format of the ad group. + // + // Possible values: + // "YOUTUBE_AND_PARTNERS_AD_GROUP_FORMAT_UNSPECIFIED" - Format value + // is not specified or is unknown in this version. + // "YOUTUBE_AND_PARTNERS_AD_GROUP_FORMAT_IN_STREAM" - In-stream ads. + // "YOUTUBE_AND_PARTNERS_AD_GROUP_FORMAT_VIDEO_DISCOVERY" - In-feed + // ads. + // "YOUTUBE_AND_PARTNERS_AD_GROUP_FORMAT_BUMPER" - Bumper ads. + // "YOUTUBE_AND_PARTNERS_AD_GROUP_FORMAT_NON_SKIPPABLE_IN_STREAM" - + // Non-skippable in-stream ads. + // "YOUTUBE_AND_PARTNERS_AD_GROUP_FORMAT_AUDIO" - Non-skippable + // in-stream audio ads. + // "YOUTUBE_AND_PARTNERS_AD_GROUP_FORMAT_ACTION" - [Responsive ads for + // video action campaigns] + // (https://support.google.com/displayvideo/answer/9065351). + // "YOUTUBE_AND_PARTNERS_AD_GROUP_FORMAT_REACH" - [Effective reach ad + // groups] (https://support.google.com/displayvideo/answer/9173684), + // including in-stream and bumper ads. + // "YOUTUBE_AND_PARTNERS_AD_GROUP_FORMAT_MASTHEAD" - Video Masthead + // that is surfaced on the top slot on the YouTube homepage. + AdGroupFormat string `json:"adGroupFormat,omitempty"` + + // AdGroupId: The unique ID of the ad group. Assigned by the system. + AdGroupId int64 `json:"adGroupId,omitempty,string"` + + // AdvertiserId: The unique ID of the advertiser the ad group belongs + // to. + AdvertiserId int64 `json:"advertiserId,omitempty,string"` + + // BiddingStrategy: The bidding strategy of the ad group. + BiddingStrategy *YoutubeAndPartnersBiddingStrategy `json:"biddingStrategy,omitempty"` + + // DisplayName: The display name of the ad group. Must be UTF-8 encoded + // with a maximum size of 255 bytes. + DisplayName string `json:"displayName,omitempty"` + + // EntityStatus: Controls whether or not the ad group can spend its + // budget and bid on inventory. If the ad group's parent line item is + // not active, the ad group can't spend its budget even if its own + // status is `ENTITY_STATUS_ACTIVE`. + // + // Possible values: + // "ENTITY_STATUS_UNSPECIFIED" - Default value when status is not + // specified or is unknown in this version. + // "ENTITY_STATUS_ACTIVE" - The entity is enabled to bid and spend + // budget. + // "ENTITY_STATUS_ARCHIVED" - The entity is archived. Bidding and + // budget spending are disabled. An entity can be deleted after + // archived. Deleted entities cannot be retrieved. + // "ENTITY_STATUS_DRAFT" - The entity is under draft. Bidding and + // budget spending are disabled. + // "ENTITY_STATUS_PAUSED" - Bidding and budget spending are paused for + // the entity. + // "ENTITY_STATUS_SCHEDULED_FOR_DELETION" - The entity is scheduled + // for deletion. + EntityStatus string `json:"entityStatus,omitempty"` + + // LineItemId: The unique ID of the line item that the ad group belongs + // to. + LineItemId int64 `json:"lineItemId,omitempty,string"` + + // Name: The resource name of the ad group. + Name string `json:"name,omitempty"` + + // ProductFeedData: The data to represent the product feed in this ad + // group. + ProductFeedData *ProductFeedData `json:"productFeedData,omitempty"` + + // TargetingExpansion: The targeting expansion + // (https://support.google.com/displayvideo/answer/10191558) settings of + // the ad group. This config is only applicable when eligible audience + // list targeting is assigned to the ad group. + TargetingExpansion *TargetingExpansionConfig `json:"targetingExpansion,omitempty"` + + // YoutubeAdIds: The IDs of the YouTubeAds associated with the ad group. + YoutubeAdIds googleapi.Int64s `json:"youtubeAdIds,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "AdGroupFormat") 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. "AdGroupFormat") 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 *YoutubeAdGroup) MarshalJSON() ([]byte, error) { + type NoMethod YoutubeAdGroup + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// YoutubeAdGroupAd: A single YouTube ad group ad associated with a +// YouTube ad group. +type YoutubeAdGroupAd struct { + // AdGroupAdId: The unique ID of the ad group ad. Assigned by the + // system. + AdGroupAdId int64 `json:"adGroupAdId,omitempty,string"` + + // AdGroupId: The unique ID of the ad group that the ad group ad belongs + // to. + AdGroupId int64 `json:"adGroupId,omitempty,string"` + + // AdUrls: The list of ad urls. + AdUrls []*AdUrl `json:"adUrls,omitempty"` + + // AdvertiserId: The unique ID of the advertiser the ad group ad belongs + // to. + AdvertiserId int64 `json:"advertiserId,omitempty,string"` + + // AudioAd: Audio ad for reach purpose. details + // (https://support.google.com/displayvideo/answer/6274216) + AudioAd *AudioAd `json:"audioAd,omitempty"` + + // BumperAd: Non-skippable short video ad for reach purpose and video + // length equal to or less than 6 seconds. details + // (https://support.google.com/displayvideo/answer/6274216) + BumperAd *BumperAd `json:"bumperAd,omitempty"` + + // DisplayName: The display name of the ad group ad. Must be UTF-8 + // encoded with a maximum size of 255 bytes. + DisplayName string `json:"displayName,omitempty"` + + // DisplayVideoSourceAd: The ad sourcing DV360 creative. + DisplayVideoSourceAd *DisplayVideoSourceAd `json:"displayVideoSourceAd,omitempty"` + + // EntityStatus: The entity status of the ad group ad. + // + // Possible values: + // "ENTITY_STATUS_UNSPECIFIED" - Default value when status is not + // specified or is unknown in this version. + // "ENTITY_STATUS_ACTIVE" - The entity is enabled to bid and spend + // budget. + // "ENTITY_STATUS_ARCHIVED" - The entity is archived. Bidding and + // budget spending are disabled. An entity can be deleted after + // archived. Deleted entities cannot be retrieved. + // "ENTITY_STATUS_DRAFT" - The entity is under draft. Bidding and + // budget spending are disabled. + // "ENTITY_STATUS_PAUSED" - Bidding and budget spending are paused for + // the entity. + // "ENTITY_STATUS_SCHEDULED_FOR_DELETION" - The entity is scheduled + // for deletion. + EntityStatus string `json:"entityStatus,omitempty"` + + // InStreamAd: Skippable in-stream ad after 5 seconds for brand + // awareness or reach marketing objectives. details + // (https://support.google.com/displayvideo/answer/6274216) + InStreamAd *InStreamAd `json:"inStreamAd,omitempty"` + + // MastheadAd: The ad which shows on YouTube homepage. details + // (https://support.google.com/google-ads/answer/9709826) + MastheadAd *MastheadAd `json:"mastheadAd,omitempty"` + + // Name: The resource name of the ad group ad. + Name string `json:"name,omitempty"` + + // NonSkippableAd: Non-skippable short in-stream ad for reach marketing + // objectives, and video length is between 6 and 15 seconds. details + // (https://support.google.com/displayvideo/answer/6274216) + NonSkippableAd *NonSkippableAd `json:"nonSkippableAd,omitempty"` + + // VideoDiscoverAd: An ad which shows in places of discovery to promote + // a video. details + // (https://support.google.com/displayvideo/answer/6274216) + VideoDiscoverAd *VideoDiscoveryAd `json:"videoDiscoverAd,omitempty"` + + // VideoPerformanceAd: The ad to drive actions to the business, service + // or product. details + // (https://support.google.com/google-ads/answer/10147229) + VideoPerformanceAd *VideoPerformanceAd `json:"videoPerformanceAd,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "AdGroupAdId") 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. "AdGroupAdId") 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 *YoutubeAdGroupAd) MarshalJSON() ([]byte, error) { + type NoMethod YoutubeAdGroupAd + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// YoutubeAdGroupAssignedTargetingOption: Wrapper object associating an +// assigned_targeting_option resource and the youtube ad group it is +// assigned to. +type YoutubeAdGroupAssignedTargetingOption struct { + // AssignedTargetingOption: The assigned targeting option resource. + AssignedTargetingOption *AssignedTargetingOption `json:"assignedTargetingOption,omitempty"` + + // YoutubeAdGroupId: The ID of the youtube ad group the assigned + // targeting option is assigned to. + YoutubeAdGroupId int64 `json:"youtubeAdGroupId,omitempty,string"` + + // ForceSendFields is a list of field names (e.g. + // "AssignedTargetingOption") 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. "AssignedTargetingOption") + // 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 *YoutubeAdGroupAssignedTargetingOption) MarshalJSON() ([]byte, error) { + type NoMethod YoutubeAdGroupAssignedTargetingOption + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // YoutubeAndPartnersBiddingStrategy: Settings that control the bid // strategy for YouTube and Partners resources. type YoutubeAndPartnersBiddingStrategy struct { + // AdGroupEffectiveTargetCpaSource: Output only. Source of the effective + // targetCpa value for AdGroup. + // + // Possible values: + // "BIDDING_SOURCE_UNSPECIFIED" - Bidding source is not specified or + // unknown. + // "BIDDING_SOURCE_LINE_ITEM" - Bidding value is inherited from the + // line item. + // "BIDDING_SOURCE_AD_GROUP" - Bidding value is defined on the ad + // group. + AdGroupEffectiveTargetCpaSource string `json:"adGroupEffectiveTargetCpaSource,omitempty"` + + // AdGroupEffectiveTargetCpaValue: Output only. The effective targetCpa + // for AdGroup, in micros of advertiser's currency. + AdGroupEffectiveTargetCpaValue int64 `json:"adGroupEffectiveTargetCpaValue,omitempty,string"` + // Type: The type of the bidding strategy. // // Possible values: @@ -16821,20 +18042,22 @@ type YoutubeAndPartnersBiddingStrategy struct { // an applicable strategy, the value of this field will be 0. Value int64 `json:"value,omitempty,string"` - // ForceSendFields is a list of field names (e.g. "Type") 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 is a list of field names (e.g. + // "AdGroupEffectiveTargetCpaSource") 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. "Type") 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. + // "AdGroupEffectiveTargetCpaSource") 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:"-"` } @@ -16916,6 +18139,21 @@ type YoutubeAndPartnersSettings struct { // Partners inventories the line item will target. InventorySourceSettings *YoutubeAndPartnersInventorySourceConfig `json:"inventorySourceSettings,omitempty"` + // LeadFormId: The ID of the form to generate leads. + LeadFormId int64 `json:"leadFormId,omitempty,string"` + + // LinkedMerchantId: The ID of the merchant which is linked to the line + // item for product feed. + LinkedMerchantId int64 `json:"linkedMerchantId,omitempty,string"` + + // RelatedVideoIds: The IDs of the videos appear below the primary video + // ad when the ad is playing in the YouTube app on mobile devices. + RelatedVideoIds []string `json:"relatedVideoIds,omitempty"` + + // TargetFrequency: The average number of times you want ads from this + // line item to show to the same person over a certain period of time. + TargetFrequency *TargetFrequency `json:"targetFrequency,omitempty"` + // ThirdPartyMeasurementSettings: The third-party measurement settings // of the line item. ThirdPartyMeasurementSettings *YoutubeAndPartnersThirdPartyMeasurementSettings `json:"thirdPartyMeasurementSettings,omitempty"` @@ -17006,6 +18244,111 @@ func (s *YoutubeAndPartnersThirdPartyMeasurementSettings) MarshalJSON() ([]byte, return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// YoutubeChannelAssignedTargetingOptionDetails: Details for YouTube +// channel assigned targeting option. This will be populated in the +// youtube_channel_details field when targeting_type is +// `TARGETING_TYPE_YOUTUBE_CHANNEL`. +type YoutubeChannelAssignedTargetingOptionDetails struct { + // ChannelId: The YouTube uploader channel id or the channel code of a + // YouTube channel. + ChannelId string `json:"channelId,omitempty"` + + // Negative: Indicates if this option is being negatively targeted. + Negative bool `json:"negative,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ChannelId") 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. "ChannelId") 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 *YoutubeChannelAssignedTargetingOptionDetails) MarshalJSON() ([]byte, error) { + type NoMethod YoutubeChannelAssignedTargetingOptionDetails + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// YoutubeVideoAssignedTargetingOptionDetails: Details for YouTube video +// assigned targeting option. This will be populated in the +// youtube_video_details field when targeting_type is +// `TARGETING_TYPE_YOUTUBE_VIDEO`. +type YoutubeVideoAssignedTargetingOptionDetails struct { + // Negative: Indicates if this option is being negatively targeted. + Negative bool `json:"negative,omitempty"` + + // VideoId: YouTube video id as it appears on the YouTube watch page. + VideoId string `json:"videoId,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Negative") 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. "Negative") 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 *YoutubeVideoAssignedTargetingOptionDetails) MarshalJSON() ([]byte, error) { + type NoMethod YoutubeVideoAssignedTargetingOptionDetails + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// YoutubeVideoDetails: Details of the YouTube video. +type YoutubeVideoDetails struct { + // Id: The ID which can be searched on YouTube webpage. + Id string `json:"id,omitempty"` + + // UnavailableReason: The reason why the video data is not available. + // + // Possible values: + // "VIDEO_UNAVAILABLE_REASON_UNSPECIFIED" - Unknown or unspecified. + // "VIDEO_UNAVAILABLE_REASON_PRIVATE" - The video is private. + // "VIDEO_UNAVAILABLE_REASON_DELETED" - The video is deleted. + UnavailableReason string `json:"unavailableReason,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Id") 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. "Id") 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 *YoutubeVideoDetails) MarshalJSON() ([]byte, error) { + type NoMethod YoutubeVideoDetails + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // method id "displayvideo.advertisers.audit": type AdvertisersAuditCall struct { @@ -19950,7 +21293,10 @@ func (c *AdvertisersCampaignsTargetingTypesAssignedTargetingOptionsGetCall) Do(o // "TARGETING_TYPE_NATIVE_CONTENT_POSITION", // "TARGETING_TYPE_OMID", // "TARGETING_TYPE_AUDIO_CONTENT_TYPE", - // "TARGETING_TYPE_CONTENT_GENRE" + // "TARGETING_TYPE_CONTENT_GENRE", + // "TARGETING_TYPE_YOUTUBE_VIDEO", + // "TARGETING_TYPE_YOUTUBE_CHANNEL", + // "TARGETING_TYPE_SESSION_POSITION" // ], // "enumDescriptions": [ // "Default value when type is not specified or is unknown in this version.", @@ -19998,7 +21344,10 @@ func (c *AdvertisersCampaignsTargetingTypesAssignedTargetingOptionsGetCall) Do(o // "Target ads to a specific native content position.", // "Target ads in an Open Measurement enabled inventory.", // "Target ads to a specific audio content type.", - // "Target ads to a specific content genre." + // "Target ads to a specific content genre.", + // "Target ads to a specific YouTube video.", + // "Target ads to a specific YouTube channel.", + // "Target ads to a serve it in a certain position of a session. Only supported for the AdGroup of YouTube Programmatic Reservation line item." // ], // "location": "path", // "pattern": "^[^/]+$", @@ -20305,7 +21654,10 @@ func (c *AdvertisersCampaignsTargetingTypesAssignedTargetingOptionsListCall) Do( // "TARGETING_TYPE_NATIVE_CONTENT_POSITION", // "TARGETING_TYPE_OMID", // "TARGETING_TYPE_AUDIO_CONTENT_TYPE", - // "TARGETING_TYPE_CONTENT_GENRE" + // "TARGETING_TYPE_CONTENT_GENRE", + // "TARGETING_TYPE_YOUTUBE_VIDEO", + // "TARGETING_TYPE_YOUTUBE_CHANNEL", + // "TARGETING_TYPE_SESSION_POSITION" // ], // "enumDescriptions": [ // "Default value when type is not specified or is unknown in this version.", @@ -20353,7 +21705,10 @@ func (c *AdvertisersCampaignsTargetingTypesAssignedTargetingOptionsListCall) Do( // "Target ads to a specific native content position.", // "Target ads in an Open Measurement enabled inventory.", // "Target ads to a specific audio content type.", - // "Target ads to a specific content genre." + // "Target ads to a specific content genre.", + // "Target ads to a specific YouTube video.", + // "Target ads to a specific YouTube channel.", + // "Target ads to a serve it in a certain position of a session. Only supported for the AdGroup of YouTube Programmatic Reservation line item." // ], // "location": "path", // "pattern": "^[^/]+$", @@ -24318,7 +25673,10 @@ func (c *AdvertisersInsertionOrdersTargetingTypesAssignedTargetingOptionsCreateC // "TARGETING_TYPE_NATIVE_CONTENT_POSITION", // "TARGETING_TYPE_OMID", // "TARGETING_TYPE_AUDIO_CONTENT_TYPE", - // "TARGETING_TYPE_CONTENT_GENRE" + // "TARGETING_TYPE_CONTENT_GENRE", + // "TARGETING_TYPE_YOUTUBE_VIDEO", + // "TARGETING_TYPE_YOUTUBE_CHANNEL", + // "TARGETING_TYPE_SESSION_POSITION" // ], // "enumDescriptions": [ // "Default value when type is not specified or is unknown in this version.", @@ -24366,7 +25724,10 @@ func (c *AdvertisersInsertionOrdersTargetingTypesAssignedTargetingOptionsCreateC // "Target ads to a specific native content position.", // "Target ads in an Open Measurement enabled inventory.", // "Target ads to a specific audio content type.", - // "Target ads to a specific content genre." + // "Target ads to a specific content genre.", + // "Target ads to a specific YouTube video.", + // "Target ads to a specific YouTube channel.", + // "Target ads to a serve it in a certain position of a session. Only supported for the AdGroup of YouTube Programmatic Reservation line item." // ], // "location": "path", // "pattern": "^[^/]+$", @@ -24611,7 +25972,10 @@ func (c *AdvertisersInsertionOrdersTargetingTypesAssignedTargetingOptionsDeleteC // "TARGETING_TYPE_NATIVE_CONTENT_POSITION", // "TARGETING_TYPE_OMID", // "TARGETING_TYPE_AUDIO_CONTENT_TYPE", - // "TARGETING_TYPE_CONTENT_GENRE" + // "TARGETING_TYPE_CONTENT_GENRE", + // "TARGETING_TYPE_YOUTUBE_VIDEO", + // "TARGETING_TYPE_YOUTUBE_CHANNEL", + // "TARGETING_TYPE_SESSION_POSITION" // ], // "enumDescriptions": [ // "Default value when type is not specified or is unknown in this version.", @@ -24659,7 +26023,10 @@ func (c *AdvertisersInsertionOrdersTargetingTypesAssignedTargetingOptionsDeleteC // "Target ads to a specific native content position.", // "Target ads in an Open Measurement enabled inventory.", // "Target ads to a specific audio content type.", - // "Target ads to a specific content genre." + // "Target ads to a specific content genre.", + // "Target ads to a specific YouTube video.", + // "Target ads to a specific YouTube channel.", + // "Target ads to a serve it in a certain position of a session. Only supported for the AdGroup of YouTube Programmatic Reservation line item." // ], // "location": "path", // "pattern": "^[^/]+$", @@ -24896,7 +26263,10 @@ func (c *AdvertisersInsertionOrdersTargetingTypesAssignedTargetingOptionsGetCall // "TARGETING_TYPE_NATIVE_CONTENT_POSITION", // "TARGETING_TYPE_OMID", // "TARGETING_TYPE_AUDIO_CONTENT_TYPE", - // "TARGETING_TYPE_CONTENT_GENRE" + // "TARGETING_TYPE_CONTENT_GENRE", + // "TARGETING_TYPE_YOUTUBE_VIDEO", + // "TARGETING_TYPE_YOUTUBE_CHANNEL", + // "TARGETING_TYPE_SESSION_POSITION" // ], // "enumDescriptions": [ // "Default value when type is not specified or is unknown in this version.", @@ -24944,7 +26314,10 @@ func (c *AdvertisersInsertionOrdersTargetingTypesAssignedTargetingOptionsGetCall // "Target ads to a specific native content position.", // "Target ads in an Open Measurement enabled inventory.", // "Target ads to a specific audio content type.", - // "Target ads to a specific content genre." + // "Target ads to a specific content genre.", + // "Target ads to a specific YouTube video.", + // "Target ads to a specific YouTube channel.", + // "Target ads to a serve it in a certain position of a session. Only supported for the AdGroup of YouTube Programmatic Reservation line item." // ], // "location": "path", // "pattern": "^[^/]+$", @@ -25236,7 +26609,10 @@ func (c *AdvertisersInsertionOrdersTargetingTypesAssignedTargetingOptionsListCal // "TARGETING_TYPE_NATIVE_CONTENT_POSITION", // "TARGETING_TYPE_OMID", // "TARGETING_TYPE_AUDIO_CONTENT_TYPE", - // "TARGETING_TYPE_CONTENT_GENRE" + // "TARGETING_TYPE_CONTENT_GENRE", + // "TARGETING_TYPE_YOUTUBE_VIDEO", + // "TARGETING_TYPE_YOUTUBE_CHANNEL", + // "TARGETING_TYPE_SESSION_POSITION" // ], // "enumDescriptions": [ // "Default value when type is not specified or is unknown in this version.", @@ -25284,7 +26660,10 @@ func (c *AdvertisersInsertionOrdersTargetingTypesAssignedTargetingOptionsListCal // "Target ads to a specific native content position.", // "Target ads in an Open Measurement enabled inventory.", // "Target ads to a specific audio content type.", - // "Target ads to a specific content genre." + // "Target ads to a specific content genre.", + // "Target ads to a specific YouTube video.", + // "Target ads to a specific YouTube channel.", + // "Target ads to a serve it in a certain position of a session. Only supported for the AdGroup of YouTube Programmatic Reservation line item." // ], // "location": "path", // "pattern": "^[^/]+$", @@ -27684,7 +29063,10 @@ func (c *AdvertisersLineItemsTargetingTypesAssignedTargetingOptionsCreateCall) D // "TARGETING_TYPE_NATIVE_CONTENT_POSITION", // "TARGETING_TYPE_OMID", // "TARGETING_TYPE_AUDIO_CONTENT_TYPE", - // "TARGETING_TYPE_CONTENT_GENRE" + // "TARGETING_TYPE_CONTENT_GENRE", + // "TARGETING_TYPE_YOUTUBE_VIDEO", + // "TARGETING_TYPE_YOUTUBE_CHANNEL", + // "TARGETING_TYPE_SESSION_POSITION" // ], // "enumDescriptions": [ // "Default value when type is not specified or is unknown in this version.", @@ -27732,7 +29114,10 @@ func (c *AdvertisersLineItemsTargetingTypesAssignedTargetingOptionsCreateCall) D // "Target ads to a specific native content position.", // "Target ads in an Open Measurement enabled inventory.", // "Target ads to a specific audio content type.", - // "Target ads to a specific content genre." + // "Target ads to a specific content genre.", + // "Target ads to a specific YouTube video.", + // "Target ads to a specific YouTube channel.", + // "Target ads to a serve it in a certain position of a session. Only supported for the AdGroup of YouTube Programmatic Reservation line item." // ], // "location": "path", // "pattern": "^[^/]+$", @@ -27960,7 +29345,10 @@ func (c *AdvertisersLineItemsTargetingTypesAssignedTargetingOptionsDeleteCall) D // "TARGETING_TYPE_NATIVE_CONTENT_POSITION", // "TARGETING_TYPE_OMID", // "TARGETING_TYPE_AUDIO_CONTENT_TYPE", - // "TARGETING_TYPE_CONTENT_GENRE" + // "TARGETING_TYPE_CONTENT_GENRE", + // "TARGETING_TYPE_YOUTUBE_VIDEO", + // "TARGETING_TYPE_YOUTUBE_CHANNEL", + // "TARGETING_TYPE_SESSION_POSITION" // ], // "enumDescriptions": [ // "Default value when type is not specified or is unknown in this version.", @@ -28008,7 +29396,10 @@ func (c *AdvertisersLineItemsTargetingTypesAssignedTargetingOptionsDeleteCall) D // "Target ads to a specific native content position.", // "Target ads in an Open Measurement enabled inventory.", // "Target ads to a specific audio content type.", - // "Target ads to a specific content genre." + // "Target ads to a specific content genre.", + // "Target ads to a specific YouTube video.", + // "Target ads to a specific YouTube channel.", + // "Target ads to a serve it in a certain position of a session. Only supported for the AdGroup of YouTube Programmatic Reservation line item." // ], // "location": "path", // "pattern": "^[^/]+$", @@ -28244,7 +29635,10 @@ func (c *AdvertisersLineItemsTargetingTypesAssignedTargetingOptionsGetCall) Do(o // "TARGETING_TYPE_NATIVE_CONTENT_POSITION", // "TARGETING_TYPE_OMID", // "TARGETING_TYPE_AUDIO_CONTENT_TYPE", - // "TARGETING_TYPE_CONTENT_GENRE" + // "TARGETING_TYPE_CONTENT_GENRE", + // "TARGETING_TYPE_YOUTUBE_VIDEO", + // "TARGETING_TYPE_YOUTUBE_CHANNEL", + // "TARGETING_TYPE_SESSION_POSITION" // ], // "enumDescriptions": [ // "Default value when type is not specified or is unknown in this version.", @@ -28292,7 +29686,10 @@ func (c *AdvertisersLineItemsTargetingTypesAssignedTargetingOptionsGetCall) Do(o // "Target ads to a specific native content position.", // "Target ads in an Open Measurement enabled inventory.", // "Target ads to a specific audio content type.", - // "Target ads to a specific content genre." + // "Target ads to a specific content genre.", + // "Target ads to a specific YouTube video.", + // "Target ads to a specific YouTube channel.", + // "Target ads to a serve it in a certain position of a session. Only supported for the AdGroup of YouTube Programmatic Reservation line item." // ], // "location": "path", // "pattern": "^[^/]+$", @@ -28583,7 +29980,10 @@ func (c *AdvertisersLineItemsTargetingTypesAssignedTargetingOptionsListCall) Do( // "TARGETING_TYPE_NATIVE_CONTENT_POSITION", // "TARGETING_TYPE_OMID", // "TARGETING_TYPE_AUDIO_CONTENT_TYPE", - // "TARGETING_TYPE_CONTENT_GENRE" + // "TARGETING_TYPE_CONTENT_GENRE", + // "TARGETING_TYPE_YOUTUBE_VIDEO", + // "TARGETING_TYPE_YOUTUBE_CHANNEL", + // "TARGETING_TYPE_SESSION_POSITION" // ], // "enumDescriptions": [ // "Default value when type is not specified or is unknown in this version.", @@ -28631,7 +30031,10 @@ func (c *AdvertisersLineItemsTargetingTypesAssignedTargetingOptionsListCall) Do( // "Target ads to a specific native content position.", // "Target ads in an Open Measurement enabled inventory.", // "Target ads to a specific audio content type.", - // "Target ads to a specific content genre." + // "Target ads to a specific content genre.", + // "Target ads to a specific YouTube video.", + // "Target ads to a specific YouTube channel.", + // "Target ads to a serve it in a certain position of a session. Only supported for the AdGroup of YouTube Programmatic Reservation line item." // ], // "location": "path", // "pattern": "^[^/]+$", @@ -33024,7 +34427,10 @@ func (c *AdvertisersTargetingTypesAssignedTargetingOptionsCreateCall) Do(opts .. // "TARGETING_TYPE_NATIVE_CONTENT_POSITION", // "TARGETING_TYPE_OMID", // "TARGETING_TYPE_AUDIO_CONTENT_TYPE", - // "TARGETING_TYPE_CONTENT_GENRE" + // "TARGETING_TYPE_CONTENT_GENRE", + // "TARGETING_TYPE_YOUTUBE_VIDEO", + // "TARGETING_TYPE_YOUTUBE_CHANNEL", + // "TARGETING_TYPE_SESSION_POSITION" // ], // "enumDescriptions": [ // "Default value when type is not specified or is unknown in this version.", @@ -33072,7 +34478,10 @@ func (c *AdvertisersTargetingTypesAssignedTargetingOptionsCreateCall) Do(opts .. // "Target ads to a specific native content position.", // "Target ads in an Open Measurement enabled inventory.", // "Target ads to a specific audio content type.", - // "Target ads to a specific content genre." + // "Target ads to a specific content genre.", + // "Target ads to a specific YouTube video.", + // "Target ads to a specific YouTube channel.", + // "Target ads to a serve it in a certain position of a session. Only supported for the AdGroup of YouTube Programmatic Reservation line item." // ], // "location": "path", // "pattern": "^[^/]+$", @@ -33285,7 +34694,10 @@ func (c *AdvertisersTargetingTypesAssignedTargetingOptionsDeleteCall) Do(opts .. // "TARGETING_TYPE_NATIVE_CONTENT_POSITION", // "TARGETING_TYPE_OMID", // "TARGETING_TYPE_AUDIO_CONTENT_TYPE", - // "TARGETING_TYPE_CONTENT_GENRE" + // "TARGETING_TYPE_CONTENT_GENRE", + // "TARGETING_TYPE_YOUTUBE_VIDEO", + // "TARGETING_TYPE_YOUTUBE_CHANNEL", + // "TARGETING_TYPE_SESSION_POSITION" // ], // "enumDescriptions": [ // "Default value when type is not specified or is unknown in this version.", @@ -33333,7 +34745,10 @@ func (c *AdvertisersTargetingTypesAssignedTargetingOptionsDeleteCall) Do(opts .. // "Target ads to a specific native content position.", // "Target ads in an Open Measurement enabled inventory.", // "Target ads to a specific audio content type.", - // "Target ads to a specific content genre." + // "Target ads to a specific content genre.", + // "Target ads to a specific YouTube video.", + // "Target ads to a specific YouTube channel.", + // "Target ads to a serve it in a certain position of a session. Only supported for the AdGroup of YouTube Programmatic Reservation line item." // ], // "location": "path", // "pattern": "^[^/]+$", @@ -33558,7 +34973,10 @@ func (c *AdvertisersTargetingTypesAssignedTargetingOptionsGetCall) Do(opts ...go // "TARGETING_TYPE_NATIVE_CONTENT_POSITION", // "TARGETING_TYPE_OMID", // "TARGETING_TYPE_AUDIO_CONTENT_TYPE", - // "TARGETING_TYPE_CONTENT_GENRE" + // "TARGETING_TYPE_CONTENT_GENRE", + // "TARGETING_TYPE_YOUTUBE_VIDEO", + // "TARGETING_TYPE_YOUTUBE_CHANNEL", + // "TARGETING_TYPE_SESSION_POSITION" // ], // "enumDescriptions": [ // "Default value when type is not specified or is unknown in this version.", @@ -33606,7 +35024,10 @@ func (c *AdvertisersTargetingTypesAssignedTargetingOptionsGetCall) Do(opts ...go // "Target ads to a specific native content position.", // "Target ads in an Open Measurement enabled inventory.", // "Target ads to a specific audio content type.", - // "Target ads to a specific content genre." + // "Target ads to a specific content genre.", + // "Target ads to a specific YouTube video.", + // "Target ads to a specific YouTube channel.", + // "Target ads to a serve it in a certain position of a session. Only supported for the AdGroup of YouTube Programmatic Reservation line item." // ], // "location": "path", // "pattern": "^[^/]+$", @@ -33883,7 +35304,10 @@ func (c *AdvertisersTargetingTypesAssignedTargetingOptionsListCall) Do(opts ...g // "TARGETING_TYPE_NATIVE_CONTENT_POSITION", // "TARGETING_TYPE_OMID", // "TARGETING_TYPE_AUDIO_CONTENT_TYPE", - // "TARGETING_TYPE_CONTENT_GENRE" + // "TARGETING_TYPE_CONTENT_GENRE", + // "TARGETING_TYPE_YOUTUBE_VIDEO", + // "TARGETING_TYPE_YOUTUBE_CHANNEL", + // "TARGETING_TYPE_SESSION_POSITION" // ], // "enumDescriptions": [ // "Default value when type is not specified or is unknown in this version.", @@ -33931,7 +35355,10 @@ func (c *AdvertisersTargetingTypesAssignedTargetingOptionsListCall) Do(opts ...g // "Target ads to a specific native content position.", // "Target ads in an Open Measurement enabled inventory.", // "Target ads to a specific audio content type.", - // "Target ads to a specific content genre." + // "Target ads to a specific content genre.", + // "Target ads to a specific YouTube video.", + // "Target ads to a specific YouTube channel.", + // "Target ads to a serve it in a certain position of a session. Only supported for the AdGroup of YouTube Programmatic Reservation line item." // ], // "location": "path", // "pattern": "^[^/]+$", @@ -33971,6 +35398,1727 @@ func (c *AdvertisersTargetingTypesAssignedTargetingOptionsListCall) Pages(ctx co } } +// method id "displayvideo.advertisers.youtubeAdGroupAds.get": + +type AdvertisersYoutubeAdGroupAdsGetCall struct { + s *Service + advertiserId int64 + youtubeAdGroupAdId int64 + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Gets a YouTube ad group ad. +// +// - advertiserId: The ID of the advertiser this ad group ad belongs to. +// - youtubeAdGroupAdId: The ID of the ad group ad to fetch. +func (r *AdvertisersYoutubeAdGroupAdsService) Get(advertiserId int64, youtubeAdGroupAdId int64) *AdvertisersYoutubeAdGroupAdsGetCall { + c := &AdvertisersYoutubeAdGroupAdsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.advertiserId = advertiserId + c.youtubeAdGroupAdId = youtubeAdGroupAdId + 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 *AdvertisersYoutubeAdGroupAdsGetCall) Fields(s ...googleapi.Field) *AdvertisersYoutubeAdGroupAdsGetCall { + 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 *AdvertisersYoutubeAdGroupAdsGetCall) IfNoneMatch(entityTag string) *AdvertisersYoutubeAdGroupAdsGetCall { + 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 *AdvertisersYoutubeAdGroupAdsGetCall) Context(ctx context.Context) *AdvertisersYoutubeAdGroupAdsGetCall { + 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 *AdvertisersYoutubeAdGroupAdsGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *AdvertisersYoutubeAdGroupAdsGetCall) 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/advertisers/{+advertiserId}/youtubeAdGroupAds/{+youtubeAdGroupAdId}") + 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{ + "advertiserId": strconv.FormatInt(c.advertiserId, 10), + "youtubeAdGroupAdId": strconv.FormatInt(c.youtubeAdGroupAdId, 10), + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "displayvideo.advertisers.youtubeAdGroupAds.get" call. +// Exactly one of *YoutubeAdGroupAd or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *YoutubeAdGroupAd.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 *AdvertisersYoutubeAdGroupAdsGetCall) Do(opts ...googleapi.CallOption) (*YoutubeAdGroupAd, 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 := &YoutubeAdGroupAd{ + 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 YouTube ad group ad.", + // "flatPath": "v2/advertisers/{advertisersId}/youtubeAdGroupAds/{youtubeAdGroupAdsId}", + // "httpMethod": "GET", + // "id": "displayvideo.advertisers.youtubeAdGroupAds.get", + // "parameterOrder": [ + // "advertiserId", + // "youtubeAdGroupAdId" + // ], + // "parameters": { + // "advertiserId": { + // "description": "Required. The ID of the advertiser this ad group ad belongs to.", + // "format": "int64", + // "location": "path", + // "pattern": "^[^/]+$", + // "required": true, + // "type": "string" + // }, + // "youtubeAdGroupAdId": { + // "description": "Required. The ID of the ad group ad to fetch.", + // "format": "int64", + // "location": "path", + // "pattern": "^[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2/advertisers/{+advertiserId}/youtubeAdGroupAds/{+youtubeAdGroupAdId}", + // "response": { + // "$ref": "YoutubeAdGroupAd" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/display-video" + // ] + // } + +} + +// method id "displayvideo.advertisers.youtubeAdGroupAds.list": + +type AdvertisersYoutubeAdGroupAdsListCall struct { + s *Service + advertiserId int64 + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// List: Lists YouTube ad group ads. +// +// - advertiserId: The ID of the advertiser the ad groups belongs to. +func (r *AdvertisersYoutubeAdGroupAdsService) List(advertiserId int64) *AdvertisersYoutubeAdGroupAdsListCall { + c := &AdvertisersYoutubeAdGroupAdsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.advertiserId = advertiserId + return c +} + +// Filter sets the optional parameter "filter": Allows filtering by +// custom YouTube ad group ad fields. Supported syntax: * Filter +// expressions are made up of one or more restrictions. * Restrictions +// can be combined by `AND` and `OR`. Only the restrictions for * the +// same field can be combined by `OR`. A sequence of restrictions * +// implicitly uses `AND`. * A restriction has the form of `{field} +// {operator} {value}`. * The operator must be `EQUALS (=)`. * Supported +// properties: - `adGroupId` - `displayName` - `entityStatus` - +// `adGroupAdId` Examples: * All ad group ads under an ad group: +// `adGroupId="1234" and its * entityStatus is `ENTITY_STATUS_ACTIVE` +// or `ENTITY_STATUS_PAUSED`: `(entityStatus="ENTITY_STATUS_ACTIVE" OR +// entityStatus="ENTITY_STATUS_PAUSED") AND adGroupId="12345" The +// length of this field should be no more than 500 characters. +func (c *AdvertisersYoutubeAdGroupAdsListCall) Filter(filter string) *AdvertisersYoutubeAdGroupAdsListCall { + c.urlParams_.Set("filter", filter) + return c +} + +// OrderBy sets the optional parameter "orderBy": Field by which to sort +// the list. Acceptable values are: * `displayName` (default) * +// `entityStatus` 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 *AdvertisersYoutubeAdGroupAdsListCall) OrderBy(orderBy string) *AdvertisersYoutubeAdGroupAdsListCall { + 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 *AdvertisersYoutubeAdGroupAdsListCall) PageSize(pageSize int64) *AdvertisersYoutubeAdGroupAdsListCall { + 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 `ListYoutubeAdGroupAds` method. If not specified, the first page +// of results will be returned. +func (c *AdvertisersYoutubeAdGroupAdsListCall) PageToken(pageToken string) *AdvertisersYoutubeAdGroupAdsListCall { + c.urlParams_.Set("pageToken", pageToken) + 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 *AdvertisersYoutubeAdGroupAdsListCall) Fields(s ...googleapi.Field) *AdvertisersYoutubeAdGroupAdsListCall { + 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 *AdvertisersYoutubeAdGroupAdsListCall) IfNoneMatch(entityTag string) *AdvertisersYoutubeAdGroupAdsListCall { + 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 *AdvertisersYoutubeAdGroupAdsListCall) Context(ctx context.Context) *AdvertisersYoutubeAdGroupAdsListCall { + 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 *AdvertisersYoutubeAdGroupAdsListCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *AdvertisersYoutubeAdGroupAdsListCall) 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/advertisers/{+advertiserId}/youtubeAdGroupAds") + 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{ + "advertiserId": strconv.FormatInt(c.advertiserId, 10), + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "displayvideo.advertisers.youtubeAdGroupAds.list" call. +// Exactly one of *ListYoutubeAdGroupAdsResponse or error will be +// non-nil. Any non-2xx status code is an error. Response headers are in +// either *ListYoutubeAdGroupAdsResponse.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 *AdvertisersYoutubeAdGroupAdsListCall) Do(opts ...googleapi.CallOption) (*ListYoutubeAdGroupAdsResponse, 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 := &ListYoutubeAdGroupAdsResponse{ + 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 YouTube ad group ads.", + // "flatPath": "v2/advertisers/{advertisersId}/youtubeAdGroupAds", + // "httpMethod": "GET", + // "id": "displayvideo.advertisers.youtubeAdGroupAds.list", + // "parameterOrder": [ + // "advertiserId" + // ], + // "parameters": { + // "advertiserId": { + // "description": "Required. The ID of the advertiser the ad groups belongs to.", + // "format": "int64", + // "location": "path", + // "pattern": "^[^/]+$", + // "required": true, + // "type": "string" + // }, + // "filter": { + // "description": "Allows filtering by custom YouTube ad group ad fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by `AND` and `OR`. Only the restrictions for * the same field can be combined by `OR`. A sequence of restrictions * implicitly uses `AND`. * A restriction has the form of `{field} {operator} {value}`. * The operator must be `EQUALS (=)`. * Supported properties: - `adGroupId` - `displayName` - `entityStatus` - `adGroupAdId` Examples: * All ad group ads under an ad group: `adGroupId=\"1234\"` and its * entityStatus is `ENTITY_STATUS_ACTIVE` or `ENTITY_STATUS_PAUSED`: `(entityStatus=\"ENTITY_STATUS_ACTIVE\" OR entityStatus=\"ENTITY_STATUS_PAUSED\") AND adGroupId=\"12345\"` The length of this field should be no more than 500 characters.", + // "location": "query", + // "type": "string" + // }, + // "orderBy": { + // "description": "Field by which to sort the list. Acceptable values are: * `displayName` (default) * `entityStatus` 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": "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": "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 `ListYoutubeAdGroupAds` method. If not specified, the first page of results will be returned.", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "v2/advertisers/{+advertiserId}/youtubeAdGroupAds", + // "response": { + // "$ref": "ListYoutubeAdGroupAdsResponse" + // }, + // "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 *AdvertisersYoutubeAdGroupAdsListCall) Pages(ctx context.Context, f func(*ListYoutubeAdGroupAdsResponse) 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.advertisers.youtubeAdGroups.bulkListAdGroupAssignedTargetingOptions": + +type AdvertisersYoutubeAdGroupsBulkListAdGroupAssignedTargetingOptionsCall struct { + s *Service + advertiserId int64 + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// BulkListAdGroupAssignedTargetingOptions: Lists assigned targeting +// options for multiple YouTube ad groups across targeting types. +// +// - advertiserId: The ID of the advertiser the line items belongs to. +func (r *AdvertisersYoutubeAdGroupsService) BulkListAdGroupAssignedTargetingOptions(advertiserId int64) *AdvertisersYoutubeAdGroupsBulkListAdGroupAssignedTargetingOptionsCall { + c := &AdvertisersYoutubeAdGroupsBulkListAdGroupAssignedTargetingOptionsCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.advertiserId = advertiserId + return c +} + +// Filter sets the optional parameter "filter": Allows filtering by +// assigned targeting option properties. Supported syntax: * Filter +// expressions are made up of one or more restrictions. * Restrictions +// can be combined by the logical operator `OR` on the same field. * A +// restriction has the form of `{field} {operator} {value}`. * The +// operator must be `EQUALS (=)`. * Supported fields: - `targetingType` +// Examples: * AssignedTargetingOptions of targeting type +// TARGETING_TYPE_YOUTUBE_VIDEO or TARGETING_TYPE_YOUTUBE_CHANNEL +// `targetingType="TARGETING_TYPE_YOUTUBE_VIDEO" OR +// targetingType="TARGETING_TYPE_YOUTUBE_CHANNEL" The length of this +// field should be no more than 500 characters. +func (c *AdvertisersYoutubeAdGroupsBulkListAdGroupAssignedTargetingOptionsCall) Filter(filter string) *AdvertisersYoutubeAdGroupsBulkListAdGroupAssignedTargetingOptionsCall { + c.urlParams_.Set("filter", filter) + return c +} + +// OrderBy sets the optional parameter "orderBy": Field by which to sort +// the list. Acceptable values are: * `youtubeAdGroupId` (default) * +// `assignedTargetingOption.targetingType` The default sorting order is +// ascending. To specify descending order for a field, a suffix "desc" +// should be added to the field name. Example: `targetingType desc`. +func (c *AdvertisersYoutubeAdGroupsBulkListAdGroupAssignedTargetingOptionsCall) OrderBy(orderBy string) *AdvertisersYoutubeAdGroupsBulkListAdGroupAssignedTargetingOptionsCall { + c.urlParams_.Set("orderBy", orderBy) + return c +} + +// PageSize sets the optional parameter "pageSize": Requested page size. +// The size must be an integer between `1` and `5000`. If unspecified, +// the default is '5000'. Returns error code `INVALID_ARGUMENT` if an +// invalid value is specified. +func (c *AdvertisersYoutubeAdGroupsBulkListAdGroupAssignedTargetingOptionsCall) PageSize(pageSize int64) *AdvertisersYoutubeAdGroupsBulkListAdGroupAssignedTargetingOptionsCall { + c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) + return c +} + +// PageToken sets the optional parameter "pageToken": A token that lets +// the client fetch the next page of results. Typically, this is the +// value of next_page_token returned from the previous call to the +// `BulkListAdGroupAssignedTargetingOptions` method. If not specified, +// the first page of results will be returned. +func (c *AdvertisersYoutubeAdGroupsBulkListAdGroupAssignedTargetingOptionsCall) PageToken(pageToken string) *AdvertisersYoutubeAdGroupsBulkListAdGroupAssignedTargetingOptionsCall { + c.urlParams_.Set("pageToken", pageToken) + return c +} + +// YoutubeAdGroupIds sets the optional parameter "youtubeAdGroupIds": +// Required. The IDs of the youtube ad groups to list assigned targeting +// options for. +func (c *AdvertisersYoutubeAdGroupsBulkListAdGroupAssignedTargetingOptionsCall) YoutubeAdGroupIds(youtubeAdGroupIds ...int64) *AdvertisersYoutubeAdGroupsBulkListAdGroupAssignedTargetingOptionsCall { + var youtubeAdGroupIds_ []string + for _, v := range youtubeAdGroupIds { + youtubeAdGroupIds_ = append(youtubeAdGroupIds_, fmt.Sprint(v)) + } + c.urlParams_.SetMulti("youtubeAdGroupIds", youtubeAdGroupIds_) + 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 *AdvertisersYoutubeAdGroupsBulkListAdGroupAssignedTargetingOptionsCall) Fields(s ...googleapi.Field) *AdvertisersYoutubeAdGroupsBulkListAdGroupAssignedTargetingOptionsCall { + 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 *AdvertisersYoutubeAdGroupsBulkListAdGroupAssignedTargetingOptionsCall) IfNoneMatch(entityTag string) *AdvertisersYoutubeAdGroupsBulkListAdGroupAssignedTargetingOptionsCall { + 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 *AdvertisersYoutubeAdGroupsBulkListAdGroupAssignedTargetingOptionsCall) Context(ctx context.Context) *AdvertisersYoutubeAdGroupsBulkListAdGroupAssignedTargetingOptionsCall { + 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 *AdvertisersYoutubeAdGroupsBulkListAdGroupAssignedTargetingOptionsCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *AdvertisersYoutubeAdGroupsBulkListAdGroupAssignedTargetingOptionsCall) 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/advertisers/{+advertiserId}/youtubeAdGroups:bulkListAdGroupAssignedTargetingOptions") + 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{ + "advertiserId": strconv.FormatInt(c.advertiserId, 10), + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "displayvideo.advertisers.youtubeAdGroups.bulkListAdGroupAssignedTargetingOptions" call. +// Exactly one of *BulkListAdGroupAssignedTargetingOptionsResponse or +// error will be non-nil. Any non-2xx status code is an error. Response +// headers are in either +// *BulkListAdGroupAssignedTargetingOptionsResponse.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 *AdvertisersYoutubeAdGroupsBulkListAdGroupAssignedTargetingOptionsCall) Do(opts ...googleapi.CallOption) (*BulkListAdGroupAssignedTargetingOptionsResponse, 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 := &BulkListAdGroupAssignedTargetingOptionsResponse{ + 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 assigned targeting options for multiple YouTube ad groups across targeting types.", + // "flatPath": "v2/advertisers/{advertisersId}/youtubeAdGroups:bulkListAdGroupAssignedTargetingOptions", + // "httpMethod": "GET", + // "id": "displayvideo.advertisers.youtubeAdGroups.bulkListAdGroupAssignedTargetingOptions", + // "parameterOrder": [ + // "advertiserId" + // ], + // "parameters": { + // "advertiserId": { + // "description": "Required. The ID of the advertiser the line items belongs to.", + // "format": "int64", + // "location": "path", + // "pattern": "^[^/]+$", + // "required": true, + // "type": "string" + // }, + // "filter": { + // "description": "Allows filtering by assigned targeting option properties. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by the logical operator `OR` on the same field. * A restriction has the form of `{field} {operator} {value}`. * The operator must be `EQUALS (=)`. * Supported fields: - `targetingType` Examples: * AssignedTargetingOptions of targeting type TARGETING_TYPE_YOUTUBE_VIDEO or TARGETING_TYPE_YOUTUBE_CHANNEL `targetingType=\"TARGETING_TYPE_YOUTUBE_VIDEO\" OR targetingType=\"TARGETING_TYPE_YOUTUBE_CHANNEL\"` The length of this field should be no more than 500 characters.", + // "location": "query", + // "type": "string" + // }, + // "orderBy": { + // "description": "Field by which to sort the list. Acceptable values are: * `youtubeAdGroupId` (default) * `assignedTargetingOption.targetingType` The default sorting order is ascending. To specify descending order for a field, a suffix \"desc\" should be added to the field name. Example: `targetingType desc`.", + // "location": "query", + // "type": "string" + // }, + // "pageSize": { + // "description": "Requested page size. The size must be an integer between `1` and `5000`. If unspecified, the default is '5000'. Returns error code `INVALID_ARGUMENT` if an invalid value is specified.", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "pageToken": { + // "description": "A token that lets the client fetch the next page of results. Typically, this is the value of next_page_token returned from the previous call to the `BulkListAdGroupAssignedTargetingOptions` method. If not specified, the first page of results will be returned.", + // "location": "query", + // "type": "string" + // }, + // "youtubeAdGroupIds": { + // "description": "Required. The IDs of the youtube ad groups to list assigned targeting options for.", + // "format": "int64", + // "location": "query", + // "repeated": true, + // "type": "string" + // } + // }, + // "path": "v2/advertisers/{+advertiserId}/youtubeAdGroups:bulkListAdGroupAssignedTargetingOptions", + // "response": { + // "$ref": "BulkListAdGroupAssignedTargetingOptionsResponse" + // }, + // "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 *AdvertisersYoutubeAdGroupsBulkListAdGroupAssignedTargetingOptionsCall) Pages(ctx context.Context, f func(*BulkListAdGroupAssignedTargetingOptionsResponse) 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.advertisers.youtubeAdGroups.get": + +type AdvertisersYoutubeAdGroupsGetCall struct { + s *Service + advertiserId int64 + youtubeAdGroupId int64 + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Gets a YouTube ad group. +// +// - advertiserId: The ID of the advertiser this ad group belongs to. +// - youtubeAdGroupId: The ID of the ad group to fetch. +func (r *AdvertisersYoutubeAdGroupsService) Get(advertiserId int64, youtubeAdGroupId int64) *AdvertisersYoutubeAdGroupsGetCall { + c := &AdvertisersYoutubeAdGroupsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.advertiserId = advertiserId + c.youtubeAdGroupId = youtubeAdGroupId + 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 *AdvertisersYoutubeAdGroupsGetCall) Fields(s ...googleapi.Field) *AdvertisersYoutubeAdGroupsGetCall { + 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 *AdvertisersYoutubeAdGroupsGetCall) IfNoneMatch(entityTag string) *AdvertisersYoutubeAdGroupsGetCall { + 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 *AdvertisersYoutubeAdGroupsGetCall) Context(ctx context.Context) *AdvertisersYoutubeAdGroupsGetCall { + 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 *AdvertisersYoutubeAdGroupsGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *AdvertisersYoutubeAdGroupsGetCall) 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/advertisers/{+advertiserId}/youtubeAdGroups/{+youtubeAdGroupId}") + 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{ + "advertiserId": strconv.FormatInt(c.advertiserId, 10), + "youtubeAdGroupId": strconv.FormatInt(c.youtubeAdGroupId, 10), + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "displayvideo.advertisers.youtubeAdGroups.get" call. +// Exactly one of *YoutubeAdGroup or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *YoutubeAdGroup.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 *AdvertisersYoutubeAdGroupsGetCall) Do(opts ...googleapi.CallOption) (*YoutubeAdGroup, 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 := &YoutubeAdGroup{ + 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 YouTube ad group.", + // "flatPath": "v2/advertisers/{advertisersId}/youtubeAdGroups/{youtubeAdGroupsId}", + // "httpMethod": "GET", + // "id": "displayvideo.advertisers.youtubeAdGroups.get", + // "parameterOrder": [ + // "advertiserId", + // "youtubeAdGroupId" + // ], + // "parameters": { + // "advertiserId": { + // "description": "Required. The ID of the advertiser this ad group belongs to.", + // "format": "int64", + // "location": "path", + // "pattern": "^[^/]+$", + // "required": true, + // "type": "string" + // }, + // "youtubeAdGroupId": { + // "description": "Required. The ID of the ad group to fetch.", + // "format": "int64", + // "location": "path", + // "pattern": "^[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2/advertisers/{+advertiserId}/youtubeAdGroups/{+youtubeAdGroupId}", + // "response": { + // "$ref": "YoutubeAdGroup" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/display-video" + // ] + // } + +} + +// method id "displayvideo.advertisers.youtubeAdGroups.list": + +type AdvertisersYoutubeAdGroupsListCall struct { + s *Service + advertiserId int64 + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// List: Lists YouTube ad groups. +// +// - advertiserId: The ID of the advertiser the ad groups belongs to. +func (r *AdvertisersYoutubeAdGroupsService) List(advertiserId int64) *AdvertisersYoutubeAdGroupsListCall { + c := &AdvertisersYoutubeAdGroupsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.advertiserId = advertiserId + return c +} + +// Filter sets the optional parameter "filter": Allows filtering by +// custom YouTube ad group fields. Supported syntax: * Filter +// expressions are made up of one or more restrictions. * Restrictions +// can be combined by `AND` and `OR`. Only the restrictions for * the +// same field can be combined by `OR`. A sequence of restrictions * +// implicitly uses `AND`. * A restriction has the form of `{field} +// {operator} {value}`. * The operator must be `EQUALS (=)`. * Supported +// properties: - `adGroupId` - `displayName` - `entityStatus` - +// `lineItemId` - `adGroupFormat` Examples: * All ad groups under an +// line item: `lineItemId="1234" * All `ENTITY_STATUS_ACTIVE` or +// `ENTITY_STATUS_PAUSED` and +// `YOUTUBE_AND_PARTNERS_AD_GROUP_FORMAT_IN_STREAM` ad groups under an +// advertiser: `(entityStatus="ENTITY_STATUS_ACTIVE" OR +// entityStatus="ENTITY_STATUS_PAUSED") AND +// adGroupFormat="YOUTUBE_AND_PARTNERS_AD_GROUP_FORMAT_IN_STREAM" The +// length of this field should be no more than 500 characters. +func (c *AdvertisersYoutubeAdGroupsListCall) Filter(filter string) *AdvertisersYoutubeAdGroupsListCall { + c.urlParams_.Set("filter", filter) + return c +} + +// OrderBy sets the optional parameter "orderBy": Field by which to sort +// the list. Acceptable values are: * `displayName` (default) * +// `entityStatus` 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 *AdvertisersYoutubeAdGroupsListCall) OrderBy(orderBy string) *AdvertisersYoutubeAdGroupsListCall { + c.urlParams_.Set("orderBy", orderBy) + return c +} + +// PageSize sets the optional parameter "pageSize": Requested page size. +// Must be between `1` and `200`. If unspecified will default to `100`. +// Returns error code `INVALID_ARGUMENT` if an invalid value is +// specified. +func (c *AdvertisersYoutubeAdGroupsListCall) PageSize(pageSize int64) *AdvertisersYoutubeAdGroupsListCall { + 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 `ListYoutubeAdGroups` method. If not specified, the first page of +// results will be returned. +func (c *AdvertisersYoutubeAdGroupsListCall) PageToken(pageToken string) *AdvertisersYoutubeAdGroupsListCall { + c.urlParams_.Set("pageToken", pageToken) + 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 *AdvertisersYoutubeAdGroupsListCall) Fields(s ...googleapi.Field) *AdvertisersYoutubeAdGroupsListCall { + 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 *AdvertisersYoutubeAdGroupsListCall) IfNoneMatch(entityTag string) *AdvertisersYoutubeAdGroupsListCall { + 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 *AdvertisersYoutubeAdGroupsListCall) Context(ctx context.Context) *AdvertisersYoutubeAdGroupsListCall { + 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 *AdvertisersYoutubeAdGroupsListCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *AdvertisersYoutubeAdGroupsListCall) 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/advertisers/{+advertiserId}/youtubeAdGroups") + 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{ + "advertiserId": strconv.FormatInt(c.advertiserId, 10), + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "displayvideo.advertisers.youtubeAdGroups.list" call. +// Exactly one of *ListYoutubeAdGroupsResponse or error will be non-nil. +// Any non-2xx status code is an error. Response headers are in either +// *ListYoutubeAdGroupsResponse.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 *AdvertisersYoutubeAdGroupsListCall) Do(opts ...googleapi.CallOption) (*ListYoutubeAdGroupsResponse, 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 := &ListYoutubeAdGroupsResponse{ + 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 YouTube ad groups.", + // "flatPath": "v2/advertisers/{advertisersId}/youtubeAdGroups", + // "httpMethod": "GET", + // "id": "displayvideo.advertisers.youtubeAdGroups.list", + // "parameterOrder": [ + // "advertiserId" + // ], + // "parameters": { + // "advertiserId": { + // "description": "Required. The ID of the advertiser the ad groups belongs to.", + // "format": "int64", + // "location": "path", + // "pattern": "^[^/]+$", + // "required": true, + // "type": "string" + // }, + // "filter": { + // "description": "Allows filtering by custom YouTube ad group fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by `AND` and `OR`. Only the restrictions for * the same field can be combined by `OR`. A sequence of restrictions * implicitly uses `AND`. * A restriction has the form of `{field} {operator} {value}`. * The operator must be `EQUALS (=)`. * Supported properties: - `adGroupId` - `displayName` - `entityStatus` - `lineItemId` - `adGroupFormat` Examples: * All ad groups under an line item: `lineItemId=\"1234\"` * All `ENTITY_STATUS_ACTIVE` or `ENTITY_STATUS_PAUSED` and `YOUTUBE_AND_PARTNERS_AD_GROUP_FORMAT_IN_STREAM` ad groups under an advertiser: `(entityStatus=\"ENTITY_STATUS_ACTIVE\" OR entityStatus=\"ENTITY_STATUS_PAUSED\") AND adGroupFormat=\"YOUTUBE_AND_PARTNERS_AD_GROUP_FORMAT_IN_STREAM\"` The length of this field should be no more than 500 characters.", + // "location": "query", + // "type": "string" + // }, + // "orderBy": { + // "description": "Field by which to sort the list. Acceptable values are: * `displayName` (default) * `entityStatus` 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": "Requested page size. Must be between `1` and `200`. 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": "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 `ListYoutubeAdGroups` method. If not specified, the first page of results will be returned.", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "v2/advertisers/{+advertiserId}/youtubeAdGroups", + // "response": { + // "$ref": "ListYoutubeAdGroupsResponse" + // }, + // "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 *AdvertisersYoutubeAdGroupsListCall) Pages(ctx context.Context, f func(*ListYoutubeAdGroupsResponse) 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.advertisers.youtubeAdGroups.targetingTypes.assignedTargetingOptions.get": + +type AdvertisersYoutubeAdGroupsTargetingTypesAssignedTargetingOptionsGetCall struct { + s *Service + advertiserId int64 + youtubeAdGroupId int64 + targetingType string + assignedTargetingOptionId string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Gets a single targeting option assigned to a YouTube ad group. +// Inherited targeting is not included. +// +// - advertiserId: The ID of the advertiser the ad group belongs to. +// - assignedTargetingOptionId: An identifier unique to the targeting +// type in this line item that identifies the assigned targeting +// option being requested. +// - targetingType: Identifies the type of this assigned targeting +// option. Supported targeting types include: * +// `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_AGE_RANGE` * +// `TARGETING_TYPE_PARENTAL_STATUS` * +// `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_AUDIENCE_GROUP` +// - `TARGETING_TYPE_URL` * `TARGETING_TYPE_APP` * +// `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_KEYWORD` * +// `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_SESSION_POSITION` * +// `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO`. +// - youtubeAdGroupId: The ID of the ad group the assigned targeting +// option belongs to. +func (r *AdvertisersYoutubeAdGroupsTargetingTypesAssignedTargetingOptionsService) Get(advertiserId int64, youtubeAdGroupId int64, targetingType string, assignedTargetingOptionId string) *AdvertisersYoutubeAdGroupsTargetingTypesAssignedTargetingOptionsGetCall { + c := &AdvertisersYoutubeAdGroupsTargetingTypesAssignedTargetingOptionsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.advertiserId = advertiserId + c.youtubeAdGroupId = youtubeAdGroupId + c.targetingType = targetingType + c.assignedTargetingOptionId = assignedTargetingOptionId + 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 *AdvertisersYoutubeAdGroupsTargetingTypesAssignedTargetingOptionsGetCall) Fields(s ...googleapi.Field) *AdvertisersYoutubeAdGroupsTargetingTypesAssignedTargetingOptionsGetCall { + 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 *AdvertisersYoutubeAdGroupsTargetingTypesAssignedTargetingOptionsGetCall) IfNoneMatch(entityTag string) *AdvertisersYoutubeAdGroupsTargetingTypesAssignedTargetingOptionsGetCall { + 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 *AdvertisersYoutubeAdGroupsTargetingTypesAssignedTargetingOptionsGetCall) Context(ctx context.Context) *AdvertisersYoutubeAdGroupsTargetingTypesAssignedTargetingOptionsGetCall { + 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 *AdvertisersYoutubeAdGroupsTargetingTypesAssignedTargetingOptionsGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *AdvertisersYoutubeAdGroupsTargetingTypesAssignedTargetingOptionsGetCall) 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/advertisers/{+advertiserId}/youtubeAdGroups/{+youtubeAdGroupId}/targetingTypes/{+targetingType}/assignedTargetingOptions/{+assignedTargetingOptionId}") + 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{ + "advertiserId": strconv.FormatInt(c.advertiserId, 10), + "youtubeAdGroupId": strconv.FormatInt(c.youtubeAdGroupId, 10), + "targetingType": c.targetingType, + "assignedTargetingOptionId": c.assignedTargetingOptionId, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "displayvideo.advertisers.youtubeAdGroups.targetingTypes.assignedTargetingOptions.get" call. +// Exactly one of *AssignedTargetingOption or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *AssignedTargetingOption.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 *AdvertisersYoutubeAdGroupsTargetingTypesAssignedTargetingOptionsGetCall) Do(opts ...googleapi.CallOption) (*AssignedTargetingOption, 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 := &AssignedTargetingOption{ + 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 single targeting option assigned to a YouTube ad group. Inherited targeting is not included.", + // "flatPath": "v2/advertisers/{advertisersId}/youtubeAdGroups/{youtubeAdGroupsId}/targetingTypes/{targetingTypesId}/assignedTargetingOptions/{assignedTargetingOptionsId}", + // "httpMethod": "GET", + // "id": "displayvideo.advertisers.youtubeAdGroups.targetingTypes.assignedTargetingOptions.get", + // "parameterOrder": [ + // "advertiserId", + // "youtubeAdGroupId", + // "targetingType", + // "assignedTargetingOptionId" + // ], + // "parameters": { + // "advertiserId": { + // "description": "Required. The ID of the advertiser the ad group belongs to.", + // "format": "int64", + // "location": "path", + // "pattern": "^[^/]+$", + // "required": true, + // "type": "string" + // }, + // "assignedTargetingOptionId": { + // "description": "Required. An identifier unique to the targeting type in this line item that identifies the assigned targeting option being requested.", + // "location": "path", + // "pattern": "^[^/]+$", + // "required": true, + // "type": "string" + // }, + // "targetingType": { + // "description": "Required. Identifies the type of this assigned targeting option. Supported targeting types include: * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_SESSION_POSITION` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO`", + // "enum": [ + // "TARGETING_TYPE_UNSPECIFIED", + // "TARGETING_TYPE_CHANNEL", + // "TARGETING_TYPE_APP_CATEGORY", + // "TARGETING_TYPE_APP", + // "TARGETING_TYPE_URL", + // "TARGETING_TYPE_DAY_AND_TIME", + // "TARGETING_TYPE_AGE_RANGE", + // "TARGETING_TYPE_REGIONAL_LOCATION_LIST", + // "TARGETING_TYPE_PROXIMITY_LOCATION_LIST", + // "TARGETING_TYPE_GENDER", + // "TARGETING_TYPE_VIDEO_PLAYER_SIZE", + // "TARGETING_TYPE_USER_REWARDED_CONTENT", + // "TARGETING_TYPE_PARENTAL_STATUS", + // "TARGETING_TYPE_CONTENT_INSTREAM_POSITION", + // "TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION", + // "TARGETING_TYPE_DEVICE_TYPE", + // "TARGETING_TYPE_AUDIENCE_GROUP", + // "TARGETING_TYPE_BROWSER", + // "TARGETING_TYPE_HOUSEHOLD_INCOME", + // "TARGETING_TYPE_ON_SCREEN_POSITION", + // "TARGETING_TYPE_THIRD_PARTY_VERIFIER", + // "TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION", + // "TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION", + // "TARGETING_TYPE_ENVIRONMENT", + // "TARGETING_TYPE_CARRIER_AND_ISP", + // "TARGETING_TYPE_OPERATING_SYSTEM", + // "TARGETING_TYPE_DEVICE_MAKE_MODEL", + // "TARGETING_TYPE_KEYWORD", + // "TARGETING_TYPE_NEGATIVE_KEYWORD_LIST", + // "TARGETING_TYPE_VIEWABILITY", + // "TARGETING_TYPE_CATEGORY", + // "TARGETING_TYPE_INVENTORY_SOURCE", + // "TARGETING_TYPE_LANGUAGE", + // "TARGETING_TYPE_AUTHORIZED_SELLER_STATUS", + // "TARGETING_TYPE_GEO_REGION", + // "TARGETING_TYPE_INVENTORY_SOURCE_GROUP", + // "TARGETING_TYPE_EXCHANGE", + // "TARGETING_TYPE_SUB_EXCHANGE", + // "TARGETING_TYPE_POI", + // "TARGETING_TYPE_BUSINESS_CHAIN", + // "TARGETING_TYPE_CONTENT_DURATION", + // "TARGETING_TYPE_CONTENT_STREAM_TYPE", + // "TARGETING_TYPE_NATIVE_CONTENT_POSITION", + // "TARGETING_TYPE_OMID", + // "TARGETING_TYPE_AUDIO_CONTENT_TYPE", + // "TARGETING_TYPE_CONTENT_GENRE", + // "TARGETING_TYPE_YOUTUBE_VIDEO", + // "TARGETING_TYPE_YOUTUBE_CHANNEL", + // "TARGETING_TYPE_SESSION_POSITION" + // ], + // "enumDescriptions": [ + // "Default value when type is not specified or is unknown in this version.", + // "Target a channel (a custom group of related websites or apps).", + // "Target an app category (for example, education or puzzle games).", + // "Target a specific app (for example, Angry Birds).", + // "Target a specific url (for example, quora.com).", + // "Target ads during a chosen time period on a specific day.", + // "Target ads to a specific age range (for example, 18-24).", + // "Target ads to the specified regions on a regional location list.", + // "Target ads to the specified points of interest on a proximity location list.", + // "Target ads to a specific gender (for example, female or male).", + // "Target a specific video player size for video ads.", + // "Target user rewarded content for video ads.", + // "Target ads to a specific parental status (for example, parent or not a parent).", + // "Target video or audio ads in a specific content instream position (for example, pre-roll, mid-roll, or post-roll).", + // "Target ads in a specific content outstream position.", + // "Target ads to a specific device type (for example, tablet or connected TV).", + // "Target ads to an audience or groups of audiences. Singleton field, at most one can exist on a single Lineitem at a time.", + // "Target ads to specific web browsers (for example, Chrome).", + // "Target ads to a specific household income range (for example, top 10%).", + // "Target ads in a specific on screen position.", + // "Filter web sites through third party verification (for example, IAS or DoubleVerify).", + // "Filter web sites by specific digital content label ratings (for example, DL-MA: suitable only for mature audiences).", + // "Filter website content by sensitive categories (for example, adult).", + // "Target ads to a specific environment (for example, web or app).", + // "Target ads to a specific network carrier or internet service provider (ISP) (for example, Comcast or Orange).", + // "Target ads to a specific operating system (for example, macOS).", + // "Target ads to a specific device make or model (for example, Roku or Samsung).", + // "Target ads to a specific keyword (for example, dog or retriever).", + // "Target ads to a specific negative keyword list.", + // "Target ads to a specific viewability (for example, 80% viewable).", + // "Target ads to a specific content category (for example, arts \u0026 entertainment).", + // "Purchase impressions from specific deals and auction packages.", + // "Target ads to a specific language (for example, English or Japanese).", + // "Target ads to ads.txt authorized sellers.", + // "Target ads to a specific regional location (for example, a city or state).", + // "Purchase impressions from a group of deals and auction packages.", + // "Purchase impressions from specific exchanges.", + // "Purchase impressions from specific sub-exchanges.", + // "Target ads around a specific point of interest, such as a notable building, a street address, or latitude/longitude coordinates.", + // "Target ads around locations of a business chain within a specific geo region.", + // "Target ads to a specific video content duration.", + // "Target ads to a specific video content stream type.", + // "Target ads to a specific native content position.", + // "Target ads in an Open Measurement enabled inventory.", + // "Target ads to a specific audio content type.", + // "Target ads to a specific content genre.", + // "Target ads to a specific YouTube video.", + // "Target ads to a specific YouTube channel.", + // "Target ads to a serve it in a certain position of a session. Only supported for the AdGroup of YouTube Programmatic Reservation line item." + // ], + // "location": "path", + // "pattern": "^[^/]+$", + // "required": true, + // "type": "string" + // }, + // "youtubeAdGroupId": { + // "description": "Required. The ID of the ad group the assigned targeting option belongs to.", + // "format": "int64", + // "location": "path", + // "pattern": "^[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2/advertisers/{+advertiserId}/youtubeAdGroups/{+youtubeAdGroupId}/targetingTypes/{+targetingType}/assignedTargetingOptions/{+assignedTargetingOptionId}", + // "response": { + // "$ref": "AssignedTargetingOption" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/display-video" + // ] + // } + +} + +// method id "displayvideo.advertisers.youtubeAdGroups.targetingTypes.assignedTargetingOptions.list": + +type AdvertisersYoutubeAdGroupsTargetingTypesAssignedTargetingOptionsListCall struct { + s *Service + advertiserId int64 + youtubeAdGroupId int64 + targetingType string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// List: Lists the targeting options assigned to a YouTube ad group. +// Inherited targeting is not included. +// +// - advertiserId: The ID of the advertiser the ad group belongs to. +// - targetingType: Identifies the type of assigned targeting options to +// list. Supported targeting types include: * `TARGETING_TYPE_GENDER` +// - `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_PARENTAL_STATUS` * +// `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_AUDIENCE_GROUP` +// - `TARGETING_TYPE_URL` * `TARGETING_TYPE_APP` * +// `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_KEYWORD` * +// `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_SESSION_POSITION` * +// `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO`. +// - youtubeAdGroupId: The ID of the ad group to list assigned targeting +// options for. +func (r *AdvertisersYoutubeAdGroupsTargetingTypesAssignedTargetingOptionsService) List(advertiserId int64, youtubeAdGroupId int64, targetingType string) *AdvertisersYoutubeAdGroupsTargetingTypesAssignedTargetingOptionsListCall { + c := &AdvertisersYoutubeAdGroupsTargetingTypesAssignedTargetingOptionsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.advertiserId = advertiserId + c.youtubeAdGroupId = youtubeAdGroupId + c.targetingType = targetingType + return c +} + +// Filter sets the optional parameter "filter": Allows filtering by +// assigned targeting option properties. Supported syntax: * Filter +// expressions are made up of one or more restrictions. * Restrictions +// can be combined by the logical operator `OR`. * A restriction has the +// form of `{field} {operator} {value}`. * The operator must be `EQUALS +// (=)`. * Supported fields: - `assignedTargetingOptionId` Examples: * +// AssignedTargetingOptions with ID 1 or 2 +// `assignedTargetingOptionId="1" OR assignedTargetingOptionId="2" The +// length of this field should be no more than 500 characters. +func (c *AdvertisersYoutubeAdGroupsTargetingTypesAssignedTargetingOptionsListCall) Filter(filter string) *AdvertisersYoutubeAdGroupsTargetingTypesAssignedTargetingOptionsListCall { + c.urlParams_.Set("filter", filter) + return c +} + +// OrderBy sets the optional parameter "orderBy": Field by which to sort +// the list. Acceptable values are: * `assignedTargetingOptionId` +// (default) The default sorting order is ascending. To specify +// descending order for a field, a suffix "desc" should be added to the +// field name. Example: `assignedTargetingOptionId desc`. +func (c *AdvertisersYoutubeAdGroupsTargetingTypesAssignedTargetingOptionsListCall) OrderBy(orderBy string) *AdvertisersYoutubeAdGroupsTargetingTypesAssignedTargetingOptionsListCall { + c.urlParams_.Set("orderBy", orderBy) + return c +} + +// PageSize sets the optional parameter "pageSize": Requested page size. +// Must be between `1` and `5000`. If unspecified will default to `100`. +// Returns error code `INVALID_ARGUMENT` if an invalid value is +// specified. +func (c *AdvertisersYoutubeAdGroupsTargetingTypesAssignedTargetingOptionsListCall) PageSize(pageSize int64) *AdvertisersYoutubeAdGroupsTargetingTypesAssignedTargetingOptionsListCall { + 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 `ListYoutubeAdGroupAssignedTargetingOptions` method. If not +// specified, the first page of results will be returned. +func (c *AdvertisersYoutubeAdGroupsTargetingTypesAssignedTargetingOptionsListCall) PageToken(pageToken string) *AdvertisersYoutubeAdGroupsTargetingTypesAssignedTargetingOptionsListCall { + c.urlParams_.Set("pageToken", pageToken) + 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 *AdvertisersYoutubeAdGroupsTargetingTypesAssignedTargetingOptionsListCall) Fields(s ...googleapi.Field) *AdvertisersYoutubeAdGroupsTargetingTypesAssignedTargetingOptionsListCall { + 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 *AdvertisersYoutubeAdGroupsTargetingTypesAssignedTargetingOptionsListCall) IfNoneMatch(entityTag string) *AdvertisersYoutubeAdGroupsTargetingTypesAssignedTargetingOptionsListCall { + 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 *AdvertisersYoutubeAdGroupsTargetingTypesAssignedTargetingOptionsListCall) Context(ctx context.Context) *AdvertisersYoutubeAdGroupsTargetingTypesAssignedTargetingOptionsListCall { + 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 *AdvertisersYoutubeAdGroupsTargetingTypesAssignedTargetingOptionsListCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *AdvertisersYoutubeAdGroupsTargetingTypesAssignedTargetingOptionsListCall) 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/advertisers/{+advertiserId}/youtubeAdGroups/{+youtubeAdGroupId}/targetingTypes/{+targetingType}/assignedTargetingOptions") + 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{ + "advertiserId": strconv.FormatInt(c.advertiserId, 10), + "youtubeAdGroupId": strconv.FormatInt(c.youtubeAdGroupId, 10), + "targetingType": c.targetingType, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "displayvideo.advertisers.youtubeAdGroups.targetingTypes.assignedTargetingOptions.list" call. +// Exactly one of *ListYoutubeAdGroupAssignedTargetingOptionsResponse or +// error will be non-nil. Any non-2xx status code is an error. Response +// headers are in either +// *ListYoutubeAdGroupAssignedTargetingOptionsResponse.ServerResponse.Hea +// der 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 *AdvertisersYoutubeAdGroupsTargetingTypesAssignedTargetingOptionsListCall) Do(opts ...googleapi.CallOption) (*ListYoutubeAdGroupAssignedTargetingOptionsResponse, 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 := &ListYoutubeAdGroupAssignedTargetingOptionsResponse{ + 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 the targeting options assigned to a YouTube ad group. Inherited targeting is not included.", + // "flatPath": "v2/advertisers/{advertisersId}/youtubeAdGroups/{youtubeAdGroupsId}/targetingTypes/{targetingTypesId}/assignedTargetingOptions", + // "httpMethod": "GET", + // "id": "displayvideo.advertisers.youtubeAdGroups.targetingTypes.assignedTargetingOptions.list", + // "parameterOrder": [ + // "advertiserId", + // "youtubeAdGroupId", + // "targetingType" + // ], + // "parameters": { + // "advertiserId": { + // "description": "Required. The ID of the advertiser the ad group belongs to.", + // "format": "int64", + // "location": "path", + // "pattern": "^[^/]+$", + // "required": true, + // "type": "string" + // }, + // "filter": { + // "description": "Allows filtering by assigned targeting option properties. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by the logical operator `OR`. * A restriction has the form of `{field} {operator} {value}`. * The operator must be `EQUALS (=)`. * Supported fields: - `assignedTargetingOptionId` Examples: * AssignedTargetingOptions with ID 1 or 2 `assignedTargetingOptionId=\"1\" OR assignedTargetingOptionId=\"2\"` The length of this field should be no more than 500 characters.", + // "location": "query", + // "type": "string" + // }, + // "orderBy": { + // "description": "Field by which to sort the list. Acceptable values are: * `assignedTargetingOptionId` (default) The default sorting order is ascending. To specify descending order for a field, a suffix \"desc\" should be added to the field name. Example: `assignedTargetingOptionId desc`.", + // "location": "query", + // "type": "string" + // }, + // "pageSize": { + // "description": "Requested page size. Must be between `1` and `5000`. 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": "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 `ListYoutubeAdGroupAssignedTargetingOptions` method. If not specified, the first page of results will be returned.", + // "location": "query", + // "type": "string" + // }, + // "targetingType": { + // "description": "Required. Identifies the type of assigned targeting options to list. Supported targeting types include: * `TARGETING_TYPE_GENDER` * `TARGETING_TYPE_AGE_RANGE` * `TARGETING_TYPE_PARENTAL_STATUS` * `TARGETING_TYPE_HOUSEHOLD_INCOME` * `TARGETING_TYPE_AUDIENCE_GROUP` * `TARGETING_TYPE_URL` * `TARGETING_TYPE_APP` * `TARGETING_TYPE_APP_CATEGORY` * `TARGETING_TYPE_KEYWORD` * `TARGETING_TYPE_CATEGORY` * `TARGETING_TYPE_SESSION_POSITION` * `TARGETING_TYPE_YOUTUBE_CHANNEL` * `TARGETING_TYPE_YOUTUBE_VIDEO`", + // "enum": [ + // "TARGETING_TYPE_UNSPECIFIED", + // "TARGETING_TYPE_CHANNEL", + // "TARGETING_TYPE_APP_CATEGORY", + // "TARGETING_TYPE_APP", + // "TARGETING_TYPE_URL", + // "TARGETING_TYPE_DAY_AND_TIME", + // "TARGETING_TYPE_AGE_RANGE", + // "TARGETING_TYPE_REGIONAL_LOCATION_LIST", + // "TARGETING_TYPE_PROXIMITY_LOCATION_LIST", + // "TARGETING_TYPE_GENDER", + // "TARGETING_TYPE_VIDEO_PLAYER_SIZE", + // "TARGETING_TYPE_USER_REWARDED_CONTENT", + // "TARGETING_TYPE_PARENTAL_STATUS", + // "TARGETING_TYPE_CONTENT_INSTREAM_POSITION", + // "TARGETING_TYPE_CONTENT_OUTSTREAM_POSITION", + // "TARGETING_TYPE_DEVICE_TYPE", + // "TARGETING_TYPE_AUDIENCE_GROUP", + // "TARGETING_TYPE_BROWSER", + // "TARGETING_TYPE_HOUSEHOLD_INCOME", + // "TARGETING_TYPE_ON_SCREEN_POSITION", + // "TARGETING_TYPE_THIRD_PARTY_VERIFIER", + // "TARGETING_TYPE_DIGITAL_CONTENT_LABEL_EXCLUSION", + // "TARGETING_TYPE_SENSITIVE_CATEGORY_EXCLUSION", + // "TARGETING_TYPE_ENVIRONMENT", + // "TARGETING_TYPE_CARRIER_AND_ISP", + // "TARGETING_TYPE_OPERATING_SYSTEM", + // "TARGETING_TYPE_DEVICE_MAKE_MODEL", + // "TARGETING_TYPE_KEYWORD", + // "TARGETING_TYPE_NEGATIVE_KEYWORD_LIST", + // "TARGETING_TYPE_VIEWABILITY", + // "TARGETING_TYPE_CATEGORY", + // "TARGETING_TYPE_INVENTORY_SOURCE", + // "TARGETING_TYPE_LANGUAGE", + // "TARGETING_TYPE_AUTHORIZED_SELLER_STATUS", + // "TARGETING_TYPE_GEO_REGION", + // "TARGETING_TYPE_INVENTORY_SOURCE_GROUP", + // "TARGETING_TYPE_EXCHANGE", + // "TARGETING_TYPE_SUB_EXCHANGE", + // "TARGETING_TYPE_POI", + // "TARGETING_TYPE_BUSINESS_CHAIN", + // "TARGETING_TYPE_CONTENT_DURATION", + // "TARGETING_TYPE_CONTENT_STREAM_TYPE", + // "TARGETING_TYPE_NATIVE_CONTENT_POSITION", + // "TARGETING_TYPE_OMID", + // "TARGETING_TYPE_AUDIO_CONTENT_TYPE", + // "TARGETING_TYPE_CONTENT_GENRE", + // "TARGETING_TYPE_YOUTUBE_VIDEO", + // "TARGETING_TYPE_YOUTUBE_CHANNEL", + // "TARGETING_TYPE_SESSION_POSITION" + // ], + // "enumDescriptions": [ + // "Default value when type is not specified or is unknown in this version.", + // "Target a channel (a custom group of related websites or apps).", + // "Target an app category (for example, education or puzzle games).", + // "Target a specific app (for example, Angry Birds).", + // "Target a specific url (for example, quora.com).", + // "Target ads during a chosen time period on a specific day.", + // "Target ads to a specific age range (for example, 18-24).", + // "Target ads to the specified regions on a regional location list.", + // "Target ads to the specified points of interest on a proximity location list.", + // "Target ads to a specific gender (for example, female or male).", + // "Target a specific video player size for video ads.", + // "Target user rewarded content for video ads.", + // "Target ads to a specific parental status (for example, parent or not a parent).", + // "Target video or audio ads in a specific content instream position (for example, pre-roll, mid-roll, or post-roll).", + // "Target ads in a specific content outstream position.", + // "Target ads to a specific device type (for example, tablet or connected TV).", + // "Target ads to an audience or groups of audiences. Singleton field, at most one can exist on a single Lineitem at a time.", + // "Target ads to specific web browsers (for example, Chrome).", + // "Target ads to a specific household income range (for example, top 10%).", + // "Target ads in a specific on screen position.", + // "Filter web sites through third party verification (for example, IAS or DoubleVerify).", + // "Filter web sites by specific digital content label ratings (for example, DL-MA: suitable only for mature audiences).", + // "Filter website content by sensitive categories (for example, adult).", + // "Target ads to a specific environment (for example, web or app).", + // "Target ads to a specific network carrier or internet service provider (ISP) (for example, Comcast or Orange).", + // "Target ads to a specific operating system (for example, macOS).", + // "Target ads to a specific device make or model (for example, Roku or Samsung).", + // "Target ads to a specific keyword (for example, dog or retriever).", + // "Target ads to a specific negative keyword list.", + // "Target ads to a specific viewability (for example, 80% viewable).", + // "Target ads to a specific content category (for example, arts \u0026 entertainment).", + // "Purchase impressions from specific deals and auction packages.", + // "Target ads to a specific language (for example, English or Japanese).", + // "Target ads to ads.txt authorized sellers.", + // "Target ads to a specific regional location (for example, a city or state).", + // "Purchase impressions from a group of deals and auction packages.", + // "Purchase impressions from specific exchanges.", + // "Purchase impressions from specific sub-exchanges.", + // "Target ads around a specific point of interest, such as a notable building, a street address, or latitude/longitude coordinates.", + // "Target ads around locations of a business chain within a specific geo region.", + // "Target ads to a specific video content duration.", + // "Target ads to a specific video content stream type.", + // "Target ads to a specific native content position.", + // "Target ads in an Open Measurement enabled inventory.", + // "Target ads to a specific audio content type.", + // "Target ads to a specific content genre.", + // "Target ads to a specific YouTube video.", + // "Target ads to a specific YouTube channel.", + // "Target ads to a serve it in a certain position of a session. Only supported for the AdGroup of YouTube Programmatic Reservation line item." + // ], + // "location": "path", + // "pattern": "^[^/]+$", + // "required": true, + // "type": "string" + // }, + // "youtubeAdGroupId": { + // "description": "Required. The ID of the ad group to list assigned targeting options for.", + // "format": "int64", + // "location": "path", + // "pattern": "^[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2/advertisers/{+advertiserId}/youtubeAdGroups/{+youtubeAdGroupId}/targetingTypes/{+targetingType}/assignedTargetingOptions", + // "response": { + // "$ref": "ListYoutubeAdGroupAssignedTargetingOptionsResponse" + // }, + // "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 *AdvertisersYoutubeAdGroupsTargetingTypesAssignedTargetingOptionsListCall) Pages(ctx context.Context, f func(*ListYoutubeAdGroupAssignedTargetingOptionsResponse) 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.combinedAudiences.get": type CombinedAudiencesGetCall struct { @@ -44130,7 +47278,10 @@ func (c *PartnersTargetingTypesAssignedTargetingOptionsCreateCall) Do(opts ...go // "TARGETING_TYPE_NATIVE_CONTENT_POSITION", // "TARGETING_TYPE_OMID", // "TARGETING_TYPE_AUDIO_CONTENT_TYPE", - // "TARGETING_TYPE_CONTENT_GENRE" + // "TARGETING_TYPE_CONTENT_GENRE", + // "TARGETING_TYPE_YOUTUBE_VIDEO", + // "TARGETING_TYPE_YOUTUBE_CHANNEL", + // "TARGETING_TYPE_SESSION_POSITION" // ], // "enumDescriptions": [ // "Default value when type is not specified or is unknown in this version.", @@ -44178,7 +47329,10 @@ func (c *PartnersTargetingTypesAssignedTargetingOptionsCreateCall) Do(opts ...go // "Target ads to a specific native content position.", // "Target ads in an Open Measurement enabled inventory.", // "Target ads to a specific audio content type.", - // "Target ads to a specific content genre." + // "Target ads to a specific content genre.", + // "Target ads to a specific YouTube video.", + // "Target ads to a specific YouTube channel.", + // "Target ads to a serve it in a certain position of a session. Only supported for the AdGroup of YouTube Programmatic Reservation line item." // ], // "location": "path", // "pattern": "^[^/]+$", @@ -44388,7 +47542,10 @@ func (c *PartnersTargetingTypesAssignedTargetingOptionsDeleteCall) Do(opts ...go // "TARGETING_TYPE_NATIVE_CONTENT_POSITION", // "TARGETING_TYPE_OMID", // "TARGETING_TYPE_AUDIO_CONTENT_TYPE", - // "TARGETING_TYPE_CONTENT_GENRE" + // "TARGETING_TYPE_CONTENT_GENRE", + // "TARGETING_TYPE_YOUTUBE_VIDEO", + // "TARGETING_TYPE_YOUTUBE_CHANNEL", + // "TARGETING_TYPE_SESSION_POSITION" // ], // "enumDescriptions": [ // "Default value when type is not specified or is unknown in this version.", @@ -44436,7 +47593,10 @@ func (c *PartnersTargetingTypesAssignedTargetingOptionsDeleteCall) Do(opts ...go // "Target ads to a specific native content position.", // "Target ads in an Open Measurement enabled inventory.", // "Target ads to a specific audio content type.", - // "Target ads to a specific content genre." + // "Target ads to a specific content genre.", + // "Target ads to a specific YouTube video.", + // "Target ads to a specific YouTube channel.", + // "Target ads to a serve it in a certain position of a session. Only supported for the AdGroup of YouTube Programmatic Reservation line item." // ], // "location": "path", // "pattern": "^[^/]+$", @@ -44658,7 +47818,10 @@ func (c *PartnersTargetingTypesAssignedTargetingOptionsGetCall) Do(opts ...googl // "TARGETING_TYPE_NATIVE_CONTENT_POSITION", // "TARGETING_TYPE_OMID", // "TARGETING_TYPE_AUDIO_CONTENT_TYPE", - // "TARGETING_TYPE_CONTENT_GENRE" + // "TARGETING_TYPE_CONTENT_GENRE", + // "TARGETING_TYPE_YOUTUBE_VIDEO", + // "TARGETING_TYPE_YOUTUBE_CHANNEL", + // "TARGETING_TYPE_SESSION_POSITION" // ], // "enumDescriptions": [ // "Default value when type is not specified or is unknown in this version.", @@ -44706,7 +47869,10 @@ func (c *PartnersTargetingTypesAssignedTargetingOptionsGetCall) Do(opts ...googl // "Target ads to a specific native content position.", // "Target ads in an Open Measurement enabled inventory.", // "Target ads to a specific audio content type.", - // "Target ads to a specific content genre." + // "Target ads to a specific content genre.", + // "Target ads to a specific YouTube video.", + // "Target ads to a specific YouTube channel.", + // "Target ads to a serve it in a certain position of a session. Only supported for the AdGroup of YouTube Programmatic Reservation line item." // ], // "location": "path", // "pattern": "^[^/]+$", @@ -44980,7 +48146,10 @@ func (c *PartnersTargetingTypesAssignedTargetingOptionsListCall) Do(opts ...goog // "TARGETING_TYPE_NATIVE_CONTENT_POSITION", // "TARGETING_TYPE_OMID", // "TARGETING_TYPE_AUDIO_CONTENT_TYPE", - // "TARGETING_TYPE_CONTENT_GENRE" + // "TARGETING_TYPE_CONTENT_GENRE", + // "TARGETING_TYPE_YOUTUBE_VIDEO", + // "TARGETING_TYPE_YOUTUBE_CHANNEL", + // "TARGETING_TYPE_SESSION_POSITION" // ], // "enumDescriptions": [ // "Default value when type is not specified or is unknown in this version.", @@ -45028,7 +48197,10 @@ func (c *PartnersTargetingTypesAssignedTargetingOptionsListCall) Do(opts ...goog // "Target ads to a specific native content position.", // "Target ads in an Open Measurement enabled inventory.", // "Target ads to a specific audio content type.", - // "Target ads to a specific content genre." + // "Target ads to a specific content genre.", + // "Target ads to a specific YouTube video.", + // "Target ads to a specific YouTube channel.", + // "Target ads to a serve it in a certain position of a session. Only supported for the AdGroup of YouTube Programmatic Reservation line item." // ], // "location": "path", // "pattern": "^[^/]+$", @@ -45570,7 +48742,10 @@ func (c *TargetingTypesTargetingOptionsGetCall) Do(opts ...googleapi.CallOption) // "TARGETING_TYPE_NATIVE_CONTENT_POSITION", // "TARGETING_TYPE_OMID", // "TARGETING_TYPE_AUDIO_CONTENT_TYPE", - // "TARGETING_TYPE_CONTENT_GENRE" + // "TARGETING_TYPE_CONTENT_GENRE", + // "TARGETING_TYPE_YOUTUBE_VIDEO", + // "TARGETING_TYPE_YOUTUBE_CHANNEL", + // "TARGETING_TYPE_SESSION_POSITION" // ], // "enumDescriptions": [ // "Default value when type is not specified or is unknown in this version.", @@ -45618,7 +48793,10 @@ func (c *TargetingTypesTargetingOptionsGetCall) Do(opts ...googleapi.CallOption) // "Target ads to a specific native content position.", // "Target ads in an Open Measurement enabled inventory.", // "Target ads to a specific audio content type.", - // "Target ads to a specific content genre." + // "Target ads to a specific content genre.", + // "Target ads to a specific YouTube video.", + // "Target ads to a specific YouTube channel.", + // "Target ads to a serve it in a certain position of a session. Only supported for the AdGroup of YouTube Programmatic Reservation line item." // ], // "location": "path", // "pattern": "^[^/]+$", @@ -45915,7 +49093,10 @@ func (c *TargetingTypesTargetingOptionsListCall) Do(opts ...googleapi.CallOption // "TARGETING_TYPE_NATIVE_CONTENT_POSITION", // "TARGETING_TYPE_OMID", // "TARGETING_TYPE_AUDIO_CONTENT_TYPE", - // "TARGETING_TYPE_CONTENT_GENRE" + // "TARGETING_TYPE_CONTENT_GENRE", + // "TARGETING_TYPE_YOUTUBE_VIDEO", + // "TARGETING_TYPE_YOUTUBE_CHANNEL", + // "TARGETING_TYPE_SESSION_POSITION" // ], // "enumDescriptions": [ // "Default value when type is not specified or is unknown in this version.", @@ -45963,7 +49144,10 @@ func (c *TargetingTypesTargetingOptionsListCall) Do(opts ...googleapi.CallOption // "Target ads to a specific native content position.", // "Target ads in an Open Measurement enabled inventory.", // "Target ads to a specific audio content type.", - // "Target ads to a specific content genre." + // "Target ads to a specific content genre.", + // "Target ads to a specific YouTube video.", + // "Target ads to a specific YouTube channel.", + // "Target ads to a serve it in a certain position of a session. Only supported for the AdGroup of YouTube Programmatic Reservation line item." // ], // "location": "path", // "pattern": "^[^/]+$", @@ -46174,7 +49358,10 @@ func (c *TargetingTypesTargetingOptionsSearchCall) Do(opts ...googleapi.CallOpti // "TARGETING_TYPE_NATIVE_CONTENT_POSITION", // "TARGETING_TYPE_OMID", // "TARGETING_TYPE_AUDIO_CONTENT_TYPE", - // "TARGETING_TYPE_CONTENT_GENRE" + // "TARGETING_TYPE_CONTENT_GENRE", + // "TARGETING_TYPE_YOUTUBE_VIDEO", + // "TARGETING_TYPE_YOUTUBE_CHANNEL", + // "TARGETING_TYPE_SESSION_POSITION" // ], // "enumDescriptions": [ // "Default value when type is not specified or is unknown in this version.", @@ -46222,7 +49409,10 @@ func (c *TargetingTypesTargetingOptionsSearchCall) Do(opts ...googleapi.CallOpti // "Target ads to a specific native content position.", // "Target ads in an Open Measurement enabled inventory.", // "Target ads to a specific audio content type.", - // "Target ads to a specific content genre." + // "Target ads to a specific content genre.", + // "Target ads to a specific YouTube video.", + // "Target ads to a specific YouTube channel.", + // "Target ads to a serve it in a certain position of a session. Only supported for the AdGroup of YouTube Programmatic Reservation line item." // ], // "location": "path", // "pattern": "^[^/]+$", diff --git a/eventarc/v1beta1/eventarc-api.json b/eventarc/v1beta1/eventarc-api.json index eb99dd77320..98a05dca338 100644 --- a/eventarc/v1beta1/eventarc-api.json +++ b/eventarc/v1beta1/eventarc-api.json @@ -584,7 +584,7 @@ } } }, - "revision": "20221021", + "revision": "20230113", "rootUrl": "https://eventarc.googleapis.com/", "schemas": { "AuditConfig": { @@ -676,7 +676,7 @@ "type": "string" }, "service": { - "description": "Required. The name of the Cloud run service being addressed (see https://cloud.google.com/run/docs/reference/rest/v1/namespaces.services). Only services located in the same project of the trigger object can be addressed.", + "description": "Required. The name of the Cloud run service being addressed. See https://cloud.google.com/run/docs/reference/rest/v1/namespaces.services. Only services located in the same project of the trigger object can be addressed.", "type": "string" } }, @@ -1083,7 +1083,7 @@ }, "transport": { "$ref": "Transport", - "description": "Output only. In order to deliver messages, Eventarc may use other GCP products as transport intermediary. This field contains a reference to that transport intermediary. This information can be used for debugging purposes.", + "description": "Output only. In order to deliver messages, Eventarc may use other Google Cloud products as transport intermediary. This field contains a reference to that transport intermediary. This information can be used for debugging purposes.", "readOnly": true }, "updateTime": { diff --git a/eventarc/v1beta1/eventarc-gen.go b/eventarc/v1beta1/eventarc-gen.go index 3230fc7623a..9c8278fbec5 100644 --- a/eventarc/v1beta1/eventarc-gen.go +++ b/eventarc/v1beta1/eventarc-gen.go @@ -373,9 +373,9 @@ type CloudRunService struct { // Region: Required. The region the Cloud Run service is deployed in. Region string `json:"region,omitempty"` - // Service: Required. The name of the Cloud run service being addressed - // (see - // https://cloud.google.com/run/docs/reference/rest/v1/namespaces.services). + // Service: Required. The name of the Cloud run service being addressed. + // See + // https://cloud.google.com/run/docs/reference/rest/v1/namespaces.services. // Only services located in the same project of the trigger object can // be addressed. Service string `json:"service,omitempty"` @@ -1188,9 +1188,9 @@ type Trigger struct { ServiceAccount string `json:"serviceAccount,omitempty"` // Transport: Output only. In order to deliver messages, Eventarc may - // use other GCP products as transport intermediary. This field contains - // a reference to that transport intermediary. This information can be - // used for debugging purposes. + // use other Google Cloud products as transport intermediary. This field + // contains a reference to that transport intermediary. This information + // can be used for debugging purposes. Transport *Transport `json:"transport,omitempty"` // UpdateTime: Output only. The last-modified time. diff --git a/firebase/v1beta1/firebase-api.json b/firebase/v1beta1/firebase-api.json index fe20ab84154..57113aec0a9 100644 --- a/firebase/v1beta1/firebase-api.json +++ b/firebase/v1beta1/firebase-api.json @@ -1320,7 +1320,7 @@ } } }, - "revision": "20230111", + "revision": "20230120", "rootUrl": "https://firebase.googleapis.com/", "schemas": { "AddFirebaseRequest": { @@ -1925,6 +1925,20 @@ }, "type": "object" }, + "ProductMetadata": { + "description": "Metadata about a long-running Product operation.", + "id": "ProductMetadata", + "properties": { + "warningMessages": { + "description": "List of warnings related to the associated operation.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "ProjectInfo": { "description": "A reference to a Google Cloud Platform (GCP) `Project`.", "id": "ProjectInfo", diff --git a/firebase/v1beta1/firebase-gen.go b/firebase/v1beta1/firebase-gen.go index dfc1dceb268..7303893690d 100644 --- a/firebase/v1beta1/firebase-gen.go +++ b/firebase/v1beta1/firebase-gen.go @@ -1435,6 +1435,36 @@ func (s *Operation) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// ProductMetadata: Metadata about a long-running Product operation. +type ProductMetadata struct { + // WarningMessages: List of warnings related to the associated + // operation. + WarningMessages []string `json:"warningMessages,omitempty"` + + // ForceSendFields is a list of field names (e.g. "WarningMessages") 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. "WarningMessages") 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 *ProductMetadata) MarshalJSON() ([]byte, error) { + type NoMethod ProductMetadata + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // ProjectInfo: A reference to a Google Cloud Platform (GCP) `Project`. type ProjectInfo struct { // DisplayName: The user-assigned display name of the GCP `Project`, for diff --git a/firestore/v1/firestore-api.json b/firestore/v1/firestore-api.json index a931c88217b..57dc59eda07 100644 --- a/firestore/v1/firestore-api.json +++ b/firestore/v1/firestore-api.json @@ -165,6 +165,11 @@ "location": "query", "type": "string" }, + "freeId": { + "description": "If set, will free the database_id associated with this database. uid will be used as the resource id to identify this deleted database.", + "location": "query", + "type": "boolean" + }, "name": { "description": "Required. A name of the form `projects/{project_id}/databases/{database_id}`", "location": "path", @@ -1423,7 +1428,7 @@ } } }, - "revision": "20230110", + "revision": "20230118", "rootUrl": "https://firestore.googleapis.com/", "schemas": { "Aggregation": { @@ -2074,6 +2079,13 @@ "format": "google-datetime", "type": "string" }, + "namespaceIds": { + "description": "Which namespace ids are being exported.", + "items": { + "type": "string" + }, + "type": "array" + }, "operationState": { "description": "The state of the export operation.", "enum": [ @@ -2099,7 +2111,7 @@ "type": "string" }, "outputUriPrefix": { - "description": "Where the entities are being exported to.", + "description": "Where the documents are being exported to.", "type": "string" }, "progressBytes": { @@ -2257,6 +2269,13 @@ "description": "The location of the documents being imported.", "type": "string" }, + "namespaceIds": { + "description": "Which namespace ids are being imported.", + "items": { + "type": "string" + }, + "type": "array" + }, "operationState": { "description": "The state of the import operation.", "enum": [ diff --git a/firestore/v1/firestore-gen.go b/firestore/v1/firestore-gen.go index adbcc0d61ea..dd2262b67b4 100644 --- a/firestore/v1/firestore-gen.go +++ b/firestore/v1/firestore-gen.go @@ -1447,6 +1447,9 @@ type GoogleFirestoreAdminV1ExportDocumentsMetadata struct { // operation still in progress. EndTime string `json:"endTime,omitempty"` + // NamespaceIds: Which namespace ids are being exported. + NamespaceIds []string `json:"namespaceIds,omitempty"` + // OperationState: The state of the export operation. // // Possible values: @@ -1465,7 +1468,7 @@ type GoogleFirestoreAdminV1ExportDocumentsMetadata struct { // called google.longrunning.Operations.CancelOperation. OperationState string `json:"operationState,omitempty"` - // OutputUriPrefix: Where the entities are being exported to. + // OutputUriPrefix: Where the documents are being exported to. OutputUriPrefix string `json:"outputUriPrefix,omitempty"` // ProgressBytes: The progress, in bytes, of this operation. @@ -1727,6 +1730,9 @@ type GoogleFirestoreAdminV1ImportDocumentsMetadata struct { // InputUriPrefix: The location of the documents being imported. InputUriPrefix string `json:"inputUriPrefix,omitempty"` + // NamespaceIds: Which namespace ids are being imported. + NamespaceIds []string `json:"namespaceIds,omitempty"` + // OperationState: The state of the import operation. // // Possible values: @@ -4161,6 +4167,14 @@ func (c *ProjectsDatabasesDeleteCall) Etag(etag string) *ProjectsDatabasesDelete return c } +// FreeId sets the optional parameter "freeId": If set, will free the +// database_id associated with this database. uid will be used as the +// resource id to identify this deleted database. +func (c *ProjectsDatabasesDeleteCall) FreeId(freeId bool) *ProjectsDatabasesDeleteCall { + c.urlParams_.Set("freeId", fmt.Sprint(freeId)) + return c +} + // ValidateOnly sets the optional parameter "validateOnly": If set, // validate the request and preview the response, but do not actually // delete the database. @@ -4273,6 +4287,11 @@ func (c *ProjectsDatabasesDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleL // "location": "query", // "type": "string" // }, + // "freeId": { + // "description": "If set, will free the database_id associated with this database. uid will be used as the resource id to identify this deleted database.", + // "location": "query", + // "type": "boolean" + // }, // "name": { // "description": "Required. A name of the form `projects/{project_id}/databases/{database_id}`", // "location": "path", diff --git a/kmsinventory/v1/kmsinventory-api.json b/kmsinventory/v1/kmsinventory-api.json index 313c8737e89..61d8d3da89a 100644 --- a/kmsinventory/v1/kmsinventory-api.json +++ b/kmsinventory/v1/kmsinventory-api.json @@ -236,7 +236,7 @@ } } }, - "revision": "20230115", + "revision": "20230122", "rootUrl": "https://kmsinventory.googleapis.com/", "schemas": { "GoogleCloudKmsInventoryV1ListCryptoKeysResponse": { @@ -272,9 +272,16 @@ "type": "string" }, "cryptoKeyVersion": { - "description": "The name of the Cloud KMS [CryptoKeyVersion](https://cloud.google.com/kms/docs/reference/rest/v1/projects.locations.keyRings.cryptoKeys.cryptoKeyVersions?hl=en) used to protect this resource via CMEK. This field may be empty if the Cloud product owning the resource does not provide key version data to Asset Inventory.", + "description": "The name of the Cloud KMS [CryptoKeyVersion](https://cloud.google.com/kms/docs/reference/rest/v1/projects.locations.keyRings.cryptoKeys.cryptoKeyVersions?hl=en) used to protect this resource via CMEK. This field is empty if the Google Cloud product owning the resource does not provide key version data to Asset Inventory. If there are multiple key versions protecting the resource, then this is same value as the first element of crypto_key_versions.", "type": "string" }, + "cryptoKeyVersions": { + "description": "The names of the Cloud KMS [CryptoKeyVersion](https://cloud.google.com/kms/docs/reference/rest/v1/projects.locations.keyRings.cryptoKeys.cryptoKeyVersions?hl=en) used to protect this resource via CMEK. This field is empty if the Google Cloud product owning the resource does not provide key versions data to Asset Inventory. The first element of this field is stored in crypto_key_version.", + "items": { + "type": "string" + }, + "type": "array" + }, "labels": { "additionalProperties": { "type": "string" diff --git a/kmsinventory/v1/kmsinventory-gen.go b/kmsinventory/v1/kmsinventory-gen.go index 30f078868c8..9ff558b6e95 100644 --- a/kmsinventory/v1/kmsinventory-gen.go +++ b/kmsinventory/v1/kmsinventory-gen.go @@ -268,11 +268,21 @@ type GoogleCloudKmsInventoryV1ProtectedResource struct { // CryptoKeyVersion: The name of the Cloud KMS CryptoKeyVersion // (https://cloud.google.com/kms/docs/reference/rest/v1/projects.locations.keyRings.cryptoKeys.cryptoKeyVersions?hl=en) - // used to protect this resource via CMEK. This field may be empty if - // the Cloud product owning the resource does not provide key version - // data to Asset Inventory. + // used to protect this resource via CMEK. This field is empty if the + // Google Cloud product owning the resource does not provide key version + // data to Asset Inventory. If there are multiple key versions + // protecting the resource, then this is same value as the first element + // of crypto_key_versions. CryptoKeyVersion string `json:"cryptoKeyVersion,omitempty"` + // CryptoKeyVersions: The names of the Cloud KMS CryptoKeyVersion + // (https://cloud.google.com/kms/docs/reference/rest/v1/projects.locations.keyRings.cryptoKeys.cryptoKeyVersions?hl=en) + // used to protect this resource via CMEK. This field is empty if the + // Google Cloud product owning the resource does not provide key + // versions data to Asset Inventory. The first element of this field is + // stored in crypto_key_version. + CryptoKeyVersions []string `json:"cryptoKeyVersions,omitempty"` + // Labels: A key-value pair of the resource's labels (v1) to their // values. Labels map[string]string `json:"labels,omitempty"` diff --git a/metastore/v1/metastore-api.json b/metastore/v1/metastore-api.json index 659e3a68a0d..b9752bad37b 100644 --- a/metastore/v1/metastore-api.json +++ b/metastore/v1/metastore-api.json @@ -1259,7 +1259,7 @@ } } }, - "revision": "20221207", + "revision": "20230111", "rootUrl": "https://metastore.googleapis.com/", "schemas": { "AuditConfig": { @@ -1327,7 +1327,7 @@ "type": "string" }, "name": { - "description": "The relative resource name of the metastore that is being federated. The formats of the relative resource names for the currently supported metastores are listed below: Dataplex projects/{project_id}/locations/{location}/lakes/{lake_id} BigQuery projects/{project_id} Dataproc Metastore projects/{project_id}/locations/{location}/services/{service_id}", + "description": "The relative resource name of the metastore that is being federated. The formats of the relative resource names for the currently supported metastores are listed below: BigQuery projects/{project_id} Dataproc Metastore projects/{project_id}/locations/{location}/services/{service_id}", "type": "string" } }, diff --git a/metastore/v1/metastore-gen.go b/metastore/v1/metastore-gen.go index e94cb2913e6..a1f61d741d6 100644 --- a/metastore/v1/metastore-gen.go +++ b/metastore/v1/metastore-gen.go @@ -338,8 +338,7 @@ type BackendMetastore struct { // Name: The relative resource name of the metastore that is being // federated. The formats of the relative resource names for the - // currently supported metastores are listed below: Dataplex - // projects/{project_id}/locations/{location}/lakes/{lake_id} BigQuery + // currently supported metastores are listed below: BigQuery // projects/{project_id} Dataproc Metastore // projects/{project_id}/locations/{location}/services/{service_id} Name string `json:"name,omitempty"` diff --git a/metastore/v1alpha/metastore-api.json b/metastore/v1alpha/metastore-api.json index 00b6a8043f7..189acbbff23 100644 --- a/metastore/v1alpha/metastore-api.json +++ b/metastore/v1alpha/metastore-api.json @@ -1551,7 +1551,7 @@ } } }, - "revision": "20230106", + "revision": "20230111", "rootUrl": "https://metastore.googleapis.com/", "schemas": { "AlterMetadataResourceLocationRequest": { @@ -1665,7 +1665,7 @@ "type": "string" }, "name": { - "description": "The relative resource name of the metastore that is being federated. The formats of the relative resource names for the currently supported metastores are listed below: Dataplex projects/{project_id}/locations/{location}/lakes/{lake_id} BigQuery projects/{project_id} Dataproc Metastore projects/{project_id}/locations/{location}/services/{service_id}", + "description": "The relative resource name of the metastore that is being federated. The formats of the relative resource names for the currently supported metastores are listed below: BigQuery projects/{project_id} Dataproc Metastore projects/{project_id}/locations/{location}/services/{service_id}", "type": "string" } }, diff --git a/metastore/v1alpha/metastore-gen.go b/metastore/v1alpha/metastore-gen.go index 622978984db..a760f6c12eb 100644 --- a/metastore/v1alpha/metastore-gen.go +++ b/metastore/v1alpha/metastore-gen.go @@ -435,8 +435,7 @@ type BackendMetastore struct { // Name: The relative resource name of the metastore that is being // federated. The formats of the relative resource names for the - // currently supported metastores are listed below: Dataplex - // projects/{project_id}/locations/{location}/lakes/{lake_id} BigQuery + // currently supported metastores are listed below: BigQuery // projects/{project_id} Dataproc Metastore // projects/{project_id}/locations/{location}/services/{service_id} Name string `json:"name,omitempty"` diff --git a/sqladmin/v1/sqladmin-api.json b/sqladmin/v1/sqladmin-api.json index 47d02dcf5d1..45ce13d9209 100644 --- a/sqladmin/v1/sqladmin-api.json +++ b/sqladmin/v1/sqladmin-api.json @@ -1921,7 +1921,7 @@ } } }, - "revision": "20221209", + "revision": "20230119", "rootUrl": "https://sqladmin.googleapis.com/", "schemas": { "AclEntry": { @@ -2313,6 +2313,7 @@ "MYSQL_8_0_29", "MYSQL_8_0_30", "MYSQL_8_0_31", + "MYSQL_8_0_32", "SQLSERVER_2019_STANDARD", "SQLSERVER_2019_ENTERPRISE", "SQLSERVER_2019_EXPRESS", @@ -2342,6 +2343,7 @@ "The database major version is MySQL 8.0 and the minor version is 29.", "The database major version is MySQL 8.0 and the minor version is 30.", "The database major version is MySQL 8.0 and the minor version is 31.", + "The database major version is MySQL 8.0 and the minor version is 32.", "The database version is SQL Server 2019 Standard.", "The database version is SQL Server 2019 Enterprise.", "The database version is SQL Server 2019 Express.", @@ -2501,6 +2503,7 @@ "MYSQL_8_0_29", "MYSQL_8_0_30", "MYSQL_8_0_31", + "MYSQL_8_0_32", "SQLSERVER_2019_STANDARD", "SQLSERVER_2019_ENTERPRISE", "SQLSERVER_2019_EXPRESS", @@ -2530,6 +2533,7 @@ "The database major version is MySQL 8.0 and the minor version is 29.", "The database major version is MySQL 8.0 and the minor version is 30.", "The database major version is MySQL 8.0 and the minor version is 31.", + "The database major version is MySQL 8.0 and the minor version is 32.", "The database version is SQL Server 2019 Standard.", "The database version is SQL Server 2019 Enterprise.", "The database version is SQL Server 2019 Express.", @@ -3035,6 +3039,7 @@ "MYSQL_8_0_29", "MYSQL_8_0_30", "MYSQL_8_0_31", + "MYSQL_8_0_32", "SQLSERVER_2019_STANDARD", "SQLSERVER_2019_ENTERPRISE", "SQLSERVER_2019_EXPRESS", @@ -3064,6 +3069,7 @@ "The database major version is MySQL 8.0 and the minor version is 29.", "The database major version is MySQL 8.0 and the minor version is 30.", "The database major version is MySQL 8.0 and the minor version is 31.", + "The database major version is MySQL 8.0 and the minor version is 32.", "The database version is SQL Server 2019 Standard.", "The database version is SQL Server 2019 Enterprise.", "The database version is SQL Server 2019 Express.", @@ -4894,7 +4900,7 @@ "type": "string" }, "nextPageToken": { - "description": "An identifier that uniquely identifies the operation. You can use this identifier to retrieve the Operations resource that has information about the operation.", + "description": "Unused.", "type": "string" } }, diff --git a/sqladmin/v1/sqladmin-gen.go b/sqladmin/v1/sqladmin-gen.go index 00853ea61b5..eb2f676b53b 100644 --- a/sqladmin/v1/sqladmin-gen.go +++ b/sqladmin/v1/sqladmin-gen.go @@ -807,6 +807,8 @@ type ConnectSettings struct { // minor version is 30. // "MYSQL_8_0_31" - The database major version is MySQL 8.0 and the // minor version is 31. + // "MYSQL_8_0_32" - The database major version is MySQL 8.0 and the + // minor version is 32. // "SQLSERVER_2019_STANDARD" - The database version is SQL Server 2019 // Standard. // "SQLSERVER_2019_ENTERPRISE" - The database version is SQL Server @@ -1033,6 +1035,8 @@ type DatabaseInstance struct { // minor version is 30. // "MYSQL_8_0_31" - The database major version is MySQL 8.0 and the // minor version is 31. + // "MYSQL_8_0_32" - The database major version is MySQL 8.0 and the + // minor version is 32. // "SQLSERVER_2019_STANDARD" - The database version is SQL Server 2019 // Standard. // "SQLSERVER_2019_ENTERPRISE" - The database version is SQL Server @@ -1849,6 +1853,8 @@ type Flag struct { // minor version is 30. // "MYSQL_8_0_31" - The database major version is MySQL 8.0 and the // minor version is 31. + // "MYSQL_8_0_32" - The database major version is MySQL 8.0 and the + // minor version is 32. // "SQLSERVER_2019_STANDARD" - The database version is SQL Server 2019 // Standard. // "SQLSERVER_2019_ENTERPRISE" - The database version is SQL Server @@ -4667,9 +4673,7 @@ type UsersListResponse struct { // Kind: This is always `sql#usersList`. Kind string `json:"kind,omitempty"` - // NextPageToken: An identifier that uniquely identifies the operation. - // You can use this identifier to retrieve the Operations resource that - // has information about the operation. + // NextPageToken: Unused. NextPageToken string `json:"nextPageToken,omitempty"` // ServerResponse contains the HTTP response code and headers from the diff --git a/sqladmin/v1beta4/sqladmin-api.json b/sqladmin/v1beta4/sqladmin-api.json index 67a99eeb85b..2d20abb9b82 100644 --- a/sqladmin/v1beta4/sqladmin-api.json +++ b/sqladmin/v1beta4/sqladmin-api.json @@ -1921,7 +1921,7 @@ } } }, - "revision": "20221209", + "revision": "20230119", "rootUrl": "https://sqladmin.googleapis.com/", "schemas": { "AclEntry": { @@ -2313,6 +2313,7 @@ "MYSQL_8_0_29", "MYSQL_8_0_30", "MYSQL_8_0_31", + "MYSQL_8_0_32", "SQLSERVER_2019_STANDARD", "SQLSERVER_2019_ENTERPRISE", "SQLSERVER_2019_EXPRESS", @@ -2342,6 +2343,7 @@ "The database major version is MySQL 8.0 and the minor version is 29.", "The database major version is MySQL 8.0 and the minor version is 30.", "The database major version is MySQL 8.0 and the minor version is 31.", + "The database major version is MySQL 8.0 and the minor version is 32.", "The database version is SQL Server 2019 Standard.", "The database version is SQL Server 2019 Enterprise.", "The database version is SQL Server 2019 Express.", @@ -2501,6 +2503,7 @@ "MYSQL_8_0_29", "MYSQL_8_0_30", "MYSQL_8_0_31", + "MYSQL_8_0_32", "SQLSERVER_2019_STANDARD", "SQLSERVER_2019_ENTERPRISE", "SQLSERVER_2019_EXPRESS", @@ -2530,6 +2533,7 @@ "The database major version is MySQL 8.0 and the minor version is 29.", "The database major version is MySQL 8.0 and the minor version is 30.", "The database major version is MySQL 8.0 and the minor version is 31.", + "The database major version is MySQL 8.0 and the minor version is 32.", "The database version is SQL Server 2019 Standard.", "The database version is SQL Server 2019 Enterprise.", "The database version is SQL Server 2019 Express.", @@ -3035,6 +3039,7 @@ "MYSQL_8_0_29", "MYSQL_8_0_30", "MYSQL_8_0_31", + "MYSQL_8_0_32", "SQLSERVER_2019_STANDARD", "SQLSERVER_2019_ENTERPRISE", "SQLSERVER_2019_EXPRESS", @@ -3064,6 +3069,7 @@ "The database major version is MySQL 8.0 and the minor version is 29.", "The database major version is MySQL 8.0 and the minor version is 30.", "The database major version is MySQL 8.0 and the minor version is 31.", + "The database major version is MySQL 8.0 and the minor version is 32.", "The database version is SQL Server 2019 Standard.", "The database version is SQL Server 2019 Enterprise.", "The database version is SQL Server 2019 Express.", @@ -4892,7 +4898,7 @@ "type": "string" }, "nextPageToken": { - "description": "An identifier that uniquely identifies the operation. You can use this identifier to retrieve the Operations resource that has information about the operation.", + "description": "Unused.", "type": "string" } }, diff --git a/sqladmin/v1beta4/sqladmin-gen.go b/sqladmin/v1beta4/sqladmin-gen.go index f07e41dfdee..76ef69bfd69 100644 --- a/sqladmin/v1beta4/sqladmin-gen.go +++ b/sqladmin/v1beta4/sqladmin-gen.go @@ -807,6 +807,8 @@ type ConnectSettings struct { // minor version is 30. // "MYSQL_8_0_31" - The database major version is MySQL 8.0 and the // minor version is 31. + // "MYSQL_8_0_32" - The database major version is MySQL 8.0 and the + // minor version is 32. // "SQLSERVER_2019_STANDARD" - The database version is SQL Server 2019 // Standard. // "SQLSERVER_2019_ENTERPRISE" - The database version is SQL Server @@ -1032,6 +1034,8 @@ type DatabaseInstance struct { // minor version is 30. // "MYSQL_8_0_31" - The database major version is MySQL 8.0 and the // minor version is 31. + // "MYSQL_8_0_32" - The database major version is MySQL 8.0 and the + // minor version is 32. // "SQLSERVER_2019_STANDARD" - The database version is SQL Server 2019 // Standard. // "SQLSERVER_2019_ENTERPRISE" - The database version is SQL Server @@ -1848,6 +1852,8 @@ type Flag struct { // minor version is 30. // "MYSQL_8_0_31" - The database major version is MySQL 8.0 and the // minor version is 31. + // "MYSQL_8_0_32" - The database major version is MySQL 8.0 and the + // minor version is 32. // "SQLSERVER_2019_STANDARD" - The database version is SQL Server 2019 // Standard. // "SQLSERVER_2019_ENTERPRISE" - The database version is SQL Server @@ -4662,9 +4668,7 @@ type UsersListResponse struct { // Kind: This is always *sql#usersList*. Kind string `json:"kind,omitempty"` - // NextPageToken: An identifier that uniquely identifies the operation. - // You can use this identifier to retrieve the Operations resource that - // has information about the operation. + // NextPageToken: Unused. NextPageToken string `json:"nextPageToken,omitempty"` // ServerResponse contains the HTTP response code and headers from the diff --git a/vmmigration/v1alpha1/vmmigration-api.json b/vmmigration/v1alpha1/vmmigration-api.json index 05cdce94c09..f26dbffa5d1 100644 --- a/vmmigration/v1alpha1/vmmigration-api.json +++ b/vmmigration/v1alpha1/vmmigration-api.json @@ -1972,7 +1972,7 @@ } } }, - "revision": "20230105", + "revision": "20230119", "rootUrl": "https://vmmigration.googleapis.com/", "schemas": { "AccessKeyCredentials": { @@ -3478,7 +3478,7 @@ }, "currentSyncInfo": { "$ref": "ReplicationCycle", - "description": "Output only. The percentage progress of the current running replication cycle.", + "description": "Output only. Details of the current running replication cycle.", "readOnly": true }, "description": { diff --git a/vmmigration/v1alpha1/vmmigration-gen.go b/vmmigration/v1alpha1/vmmigration-gen.go index bbcd323720e..35cca8358e8 100644 --- a/vmmigration/v1alpha1/vmmigration-gen.go +++ b/vmmigration/v1alpha1/vmmigration-gen.go @@ -2138,8 +2138,8 @@ type MigratingVm struct { // source). CreateTime string `json:"createTime,omitempty"` - // CurrentSyncInfo: Output only. The percentage progress of the current - // running replication cycle. + // CurrentSyncInfo: Output only. Details of the current running + // replication cycle. CurrentSyncInfo *ReplicationCycle `json:"currentSyncInfo,omitempty"` // Description: The description attached to the migrating VM by the