diff --git a/acmedns/v1/acmedns-api.json b/acmedns/v1/acmedns-api.json new file mode 100644 index 00000000000..8c4ac9fdc6a --- /dev/null +++ b/acmedns/v1/acmedns-api.json @@ -0,0 +1,222 @@ +{ + "basePath": "", + "baseUrl": "https://acmedns.googleapis.com/", + "batchPath": "batch", + "canonicalName": "ACME DNS", + "description": "Google Domains ACME DNS API that allows users to complete ACME DNS-01 challenges for a domain.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/domains/acme-dns/", + "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": "acmedns:v1", + "kind": "discovery#restDescription", + "mtlsRootUrl": "https://acmedns.mtls.googleapis.com/", + "name": "acmedns", + "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": { + "acmeChallengeSets": { + "methods": { + "get": { + "description": "Gets the ACME challenge set for a given domain name. Domain names must be provided in Punycode.", + "flatPath": "v1/acmeChallengeSets/{rootDomain}", + "httpMethod": "GET", + "id": "acmedns.acmeChallengeSets.get", + "parameterOrder": [ + "rootDomain" + ], + "parameters": { + "rootDomain": { + "description": "Required. SLD + TLD domain name to list challenges. This MAY be Unicode or Punycode.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/acmeChallengeSets/{rootDomain}", + "response": { + "$ref": "AcmeChallengeSet" + } + }, + "rotateChallenges": { + "description": "Rotate the ACME challenges for a given domain name. By default, removes any challenges that are older than 30 days. Domain names must be provided in Punycode.", + "flatPath": "v1/acmeChallengeSets/{rootDomain}:rotateChallenges", + "httpMethod": "POST", + "id": "acmedns.acmeChallengeSets.rotateChallenges", + "parameterOrder": [ + "rootDomain" + ], + "parameters": { + "rootDomain": { + "description": "Required. SLD + TLD domain name to update records for. This MAY be Unicode or Punycode.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/acmeChallengeSets/{rootDomain}:rotateChallenges", + "request": { + "$ref": "RotateChallengesRequest" + }, + "response": { + "$ref": "AcmeChallengeSet" + } + } + } + } + }, + "revision": "20230221", + "rootUrl": "https://acmedns.googleapis.com/", + "schemas": { + "AcmeChallengeSet": { + "description": "The up-to-date ACME challenge set on a domain for an RPC. This contains all of the ACME TXT records that exist on the domain.", + "id": "AcmeChallengeSet", + "properties": { + "record": { + "description": "The ACME challenges on the requested domain represented as individual TXT records.", + "items": { + "$ref": "AcmeTxtRecord" + }, + "type": "array" + } + }, + "type": "object" + }, + "AcmeTxtRecord": { + "description": "The TXT record message that represents an ACME DNS-01 challenge.", + "id": "AcmeTxtRecord", + "properties": { + "digest": { + "description": "Holds the ACME challenge data put in the TXT record. This will be checked to be a valid TXT record data entry.", + "type": "string" + }, + "fqdn": { + "description": "The domain/subdomain for the record. In a request, this MAY be Unicode or Punycode. In a response, this will be in Unicode. The fqdn MUST contain the root_domain field on the request.", + "type": "string" + }, + "updateTime": { + "description": "Output only. The time when this record was last updated. This will be in UTC time.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "RotateChallengesRequest": { + "description": "The request message for the RotateChallenges RPC. Requires an access token, a root domain, and either records_to_add or records_to_remove to be populated. Records may be set for multiple subdomains at once to support SAN requests for multiple subdomains in a single domain. By default, ACME TXT record challenges that are older than 30 days will be removed. Set `keep_expired_records` to false if this behavior is undesired. There is a record maximum of 100 records per domain including expired records. Any request sent that would exceed this maximum will result in a FAILED_PRECONDITION error. NEXT ID: 6", + "id": "RotateChallengesRequest", + "properties": { + "accessToken": { + "description": "Required. ACME DNS access token. This is a base64 token secret that is procured from the Google Domains website. It authorizes ACME TXT record updates for a domain.", + "format": "byte", + "type": "string" + }, + "keepExpiredRecords": { + "description": "Keep records older than 30 days that were used for previous requests.", + "type": "boolean" + }, + "recordsToAdd": { + "description": "ACME TXT record challenges to add. Supports multiple challenges on the same FQDN.", + "items": { + "$ref": "AcmeTxtRecord" + }, + "type": "array" + }, + "recordsToRemove": { + "description": "ACME TXT record challenges to remove.", + "items": { + "$ref": "AcmeTxtRecord" + }, + "type": "array" + } + }, + "type": "object" + } + }, + "servicePath": "", + "title": "ACME DNS API", + "version": "v1", + "version_module": true +} \ No newline at end of file diff --git a/acmedns/v1/acmedns-gen.go b/acmedns/v1/acmedns-gen.go new file mode 100644 index 00000000000..dcf4e5b91ca --- /dev/null +++ b/acmedns/v1/acmedns-gen.go @@ -0,0 +1,544 @@ +// 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 acmedns provides access to the ACME DNS API. +// +// For product documentation, see: https://developers.google.com/domains/acme-dns/ +// +// # Creating a client +// +// Usage example: +// +// import "google.golang.org/api/acmedns/v1" +// ... +// ctx := context.Background() +// acmednsService, err := acmedns.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: +// +// acmednsService, err := acmedns.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, ...) +// acmednsService, err := acmedns.NewService(ctx, option.WithTokenSource(config.TokenSource(ctx, token))) +// +// See https://godoc.org/google.golang.org/api/option/ for details on options. +package acmedns // import "google.golang.org/api/acmedns/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 = "acmedns:v1" +const apiName = "acmedns" +const apiVersion = "v1" +const basePath = "https://acmedns.googleapis.com/" +const mtlsBasePath = "https://acmedns.mtls.googleapis.com/" + +// NewService creates a new Service. +func NewService(ctx context.Context, opts ...option.ClientOption) (*Service, error) { + opts = append(opts, internaloption.WithDefaultEndpoint(basePath)) + opts = append(opts, internaloption.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.AcmeChallengeSets = NewAcmeChallengeSetsService(s) + return s, nil +} + +type Service struct { + client *http.Client + BasePath string // API endpoint base URL + UserAgent string // optional additional User-Agent fragment + + AcmeChallengeSets *AcmeChallengeSetsService +} + +func (s *Service) userAgent() string { + if s.UserAgent == "" { + return googleapi.UserAgent + } + return googleapi.UserAgent + " " + s.UserAgent +} + +func NewAcmeChallengeSetsService(s *Service) *AcmeChallengeSetsService { + rs := &AcmeChallengeSetsService{s: s} + return rs +} + +type AcmeChallengeSetsService struct { + s *Service +} + +// AcmeChallengeSet: The up-to-date ACME challenge set on a domain for +// an RPC. This contains all of the ACME TXT records that exist on the +// domain. +type AcmeChallengeSet struct { + // Record: The ACME challenges on the requested domain represented as + // individual TXT records. + Record []*AcmeTxtRecord `json:"record,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "Record") 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. "Record") 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 *AcmeChallengeSet) MarshalJSON() ([]byte, error) { + type NoMethod AcmeChallengeSet + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// AcmeTxtRecord: The TXT record message that represents an ACME DNS-01 +// challenge. +type AcmeTxtRecord struct { + // Digest: Holds the ACME challenge data put in the TXT record. This + // will be checked to be a valid TXT record data entry. + Digest string `json:"digest,omitempty"` + + // Fqdn: The domain/subdomain for the record. In a request, this MAY be + // Unicode or Punycode. In a response, this will be in Unicode. The fqdn + // MUST contain the root_domain field on the request. + Fqdn string `json:"fqdn,omitempty"` + + // UpdateTime: Output only. The time when this record was last updated. + // This will be in UTC time. + UpdateTime string `json:"updateTime,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Digest") 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. "Digest") 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 *AcmeTxtRecord) MarshalJSON() ([]byte, error) { + type NoMethod AcmeTxtRecord + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// RotateChallengesRequest: The request message for the RotateChallenges +// RPC. Requires an access token, a root domain, and either +// records_to_add or records_to_remove to be populated. Records may be +// set for multiple subdomains at once to support SAN requests for +// multiple subdomains in a single domain. By default, ACME TXT record +// challenges that are older than 30 days will be removed. Set +// `keep_expired_records` to false if this behavior is undesired. There +// is a record maximum of 100 records per domain including expired +// records. Any request sent that would exceed this maximum will result +// in a FAILED_PRECONDITION error. NEXT ID: 6 +type RotateChallengesRequest struct { + // AccessToken: Required. ACME DNS access token. This is a base64 token + // secret that is procured from the Google Domains website. It + // authorizes ACME TXT record updates for a domain. + AccessToken string `json:"accessToken,omitempty"` + + // KeepExpiredRecords: Keep records older than 30 days that were used + // for previous requests. + KeepExpiredRecords bool `json:"keepExpiredRecords,omitempty"` + + // RecordsToAdd: ACME TXT record challenges to add. Supports multiple + // challenges on the same FQDN. + RecordsToAdd []*AcmeTxtRecord `json:"recordsToAdd,omitempty"` + + // RecordsToRemove: ACME TXT record challenges to remove. + RecordsToRemove []*AcmeTxtRecord `json:"recordsToRemove,omitempty"` + + // ForceSendFields is a list of field names (e.g. "AccessToken") 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. "AccessToken") 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 *RotateChallengesRequest) MarshalJSON() ([]byte, error) { + type NoMethod RotateChallengesRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// method id "acmedns.acmeChallengeSets.get": + +type AcmeChallengeSetsGetCall struct { + s *Service + rootDomain string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Gets the ACME challenge set for a given domain name. Domain +// names must be provided in Punycode. +// +// - rootDomain: SLD + TLD domain name to list challenges. This MAY be +// Unicode or Punycode. +func (r *AcmeChallengeSetsService) Get(rootDomain string) *AcmeChallengeSetsGetCall { + c := &AcmeChallengeSetsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.rootDomain = rootDomain + 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 *AcmeChallengeSetsGetCall) Fields(s ...googleapi.Field) *AcmeChallengeSetsGetCall { + 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 *AcmeChallengeSetsGetCall) IfNoneMatch(entityTag string) *AcmeChallengeSetsGetCall { + 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 *AcmeChallengeSetsGetCall) Context(ctx context.Context) *AcmeChallengeSetsGetCall { + 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 *AcmeChallengeSetsGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *AcmeChallengeSetsGetCall) 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/acmeChallengeSets/{rootDomain}") + 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{ + "rootDomain": c.rootDomain, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "acmedns.acmeChallengeSets.get" call. +// Exactly one of *AcmeChallengeSet or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *AcmeChallengeSet.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 *AcmeChallengeSetsGetCall) Do(opts ...googleapi.CallOption) (*AcmeChallengeSet, 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 := &AcmeChallengeSet{ + 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 ACME challenge set for a given domain name. Domain names must be provided in Punycode.", + // "flatPath": "v1/acmeChallengeSets/{rootDomain}", + // "httpMethod": "GET", + // "id": "acmedns.acmeChallengeSets.get", + // "parameterOrder": [ + // "rootDomain" + // ], + // "parameters": { + // "rootDomain": { + // "description": "Required. SLD + TLD domain name to list challenges. This MAY be Unicode or Punycode.", + // "location": "path", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/acmeChallengeSets/{rootDomain}", + // "response": { + // "$ref": "AcmeChallengeSet" + // } + // } + +} + +// method id "acmedns.acmeChallengeSets.rotateChallenges": + +type AcmeChallengeSetsRotateChallengesCall struct { + s *Service + rootDomain string + rotatechallengesrequest *RotateChallengesRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// RotateChallenges: Rotate the ACME challenges for a given domain name. +// By default, removes any challenges that are older than 30 days. +// Domain names must be provided in Punycode. +// +// - rootDomain: SLD + TLD domain name to update records for. This MAY +// be Unicode or Punycode. +func (r *AcmeChallengeSetsService) RotateChallenges(rootDomain string, rotatechallengesrequest *RotateChallengesRequest) *AcmeChallengeSetsRotateChallengesCall { + c := &AcmeChallengeSetsRotateChallengesCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.rootDomain = rootDomain + c.rotatechallengesrequest = rotatechallengesrequest + 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 *AcmeChallengeSetsRotateChallengesCall) Fields(s ...googleapi.Field) *AcmeChallengeSetsRotateChallengesCall { + 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 *AcmeChallengeSetsRotateChallengesCall) Context(ctx context.Context) *AcmeChallengeSetsRotateChallengesCall { + 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 *AcmeChallengeSetsRotateChallengesCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *AcmeChallengeSetsRotateChallengesCall) 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.rotatechallengesrequest) + 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/acmeChallengeSets/{rootDomain}:rotateChallenges") + 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{ + "rootDomain": c.rootDomain, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "acmedns.acmeChallengeSets.rotateChallenges" call. +// Exactly one of *AcmeChallengeSet or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *AcmeChallengeSet.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 *AcmeChallengeSetsRotateChallengesCall) Do(opts ...googleapi.CallOption) (*AcmeChallengeSet, 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 := &AcmeChallengeSet{ + 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": "Rotate the ACME challenges for a given domain name. By default, removes any challenges that are older than 30 days. Domain names must be provided in Punycode.", + // "flatPath": "v1/acmeChallengeSets/{rootDomain}:rotateChallenges", + // "httpMethod": "POST", + // "id": "acmedns.acmeChallengeSets.rotateChallenges", + // "parameterOrder": [ + // "rootDomain" + // ], + // "parameters": { + // "rootDomain": { + // "description": "Required. SLD + TLD domain name to update records for. This MAY be Unicode or Punycode.", + // "location": "path", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/acmeChallengeSets/{rootDomain}:rotateChallenges", + // "request": { + // "$ref": "RotateChallengesRequest" + // }, + // "response": { + // "$ref": "AcmeChallengeSet" + // } + // } + +} diff --git a/advisorynotifications/v1/advisorynotifications-api.json b/advisorynotifications/v1/advisorynotifications-api.json index a990846352d..7e1fc356ab6 100644 --- a/advisorynotifications/v1/advisorynotifications-api.json +++ b/advisorynotifications/v1/advisorynotifications-api.json @@ -12,7 +12,7 @@ "baseUrl": "https://advisorynotifications.googleapis.com/", "batchPath": "batch", "canonicalName": "Advisorynotifications", - "description": "", + "description": "An API for accessing Advisory Notifications in Google Cloud", "discoveryVersion": "v1", "documentationLink": "https://cloud.google.com/advisory-notifications", "fullyEncodeReservedExpansion": true, @@ -204,7 +204,7 @@ } } }, - "revision": "20230115", + "revision": "20230219", "rootUrl": "https://advisorynotifications.googleapis.com/", "schemas": { "GoogleCloudAdvisorynotificationsV1Attachment": { diff --git a/analyticsadmin/v1alpha/analyticsadmin-api.json b/analyticsadmin/v1alpha/analyticsadmin-api.json index 5ee3ebe9736..16afa630500 100644 --- a/analyticsadmin/v1alpha/analyticsadmin-api.json +++ b/analyticsadmin/v1alpha/analyticsadmin-api.json @@ -310,6 +310,35 @@ "https://www.googleapis.com/auth/analytics.edit" ] }, + "runAccessReport": { + "description": "Returns a customized report of data access records. The report provides records of each time a user reads Google Analytics reporting data. Access records are retained for up to 2 years. Data Access Reports can be requested for a property. The property must be in Google Analytics 360. This method is only available to Administrators. These data access records include GA4 UI Reporting, GA4 UI Explorations, GA4 Data API, and other products like Firebase \u0026 Admob that can retrieve data from Google Analytics through a linkage. These records don't include property configuration changes like adding a stream or changing a property's time zone. For configuration change history, see [searchChangeHistoryEvents](https://developers.google.com/analytics/devguides/config/admin/v1/rest/v1alpha/accounts/searchChangeHistoryEvents).", + "flatPath": "v1alpha/accounts/{accountsId}:runAccessReport", + "httpMethod": "POST", + "id": "analyticsadmin.accounts.runAccessReport", + "parameterOrder": [ + "entity" + ], + "parameters": { + "entity": { + "description": "The Data Access Report is requested for this property. For example if \"123\" is your GA4 property ID, then entity should be \"properties/123\".", + "location": "path", + "pattern": "^accounts/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1alpha/{+entity}:runAccessReport", + "request": { + "$ref": "GoogleAnalyticsAdminV1alphaRunAccessReportRequest" + }, + "response": { + "$ref": "GoogleAnalyticsAdminV1alphaRunAccessReportResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit", + "https://www.googleapis.com/auth/analytics.readonly" + ] + }, "searchChangeHistoryEvents": { "description": "Searches through all changes to an account or its children given the specified set of filters.", "flatPath": "v1alpha/accounts/{accountsId}:searchChangeHistoryEvents", @@ -3742,7 +3771,7 @@ } } }, - "revision": "20230221", + "revision": "20230222", "rootUrl": "https://analyticsadmin.googleapis.com/", "schemas": { "GoogleAnalyticsAdminV1alphaAccessBetweenFilter": { diff --git a/analyticsadmin/v1alpha/analyticsadmin-gen.go b/analyticsadmin/v1alpha/analyticsadmin-gen.go index fd79fe92bd6..45e56fb0c77 100644 --- a/analyticsadmin/v1alpha/analyticsadmin-gen.go +++ b/analyticsadmin/v1alpha/analyticsadmin-gen.go @@ -6992,6 +6992,164 @@ func (c *AccountsProvisionAccountTicketCall) Do(opts ...googleapi.CallOption) (* } +// method id "analyticsadmin.accounts.runAccessReport": + +type AccountsRunAccessReportCall struct { + s *Service + entity string + googleanalyticsadminv1alpharunaccessreportrequest *GoogleAnalyticsAdminV1alphaRunAccessReportRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// RunAccessReport: Returns a customized report of data access records. +// The report provides records of each time a user reads Google +// Analytics reporting data. Access records are retained for up to 2 +// years. Data Access Reports can be requested for a property. The +// property must be in Google Analytics 360. This method is only +// available to Administrators. These data access records include GA4 UI +// Reporting, GA4 UI Explorations, GA4 Data API, and other products like +// Firebase & Admob that can retrieve data from Google Analytics through +// a linkage. These records don't include property configuration changes +// like adding a stream or changing a property's time zone. For +// configuration change history, see searchChangeHistoryEvents +// (https://developers.google.com/analytics/devguides/config/admin/v1/rest/v1alpha/accounts/searchChangeHistoryEvents). +// +// - entity: The Data Access Report is requested for this property. For +// example if "123" is your GA4 property ID, then entity should be +// "properties/123". +func (r *AccountsService) RunAccessReport(entity string, googleanalyticsadminv1alpharunaccessreportrequest *GoogleAnalyticsAdminV1alphaRunAccessReportRequest) *AccountsRunAccessReportCall { + c := &AccountsRunAccessReportCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.entity = entity + c.googleanalyticsadminv1alpharunaccessreportrequest = googleanalyticsadminv1alpharunaccessreportrequest + 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 *AccountsRunAccessReportCall) Fields(s ...googleapi.Field) *AccountsRunAccessReportCall { + 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 *AccountsRunAccessReportCall) Context(ctx context.Context) *AccountsRunAccessReportCall { + 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 *AccountsRunAccessReportCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *AccountsRunAccessReportCall) 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.googleanalyticsadminv1alpharunaccessreportrequest) + 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, "v1alpha/{+entity}:runAccessReport") + 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{ + "entity": c.entity, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "analyticsadmin.accounts.runAccessReport" call. +// Exactly one of *GoogleAnalyticsAdminV1alphaRunAccessReportResponse or +// error will be non-nil. Any non-2xx status code is an error. Response +// headers are in either +// *GoogleAnalyticsAdminV1alphaRunAccessReportResponse.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 *AccountsRunAccessReportCall) Do(opts ...googleapi.CallOption) (*GoogleAnalyticsAdminV1alphaRunAccessReportResponse, 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 := &GoogleAnalyticsAdminV1alphaRunAccessReportResponse{ + 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 a customized report of data access records. The report provides records of each time a user reads Google Analytics reporting data. Access records are retained for up to 2 years. Data Access Reports can be requested for a property. The property must be in Google Analytics 360. This method is only available to Administrators. These data access records include GA4 UI Reporting, GA4 UI Explorations, GA4 Data API, and other products like Firebase \u0026 Admob that can retrieve data from Google Analytics through a linkage. These records don't include property configuration changes like adding a stream or changing a property's time zone. For configuration change history, see [searchChangeHistoryEvents](https://developers.google.com/analytics/devguides/config/admin/v1/rest/v1alpha/accounts/searchChangeHistoryEvents).", + // "flatPath": "v1alpha/accounts/{accountsId}:runAccessReport", + // "httpMethod": "POST", + // "id": "analyticsadmin.accounts.runAccessReport", + // "parameterOrder": [ + // "entity" + // ], + // "parameters": { + // "entity": { + // "description": "The Data Access Report is requested for this property. For example if \"123\" is your GA4 property ID, then entity should be \"properties/123\".", + // "location": "path", + // "pattern": "^accounts/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1alpha/{+entity}:runAccessReport", + // "request": { + // "$ref": "GoogleAnalyticsAdminV1alphaRunAccessReportRequest" + // }, + // "response": { + // "$ref": "GoogleAnalyticsAdminV1alphaRunAccessReportResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/analytics.edit", + // "https://www.googleapis.com/auth/analytics.readonly" + // ] + // } + +} + // method id "analyticsadmin.accounts.searchChangeHistoryEvents": type AccountsSearchChangeHistoryEventsCall struct { diff --git a/analyticshub/v1beta1/analyticshub-api.json b/analyticshub/v1beta1/analyticshub-api.json index 15d70486b35..ee8c1b74db1 100644 --- a/analyticshub/v1beta1/analyticshub-api.json +++ b/analyticshub/v1beta1/analyticshub-api.json @@ -695,7 +695,7 @@ } } }, - "revision": "20230127", + "revision": "20230220", "rootUrl": "https://analyticshub.googleapis.com/", "schemas": { "AuditConfig": { @@ -1195,6 +1195,10 @@ "description": "Restricted export config, used to configure restricted export on linked dataset.", "id": "RestrictedExportConfig", "properties": { + "enabled": { + "description": "If true, enable restricted export.", + "type": "boolean" + }, "restrictDirectTableAccess": { "description": "If true, restrict direct table access(read api/tabledata.list) on linked table.", "type": "boolean" diff --git a/analyticshub/v1beta1/analyticshub-gen.go b/analyticshub/v1beta1/analyticshub-gen.go index 2975c6f4ce2..df9df6a8b3c 100644 --- a/analyticshub/v1beta1/analyticshub-gen.go +++ b/analyticshub/v1beta1/analyticshub-gen.go @@ -1186,6 +1186,9 @@ func (s *Publisher) MarshalJSON() ([]byte, error) { // RestrictedExportConfig: Restricted export config, used to configure // restricted export on linked dataset. type RestrictedExportConfig struct { + // Enabled: If true, enable restricted export. + Enabled bool `json:"enabled,omitempty"` + // RestrictDirectTableAccess: If true, restrict direct table access(read // api/tabledata.list) on linked table. RestrictDirectTableAccess bool `json:"restrictDirectTableAccess,omitempty"` @@ -1194,22 +1197,20 @@ type RestrictedExportConfig struct { // 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 is a list of field names (e.g. "Enabled") 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 is a list of field names (e.g. "Enabled") 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/api-list.json b/api-list.json index 895223ee369..1e36e93af3a 100644 --- a/api-list.json +++ b/api-list.json @@ -77,6 +77,21 @@ "documentationLink": "https://cloud.google.com/access-context-manager/docs/reference/rest/", "preferred": true }, + { + "kind": "discovery#directoryItem", + "id": "acmedns:v1", + "name": "acmedns", + "version": "v1", + "title": "ACME DNS API", + "description": "Google Domains ACME DNS API that allows users to complete ACME DNS-01 challenges for a domain.", + "discoveryRestUrl": "https://acmedns.googleapis.com/$discovery/rest?version=v1", + "icons": { + "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", + "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" + }, + "documentationLink": "https://developers.google.com/domains/acme-dns/", + "preferred": true + }, { "kind": "discovery#directoryItem", "id": "adexchangebuyer2:v2beta1", @@ -5827,6 +5842,36 @@ "documentationLink": "https://cloud.google.com/migrate/virtual-machines", "preferred": true }, + { + "kind": "discovery#directoryItem", + "id": "vpcaccess:v1beta1", + "name": "vpcaccess", + "version": "v1beta1", + "title": "Serverless VPC Access API", + "description": "API for managing VPC access connectors.", + "discoveryRestUrl": "https://vpcaccess.googleapis.com/$discovery/rest?version=v1beta1", + "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/vpc/docs/configure-serverless-vpc-access", + "preferred": false + }, + { + "kind": "discovery#directoryItem", + "id": "vpcaccess:v1", + "name": "vpcaccess", + "version": "v1", + "title": "Serverless VPC Access API", + "description": "API for managing VPC access connectors.", + "discoveryRestUrl": "https://vpcaccess.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/vpc/docs/configure-serverless-vpc-access", + "preferred": true + }, { "kind": "discovery#directoryItem", "id": "webfonts:v1", diff --git a/assuredworkloads/v1/assuredworkloads-api.json b/assuredworkloads/v1/assuredworkloads-api.json index cd3a3a0f250..e7648ea1eb6 100644 --- a/assuredworkloads/v1/assuredworkloads-api.json +++ b/assuredworkloads/v1/assuredworkloads-api.json @@ -519,7 +519,7 @@ } } }, - "revision": "20230123", + "revision": "20230218", "rootUrl": "https://assuredworkloads.googleapis.com/", "schemas": { "GoogleCloudAssuredworkloadsV1AcknowledgeViolationRequest": { @@ -564,6 +564,7 @@ "AU_REGIONS_AND_US_SUPPORT", "ASSURED_WORKLOADS_FOR_PARTNERS", "ISR_REGIONS", + "ISR_REGIONS_AND_SUPPORT", "CA_PROTECTED_B" ], "enumDescriptions": [ @@ -581,6 +582,7 @@ "Assured Workloads for Australia Regions and Support controls Available for public preview consumption. Don't create production workloads.", "Assured Workloads for Partners", "Assured Workloads for Israel Regions", + "Assured Workloads for Israel Regions", "Assured Workloads for Canada Protected B regime" ], "type": "string" @@ -910,6 +912,7 @@ "AU_REGIONS_AND_US_SUPPORT", "ASSURED_WORKLOADS_FOR_PARTNERS", "ISR_REGIONS", + "ISR_REGIONS_AND_SUPPORT", "CA_PROTECTED_B" ], "enumDescriptions": [ @@ -927,6 +930,7 @@ "Assured Workloads for Australia Regions and Support controls Available for public preview consumption. Don't create production workloads.", "Assured Workloads for Partners", "Assured Workloads for Israel Regions", + "Assured Workloads for Israel Regions", "Assured Workloads for Canada Protected B regime" ], "type": "string" diff --git a/assuredworkloads/v1/assuredworkloads-gen.go b/assuredworkloads/v1/assuredworkloads-gen.go index a3ee11a720a..130ed3e2b75 100644 --- a/assuredworkloads/v1/assuredworkloads-gen.go +++ b/assuredworkloads/v1/assuredworkloads-gen.go @@ -268,6 +268,7 @@ type GoogleCloudAssuredworkloadsV1CreateWorkloadOperationMetadata struct { // consumption. Don't create production workloads. // "ASSURED_WORKLOADS_FOR_PARTNERS" - Assured Workloads for Partners // "ISR_REGIONS" - Assured Workloads for Israel Regions + // "ISR_REGIONS_AND_SUPPORT" - Assured Workloads for Israel Regions // "CA_PROTECTED_B" - Assured Workloads for Canada Protected B regime ComplianceRegime string `json:"complianceRegime,omitempty"` @@ -766,6 +767,7 @@ type GoogleCloudAssuredworkloadsV1Workload struct { // consumption. Don't create production workloads. // "ASSURED_WORKLOADS_FOR_PARTNERS" - Assured Workloads for Partners // "ISR_REGIONS" - Assured Workloads for Israel Regions + // "ISR_REGIONS_AND_SUPPORT" - Assured Workloads for Israel Regions // "CA_PROTECTED_B" - Assured Workloads for Canada Protected B regime ComplianceRegime string `json:"complianceRegime,omitempty"` diff --git a/assuredworkloads/v1beta1/assuredworkloads-api.json b/assuredworkloads/v1beta1/assuredworkloads-api.json index 1a48aafbfc1..9e93060bac1 100644 --- a/assuredworkloads/v1beta1/assuredworkloads-api.json +++ b/assuredworkloads/v1beta1/assuredworkloads-api.json @@ -595,7 +595,7 @@ } } }, - "revision": "20230123", + "revision": "20230218", "rootUrl": "https://assuredworkloads.googleapis.com/", "schemas": { "GoogleCloudAssuredworkloadsV1beta1AcknowledgeViolationRequest": { @@ -926,6 +926,7 @@ "AU_REGIONS_AND_US_SUPPORT", "ASSURED_WORKLOADS_FOR_PARTNERS", "ISR_REGIONS", + "ISR_REGIONS_AND_SUPPORT", "CA_PROTECTED_B" ], "enumDescriptions": [ @@ -943,6 +944,7 @@ "Assured Workloads for Australia Regions and Support controls Available for public preview consumption. Don't create production workloads.", "Assured Workloads for Partners;", "Assured Workloads for Israel", + "Assured Workloads for Israel Regions", "Assured Workloads for Canada Protected B regime" ], "type": "string" diff --git a/assuredworkloads/v1beta1/assuredworkloads-gen.go b/assuredworkloads/v1beta1/assuredworkloads-gen.go index fa8ba7f602f..f48057a28e7 100644 --- a/assuredworkloads/v1beta1/assuredworkloads-gen.go +++ b/assuredworkloads/v1beta1/assuredworkloads-gen.go @@ -790,6 +790,7 @@ type GoogleCloudAssuredworkloadsV1beta1Workload struct { // consumption. Don't create production workloads. // "ASSURED_WORKLOADS_FOR_PARTNERS" - Assured Workloads for Partners; // "ISR_REGIONS" - Assured Workloads for Israel + // "ISR_REGIONS_AND_SUPPORT" - Assured Workloads for Israel Regions // "CA_PROTECTED_B" - Assured Workloads for Canada Protected B regime ComplianceRegime string `json:"complianceRegime,omitempty"` diff --git a/chat/v1/chat-api.json b/chat/v1/chat-api.json index 9d057d852f0..11efaa1e804 100644 --- a/chat/v1/chat-api.json +++ b/chat/v1/chat-api.json @@ -518,7 +518,7 @@ } } }, - "revision": "20230216", + "revision": "20230219", "rootUrl": "https://chat.googleapis.com/", "schemas": { "ActionParameter": { @@ -1131,7 +1131,7 @@ "type": "object" }, "GoogleAppsCardV1Action": { - "description": "An action that describes the behavior when the form is submitted. For example, an Apps Script can be invoked to handle the form.", + "description": "An action that describes the behavior when the form is submitted. For example, an Apps Script can be invoked to handle the form. If the action is triggered, the form values are sent to the server.", "id": "GoogleAppsCardV1Action", "properties": { "function": { @@ -1170,7 +1170,7 @@ "type": "array" }, "persistValues": { - "description": "Indicates whether form values persist after the action. The default value is `false`. If `true`, form values remain after the action is triggered. When using [LoadIndicator.NONE](https://developers.google.com/workspace/add-ons/reference/rpc/google.apps.card.v1#loadindicator) for actions, `persist_values` = `true`is recommended, as it ensures that any changes made by the user after form or on change actions are sent to the server are not overwritten by the response. If `false`, the form values are cleared when the action is triggered. When `persist_values` is set to `false`, it is strongly recommended that the card use [LoadIndicator.SPINNER](https://developers.google.com/workspace/add-ons/reference/rpc/google.apps.card.v1#loadindicator) for all actions, as this locks the UI to ensure no changes are made by the user while the action is being processed. Not supported by Chat apps.", + "description": "Indicates whether form values persist after the action. The default value is `false`. If `true`, form values remain after the action is triggered. To let the user make changes while the action is being processed, set [LoadIndicator](https://developers.google.com/workspace/add-ons/reference/rpc/google.apps.card.v1#loadindicator) to `NONE`. For [card messages](https://developers.google.com/chat/api/guides/message-formats/cards) in Chat apps, you must also set the action's [ResponseType](https://developers.google.com/chat/api/reference/rest/v1/spaces.messages#responsetype) to `UPDATE_MESSAGE` and use the same [`card_id`](https://developers.google.com/chat/api/reference/rest/v1/spaces.messages#CardWithId) from the card that contained the action. If `false`, the form values are cleared when the action is triggered. To prevent the user from making changes while the action is being processed, set [LoadIndicator](https://developers.google.com/workspace/add-ons/reference/rpc/google.apps.card.v1#loadindicator) to `SPINNER`.", "type": "boolean" } }, @@ -1439,7 +1439,7 @@ }, "endIcon": { "$ref": "GoogleAppsCardV1Icon", - "description": "An icon displayed after the text. Supports [standard](https://developers.google.com/chat/api/guides/message-formats/cards#builtinicons) and [custom](https://developers.google.com/chat/api/guides/message-formats/cards#customicons) icons." + "description": "An icon displayed after the text. Supports [built-in](https://developers.google.com/chat/api/guides/message-formats/cards#builtinicons) and [custom](https://developers.google.com/chat/api/guides/message-formats/cards#customicons) icons." }, "icon": { "$ref": "GoogleAppsCardV1Icon", @@ -1455,7 +1455,7 @@ }, "switchControl": { "$ref": "GoogleAppsCardV1SwitchControl", - "description": "A switch widget can be clicked to change its state and trigger an action. Currently supported in [dialogs](https://developers.google.com/chat/how-tos/dialogs). Support for [card messages](https://developers.google.com/chat/api/guides/message-formats/cards) is coming soon." + "description": "A switch widget can be clicked to change its state and trigger an action." }, "text": { "description": "Required. The primary text. Supports simple formatting. See Text formatting for formatting details.", @@ -1479,7 +1479,7 @@ "type": "object" }, "GoogleAppsCardV1Grid": { - "description": "Displays a grid with a collection of items. A grid supports any number of columns and items. The number of rows is determined by items divided by columns. A grid with 10 items and 2 columns has 5 rows. A grid with 11 items and 2 columns has 6 rows. Currently supported in [dialogs](https://developers.google.com/chat/how-tos/dialogs). Support for [card messages](https://developers.google.com/chat/api/guides/message-formats/cards) is coming soon. For example, the following JSON creates a 2 column grid with a single item: ``` \"grid\": { \"title\": \"A fine collection of items\", \"columnCount\": 2, \"borderStyle\": { \"type\": \"STROKE\", \"cornerRadius\": 4 }, \"items\": [ { \"image\": { \"imageUri\": \"https://www.example.com/image.png\", \"cropStyle\": { \"type\": \"SQUARE\" }, \"borderStyle\": { \"type\": \"STROKE\" } }, \"title\": \"An item\", \"textAlignment\": \"CENTER\" } ], \"onClick\": { \"openLink\": { \"url\": \"https://www.example.com\" } } } ```", + "description": "Displays a grid with a collection of items. A grid supports any number of columns and items. The number of rows is determined by items divided by columns. A grid with 10 items and 2 columns has 5 rows. A grid with 11 items and 2 columns has 6 rows. For example, the following JSON creates a 2 column grid with a single item: ``` \"grid\": { \"title\": \"A fine collection of items\", \"columnCount\": 2, \"borderStyle\": { \"type\": \"STROKE\", \"cornerRadius\": 4 }, \"items\": [ { \"image\": { \"imageUri\": \"https://www.example.com/image.png\", \"cropStyle\": { \"type\": \"SQUARE\" }, \"borderStyle\": { \"type\": \"STROKE\" } }, \"title\": \"An item\", \"textAlignment\": \"CENTER\" } ], \"onClick\": { \"openLink\": { \"url\": \"https://www.example.com\" } } } ```", "id": "GoogleAppsCardV1Grid", "properties": { "borderStyle": { @@ -1547,7 +1547,7 @@ "type": "object" }, "GoogleAppsCardV1Icon": { - "description": "An icon displayed in a widget on a card. Supports [standard](https://developers.google.com/chat/api/guides/message-formats/cards) and [custom](https://developers.google.com/chat/api/guides/message-formats/cards#customicons) icons.", + "description": "An icon displayed in a widget on a card. Supports [built-in](https://developers.google.com/chat/api/guides/message-formats/cards#builtinicons) and [custom](https://developers.google.com/chat/api/guides/message-formats/cards#customicons) icons.", "id": "GoogleAppsCardV1Icon", "properties": { "altText": { @@ -1559,7 +1559,7 @@ "type": "string" }, "imageType": { - "description": "The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a standard icon.", + "description": "The crop style applied to the image. In some cases, applying a `CIRCLE` crop causes the image to be drawn larger than a built-in icon.", "enum": [ "SQUARE", "CIRCLE" @@ -1571,7 +1571,7 @@ "type": "string" }, "knownIcon": { - "description": "Display one of the standard icons provided by Google Workspace. For example, to display an airplane icon, specify `AIRPLANE`. For a bus, specify `BUS`. For a full list of supported icons, see [standard icons](https://developers.google.com/chat/api/guides/message-formats/cards).", + "description": "Display one of the built-in icons provided by Google Workspace. For example, to display an airplane icon, specify `AIRPLANE`. For a bus, specify `BUS`. For a full list of supported icons, see [built-in icons](https://developers.google.com/chat/api/guides/message-formats/cards#builtinicons).", "type": "string" } }, @@ -1735,7 +1735,7 @@ "type": "object" }, "GoogleAppsCardV1SelectionInput": { - "description": "A widget that creates a UI item with options for users to select. For example, a dropdown menu or check list. Chat apps receive and can process the value of entered text during form input events. For details about working with form inputs, see [Receive form data](https://developers.google.com/chat/how-tos/dialogs#receive_form_data_from_dialogs). When you need to collect data from users that matches options you set, use a selection input. To collect abstract data from users, use the text input widget instead. Only supported in [dialogs](https://developers.google.com/chat/how-tos/dialogs). Support for [card messages](https://developers.google.com/chat/api/guides/message-formats/cards) coming soon.", + "description": "A widget that creates a UI item with options for users to select. For example, a dropdown menu or check list. Chat apps receive and can process the value of entered text during form input events. For details about working with form inputs, see [Receive form data](https://developers.google.com/chat/how-tos/dialogs#receive_form_data_from_dialogs). When you need to collect data from users that matches options you set, use a selection input. To collect abstract data from users, use the text input widget instead.", "id": "GoogleAppsCardV1SelectionInput", "properties": { "items": { @@ -1766,10 +1766,10 @@ "DROPDOWN" ], "enumDescriptions": [ - "A set of checkboxes. Users can select multiple check boxes per selection input. Currently supported in [dialogs](https://developers.google.com/chat/how-tos/dialogs). Support for [card messages](https://developers.google.com/chat/api/guides/message-formats/cards) is coming soon.", - "A set of radio buttons. Users can select one radio button per selection input. Currently supported in [dialogs](https://developers.google.com/chat/how-tos/dialogs). Support for [card messages](https://developers.google.com/chat/api/guides/message-formats/cards) is coming soon.", - "A set of switches. Users can turn on multiple switches at once per selection input. Currently supported in [dialogs](https://developers.google.com/chat/how-tos/dialogs). Support for [card messages](https://developers.google.com/chat/api/guides/message-formats/cards) is coming soon.", - "A dropdown menu. Users can select one dropdown menu item per selection input. Currently supported in [dialogs](https://developers.google.com/chat/how-tos/dialogs). Support for [card messages](https://developers.google.com/chat/api/guides/message-formats/cards) is coming soon." + "A set of checkboxes. Users can select multiple check boxes per selection input.", + "A set of radio buttons. Users can select one radio button per selection input.", + "A set of switches. Users can turn on multiple switches at once per selection input.", + "A dropdown menu. Users can select one dropdown menu item per selection input." ], "type": "string" } @@ -1821,7 +1821,7 @@ "type": "object" }, "GoogleAppsCardV1SwitchControl": { - "description": "Either a toggle-style switch or a checkbox inside a `decoratedText` widget. Only supported on the `decoratedText` widget. Currently supported in [dialogs](https://developers.google.com/chat/how-tos/dialogs). Support for [card messages](https://developers.google.com/chat/api/guides/message-formats/cards) is coming soon.", + "description": "Either a toggle-style switch or a checkbox inside a `decoratedText` widget. Only supported on the `decoratedText` widget.", "id": "GoogleAppsCardV1SwitchControl", "properties": { "controlType": { @@ -1858,7 +1858,7 @@ "type": "object" }, "GoogleAppsCardV1TextInput": { - "description": "A field in which users can enter text. Supports suggestions and on-change actions. Chat apps receive and can process the value of entered text during form input events. For details about working with form inputs, see [Receive form data](https://developers.google.com/chat/how-tos/dialogs#receive_form_data_from_dialogs). When you need to collect abstract data from users, use a text input. To collect defined data from users, use the selection input widget instead. Only supported in [dialogs](https://developers.google.com/chat/how-tos/dialogs). Support for [card messages](https://developers.google.com/chat/api/guides/message-formats/cards) coming soon.", + "description": "A field in which users can enter text. Supports suggestions and on-change actions. Chat apps receive and can process the value of entered text during form input events. For details about working with form inputs, see [Receive form data](https://developers.google.com/chat/how-tos/dialogs#receive_form_data_from_dialogs). When you need to collect abstract data from users, use a text input. To collect defined data from users, use the selection input widget instead.", "id": "GoogleAppsCardV1TextInput", "properties": { "autoCompleteAction": { @@ -1937,7 +1937,7 @@ }, "grid": { "$ref": "GoogleAppsCardV1Grid", - "description": "Displays a grid with a collection of items. A grid supports any number of columns and items. The number of rows is determined by the upper bounds of the number items divided by the number of columns. A grid with 10 items and 2 columns has 5 rows. A grid with 11 items and 2 columns has 6 rows. Currently supported in [dialogs](https://developers.google.com/chat/how-tos/dialogs). Support for [card messages](https://developers.google.com/chat/api/guides/message-formats/cards) is coming soon. For example, the following JSON creates a 2 column grid with a single item: ``` \"grid\": { \"title\": \"A fine collection of items\", \"columnCount\": 2, \"borderStyle\": { \"type\": \"STROKE\", \"cornerRadius\": 4 }, \"items\": [ { \"image\": { \"imageUri\": \"https://www.example.com/image.png\", \"cropStyle\": { \"type\": \"SQUARE\" }, \"borderStyle\": { \"type\": \"STROKE\" } }, \"title\": \"An item\", \"textAlignment\": \"CENTER\" } ], \"onClick\": { \"openLink\": { \"url\": \"https://www.example.com\" } } } ```" + "description": "Displays a grid with a collection of items. A grid supports any number of columns and items. The number of rows is determined by the upper bounds of the number items divided by the number of columns. A grid with 10 items and 2 columns has 5 rows. A grid with 11 items and 2 columns has 6 rows. For example, the following JSON creates a 2 column grid with a single item: ``` \"grid\": { \"title\": \"A fine collection of items\", \"columnCount\": 2, \"borderStyle\": { \"type\": \"STROKE\", \"cornerRadius\": 4 }, \"items\": [ { \"image\": { \"imageUri\": \"https://www.example.com/image.png\", \"cropStyle\": { \"type\": \"SQUARE\" }, \"borderStyle\": { \"type\": \"STROKE\" } }, \"title\": \"An item\", \"textAlignment\": \"CENTER\" } ], \"onClick\": { \"openLink\": { \"url\": \"https://www.example.com\" } } } ```" }, "image": { "$ref": "GoogleAppsCardV1Image", @@ -1945,11 +1945,11 @@ }, "selectionInput": { "$ref": "GoogleAppsCardV1SelectionInput", - "description": "Displays a selection control that lets users select items. Selection controls can be check boxes, radio buttons, switches, or dropdown menus. Currently supported in [dialogs](https://developers.google.com/chat/how-tos/dialogs). Support for [card messages](https://developers.google.com/chat/api/guides/message-formats/cards) is coming soon. For example, the following JSON creates a dropdown menu that lets users choose a size: ``` \"selectionInput\": { \"name\": \"size\", \"label\": \"Size\" \"type\": \"DROPDOWN\", \"items\": [ { \"text\": \"S\", \"value\": \"small\", \"selected\": false }, { \"text\": \"M\", \"value\": \"medium\", \"selected\": true }, { \"text\": \"L\", \"value\": \"large\", \"selected\": false }, { \"text\": \"XL\", \"value\": \"extra_large\", \"selected\": false } ] } ```" + "description": "Displays a selection control that lets users select items. Selection controls can be check boxes, radio buttons, switches, or dropdown menus. For example, the following JSON creates a dropdown menu that lets users choose a size: ``` \"selectionInput\": { \"name\": \"size\", \"label\": \"Size\" \"type\": \"DROPDOWN\", \"items\": [ { \"text\": \"S\", \"value\": \"small\", \"selected\": false }, { \"text\": \"M\", \"value\": \"medium\", \"selected\": true }, { \"text\": \"L\", \"value\": \"large\", \"selected\": false }, { \"text\": \"XL\", \"value\": \"extra_large\", \"selected\": false } ] } ```" }, "textInput": { "$ref": "GoogleAppsCardV1TextInput", - "description": "Displays a text box that users can type into. Currently supported in [dialogs](https://developers.google.com/chat/how-tos/dialogs). Support for [card messages](https://developers.google.com/chat/api/guides/message-formats/cards) is coming soon. For example, the following JSON creates a text input for an email address: ``` \"textInput\": { \"name\": \"mailing_address\", \"label\": \"Mailing Address\" } ``` As another example, the following JSON creates a text input for a programming language with static suggestions: ``` \"textInput\": { \"name\": \"preferred_programing_language\", \"label\": \"Preferred Language\", \"initialSuggestions\": { \"items\": [ { \"text\": \"C++\" }, { \"text\": \"Java\" }, { \"text\": \"JavaScript\" }, { \"text\": \"Python\" } ] } } ```" + "description": "Displays a text box that users can type into. For example, the following JSON creates a text input for an email address: ``` \"textInput\": { \"name\": \"mailing_address\", \"label\": \"Mailing Address\" } ``` As another example, the following JSON creates a text input for a programming language with static suggestions: ``` \"textInput\": { \"name\": \"preferred_programing_language\", \"label\": \"Preferred Language\", \"initialSuggestions\": { \"items\": [ { \"text\": \"C++\" }, { \"text\": \"Java\" }, { \"text\": \"JavaScript\" }, { \"text\": \"Python\" } ] } } ```" }, "textParagraph": { "$ref": "GoogleAppsCardV1TextParagraph", diff --git a/chat/v1/chat-gen.go b/chat/v1/chat-gen.go index 7b4b47e55b4..f5f9fb728ec 100644 --- a/chat/v1/chat-gen.go +++ b/chat/v1/chat-gen.go @@ -1327,7 +1327,8 @@ func (s *FormAction) MarshalJSON() ([]byte, error) { // GoogleAppsCardV1Action: An action that describes the behavior when // the form is submitted. For example, an Apps Script can be invoked to -// handle the form. +// handle the form. If the action is triggered, the form values are sent +// to the server. type GoogleAppsCardV1Action struct { // Function: A custom function to invoke when the containing element is // clicked or othrwise activated. For example usage, see Create @@ -1373,18 +1374,20 @@ type GoogleAppsCardV1Action struct { // PersistValues: Indicates whether form values persist after the // action. The default value is `false`. If `true`, form values remain - // after the action is triggered. When using LoadIndicator.NONE + // after the action is triggered. To let the user make changes while the + // action is being processed, set LoadIndicator // (https://developers.google.com/workspace/add-ons/reference/rpc/google.apps.card.v1#loadindicator) - // for actions, `persist_values` = `true`is recommended, as it ensures - // that any changes made by the user after form or on change actions are - // sent to the server are not overwritten by the response. If `false`, - // the form values are cleared when the action is triggered. When - // `persist_values` is set to `false`, it is strongly recommended that - // the card use LoadIndicator.SPINNER + // to `NONE`. For card messages + // (https://developers.google.com/chat/api/guides/message-formats/cards) + // in Chat apps, you must also set the action's ResponseType + // (https://developers.google.com/chat/api/reference/rest/v1/spaces.messages#responsetype) + // to `UPDATE_MESSAGE` and use the same `card_id` + // (https://developers.google.com/chat/api/reference/rest/v1/spaces.messages#CardWithId) + // from the card that contained the action. If `false`, the form values + // are cleared when the action is triggered. To prevent the user from + // making changes while the action is being processed, set LoadIndicator // (https://developers.google.com/workspace/add-ons/reference/rpc/google.apps.card.v1#loadindicator) - // for all actions, as this locks the UI to ensure no changes are made - // by the user while the action is being processed. Not supported by - // Chat apps. + // to `SPINNER`. PersistValues bool `json:"persistValues,omitempty"` // ForceSendFields is a list of field names (e.g. "Function") to @@ -1897,7 +1900,7 @@ type GoogleAppsCardV1DecoratedText struct { // Button: A button that can be clicked to trigger an action. Button *GoogleAppsCardV1Button `json:"button,omitempty"` - // EndIcon: An icon displayed after the text. Supports standard + // EndIcon: An icon displayed after the text. Supports built-in // (https://developers.google.com/chat/api/guides/message-formats/cards#builtinicons) // and custom // (https://developers.google.com/chat/api/guides/message-formats/cards#customicons) @@ -1915,11 +1918,7 @@ type GoogleAppsCardV1DecoratedText struct { StartIcon *GoogleAppsCardV1Icon `json:"startIcon,omitempty"` // SwitchControl: A switch widget can be clicked to change its state and - // trigger an action. Currently supported in dialogs - // (https://developers.google.com/chat/how-tos/dialogs). Support for - // card messages - // (https://developers.google.com/chat/api/guides/message-formats/cards) - // is coming soon. + // trigger an action. SwitchControl *GoogleAppsCardV1SwitchControl `json:"switchControl,omitempty"` // Text: Required. The primary text. Supports simple formatting. See @@ -1967,14 +1966,10 @@ type GoogleAppsCardV1Divider struct { // grid supports any number of columns and items. The number of rows is // determined by items divided by columns. A grid with 10 items and 2 // columns has 5 rows. A grid with 11 items and 2 columns has 6 rows. -// Currently supported in dialogs -// (https://developers.google.com/chat/how-tos/dialogs). Support for -// card messages -// (https://developers.google.com/chat/api/guides/message-formats/cards) -// is coming soon. For example, the following JSON creates a 2 column -// grid with a single item: ``` "grid": { "title": "A fine collection of -// items", "columnCount": 2, "borderStyle": { "type": "STROKE", -// "cornerRadius": 4 }, "items": [ { "image": { "imageUri": +// For example, the following JSON creates a 2 column grid with a single +// item: ``` "grid": { "title": "A fine collection of items", +// "columnCount": 2, "borderStyle": { "type": "STROKE", "cornerRadius": +// 4 }, "items": [ { "image": { "imageUri": // "https://www.example.com/image.png", "cropStyle": { "type": "SQUARE" // }, "borderStyle": { "type": "STROKE" } }, "title": "An item", // "textAlignment": "CENTER" } ], "onClick": { "openLink": { "url": @@ -2073,8 +2068,8 @@ func (s *GoogleAppsCardV1GridItem) MarshalJSON() ([]byte, error) { } // GoogleAppsCardV1Icon: An icon displayed in a widget on a card. -// Supports standard -// (https://developers.google.com/chat/api/guides/message-formats/cards) +// Supports built-in +// (https://developers.google.com/chat/api/guides/message-formats/cards#builtinicons) // and custom // (https://developers.google.com/chat/api/guides/message-formats/cards#customicons) // icons. @@ -2099,7 +2094,7 @@ type GoogleAppsCardV1Icon struct { // ImageType: The crop style applied to the image. In some cases, // applying a `CIRCLE` crop causes the image to be drawn larger than a - // standard icon. + // built-in icon. // // Possible values: // "SQUARE" - Default value. Applies a square mask to the image. For @@ -2108,11 +2103,11 @@ type GoogleAppsCardV1Icon struct { // image becomes a circle with a diameter of 3. ImageType string `json:"imageType,omitempty"` - // KnownIcon: Display one of the standard icons provided by Google + // KnownIcon: Display one of the built-in icons provided by Google // Workspace. For example, to display an airplane icon, specify // `AIRPLANE`. For a bus, specify `BUS`. For a full list of supported - // icons, see standard icons - // (https://developers.google.com/chat/api/guides/message-formats/cards). + // icons, see built-in icons + // (https://developers.google.com/chat/api/guides/message-formats/cards#builtinicons). KnownIcon string `json:"knownIcon,omitempty"` // ForceSendFields is a list of field names (e.g. "AltText") to @@ -2425,11 +2420,7 @@ func (s *GoogleAppsCardV1Section) MarshalJSON() ([]byte, error) { // (https://developers.google.com/chat/how-tos/dialogs#receive_form_data_from_dialogs). // When you need to collect data from users that matches options you // set, use a selection input. To collect abstract data from users, use -// the text input widget instead. Only supported in dialogs -// (https://developers.google.com/chat/how-tos/dialogs). Support for -// card messages -// (https://developers.google.com/chat/api/guides/message-formats/cards) -// coming soon. +// the text input widget instead. type GoogleAppsCardV1SelectionInput struct { // Items: An array of the selected items. For example, all the selected // check boxes. @@ -2463,29 +2454,13 @@ type GoogleAppsCardV1SelectionInput struct { // // Possible values: // "CHECK_BOX" - A set of checkboxes. Users can select multiple check - // boxes per selection input. Currently supported in - // [dialogs](https://developers.google.com/chat/how-tos/dialogs). - // Support for [card - // messages](https://developers.google.com/chat/api/guides/message-format - // s/cards) is coming soon. + // boxes per selection input. // "RADIO_BUTTON" - A set of radio buttons. Users can select one radio - // button per selection input. Currently supported in - // [dialogs](https://developers.google.com/chat/how-tos/dialogs). - // Support for [card - // messages](https://developers.google.com/chat/api/guides/message-format - // s/cards) is coming soon. + // button per selection input. // "SWITCH" - A set of switches. Users can turn on multiple switches - // at once per selection input. Currently supported in - // [dialogs](https://developers.google.com/chat/how-tos/dialogs). - // Support for [card - // messages](https://developers.google.com/chat/api/guides/message-format - // s/cards) is coming soon. + // at once per selection input. // "DROPDOWN" - A dropdown menu. Users can select one dropdown menu - // item per selection input. Currently supported in - // [dialogs](https://developers.google.com/chat/how-tos/dialogs). - // Support for [card - // messages](https://developers.google.com/chat/api/guides/message-format - // s/cards) is coming soon. + // item per selection input. Type string `json:"type,omitempty"` // ForceSendFields is a list of field names (e.g. "Items") to @@ -2623,11 +2598,7 @@ func (s *GoogleAppsCardV1Suggestions) MarshalJSON() ([]byte, error) { // GoogleAppsCardV1SwitchControl: Either a toggle-style switch or a // checkbox inside a `decoratedText` widget. Only supported on the -// `decoratedText` widget. Currently supported in dialogs -// (https://developers.google.com/chat/how-tos/dialogs). Support for -// card messages -// (https://developers.google.com/chat/api/guides/message-formats/cards) -// is coming soon. +// `decoratedText` widget. type GoogleAppsCardV1SwitchControl struct { // ControlType: How the switch appears in the user interface. // @@ -2686,11 +2657,7 @@ func (s *GoogleAppsCardV1SwitchControl) MarshalJSON() ([]byte, error) { // (https://developers.google.com/chat/how-tos/dialogs#receive_form_data_from_dialogs). // When you need to collect abstract data from users, use a text input. // To collect defined data from users, use the selection input widget -// instead. Only supported in dialogs -// (https://developers.google.com/chat/how-tos/dialogs). Support for -// card messages -// (https://developers.google.com/chat/api/guides/message-formats/cards) -// coming soon. +// instead. type GoogleAppsCardV1TextInput struct { // AutoCompleteAction: Optional. Specify what action to take when the // text input field provides suggestions to users who interact with it. @@ -2850,14 +2817,10 @@ type GoogleAppsCardV1Widget struct { // number of columns and items. The number of rows is determined by the // upper bounds of the number items divided by the number of columns. A // grid with 10 items and 2 columns has 5 rows. A grid with 11 items and - // 2 columns has 6 rows. Currently supported in dialogs - // (https://developers.google.com/chat/how-tos/dialogs). Support for - // card messages - // (https://developers.google.com/chat/api/guides/message-formats/cards) - // is coming soon. For example, the following JSON creates a 2 column - // grid with a single item: ``` "grid": { "title": "A fine collection of - // items", "columnCount": 2, "borderStyle": { "type": "STROKE", - // "cornerRadius": 4 }, "items": [ { "image": { "imageUri": + // 2 columns has 6 rows. For example, the following JSON creates a 2 + // column grid with a single item: ``` "grid": { "title": "A fine + // collection of items", "columnCount": 2, "borderStyle": { "type": + // "STROKE", "cornerRadius": 4 }, "items": [ { "image": { "imageUri": // "https://www.example.com/image.png", "cropStyle": { "type": "SQUARE" // }, "borderStyle": { "type": "STROKE" } }, "title": "An item", // "textAlignment": "CENTER" } ], "onClick": { "openLink": { "url": @@ -2872,32 +2835,24 @@ type GoogleAppsCardV1Widget struct { // SelectionInput: Displays a selection control that lets users select // items. Selection controls can be check boxes, radio buttons, - // switches, or dropdown menus. Currently supported in dialogs - // (https://developers.google.com/chat/how-tos/dialogs). Support for - // card messages - // (https://developers.google.com/chat/api/guides/message-formats/cards) - // is coming soon. For example, the following JSON creates a dropdown - // menu that lets users choose a size: ``` "selectionInput": { "name": - // "size", "label": "Size" "type": "DROPDOWN", "items": [ { "text": "S", - // "value": "small", "selected": false }, { "text": "M", "value": - // "medium", "selected": true }, { "text": "L", "value": "large", - // "selected": false }, { "text": "XL", "value": "extra_large", + // switches, or dropdown menus. For example, the following JSON creates + // a dropdown menu that lets users choose a size: ``` "selectionInput": + // { "name": "size", "label": "Size" "type": "DROPDOWN", "items": [ { + // "text": "S", "value": "small", "selected": false }, { "text": "M", + // "value": "medium", "selected": true }, { "text": "L", "value": + // "large", "selected": false }, { "text": "XL", "value": "extra_large", // "selected": false } ] } ``` SelectionInput *GoogleAppsCardV1SelectionInput `json:"selectionInput,omitempty"` - // TextInput: Displays a text box that users can type into. Currently - // supported in dialogs - // (https://developers.google.com/chat/how-tos/dialogs). Support for - // card messages - // (https://developers.google.com/chat/api/guides/message-formats/cards) - // is coming soon. For example, the following JSON creates a text input - // for an email address: ``` "textInput": { "name": "mailing_address", - // "label": "Mailing Address" } ``` As another example, the following - // JSON creates a text input for a programming language with static - // suggestions: ``` "textInput": { "name": - // "preferred_programing_language", "label": "Preferred Language", - // "initialSuggestions": { "items": [ { "text": "C++" }, { "text": - // "Java" }, { "text": "JavaScript" }, { "text": "Python" } ] } } ``` + // TextInput: Displays a text box that users can type into. For example, + // the following JSON creates a text input for an email address: ``` + // "textInput": { "name": "mailing_address", "label": "Mailing Address" + // } ``` As another example, the following JSON creates a text input for + // a programming language with static suggestions: ``` "textInput": { + // "name": "preferred_programing_language", "label": "Preferred + // Language", "initialSuggestions": { "items": [ { "text": "C++" }, { + // "text": "Java" }, { "text": "JavaScript" }, { "text": "Python" } ] } + // } ``` TextInput *GoogleAppsCardV1TextInput `json:"textInput,omitempty"` // TextParagraph: Displays a text paragraph. Supports simple HTML diff --git a/containeranalysis/v1/containeranalysis-api.json b/containeranalysis/v1/containeranalysis-api.json index e8f9e2cbf93..ff9d6255f40 100644 --- a/containeranalysis/v1/containeranalysis-api.json +++ b/containeranalysis/v1/containeranalysis-api.json @@ -755,7 +755,7 @@ } } }, - "revision": "20230127", + "revision": "20230221", "rootUrl": "https://containeranalysis.googleapis.com/", "schemas": { "AliasContext": { @@ -4736,6 +4736,10 @@ "format": "float", "type": "number" }, + "cvssV2": { + "$ref": "CVSS", + "description": "The full description of the v2 CVSS for this vulnerability." + }, "cvssV3": { "$ref": "CVSSv3", "description": "The full description of the CVSSv3 for this vulnerability." @@ -4805,6 +4809,10 @@ "format": "float", "type": "number" }, + "cvssV2": { + "$ref": "CVSS", + "description": "The cvss v2 score for the vulnerability." + }, "cvssVersion": { "description": "Output only. CVSS version used to populate cvss_score and severity.", "enum": [ diff --git a/containeranalysis/v1/containeranalysis-gen.go b/containeranalysis/v1/containeranalysis-gen.go index c7154e53f6f..85540ae25a5 100644 --- a/containeranalysis/v1/containeranalysis-gen.go +++ b/containeranalysis/v1/containeranalysis-gen.go @@ -6342,6 +6342,9 @@ type VulnerabilityNote struct { // severity. CvssScore float64 `json:"cvssScore,omitempty"` + // CvssV2: The full description of the v2 CVSS for this vulnerability. + CvssV2 *CVSS `json:"cvssV2,omitempty"` + // CvssV3: The full description of the CVSSv3 for this vulnerability. CvssV3 *CVSSv3 `json:"cvssV3,omitempty"` @@ -6425,6 +6428,9 @@ type VulnerabilityOccurrence struct { // indicates high severity. CvssScore float64 `json:"cvssScore,omitempty"` + // CvssV2: The cvss v2 score for the vulnerability. + CvssV2 *CVSS `json:"cvssV2,omitempty"` + // CvssVersion: Output only. CVSS version used to populate cvss_score // and severity. // diff --git a/containeranalysis/v1alpha1/containeranalysis-api.json b/containeranalysis/v1alpha1/containeranalysis-api.json index 2f245912471..c574fa14e4d 100644 --- a/containeranalysis/v1alpha1/containeranalysis-api.json +++ b/containeranalysis/v1alpha1/containeranalysis-api.json @@ -609,7 +609,8 @@ "SPDX_PACKAGE", "SPDX_FILE", "SPDX_RELATIONSHIP", - "DSSE_ATTESTATION" + "DSSE_ATTESTATION", + "VULNERABILITY_ASSESSMENT" ], "enumDescriptions": [ "Unknown", @@ -626,7 +627,8 @@ "This represents an SPDX Package.", "This represents an SPDX File.", "This represents an SPDX Relationship.", - "This represents a DSSE attestation Note" + "This represents a DSSE attestation Note", + "This represents a Vulnerability Assessment." ], "location": "query", "type": "string" @@ -1229,7 +1231,7 @@ } } }, - "revision": "20230127", + "revision": "20230221", "rootUrl": "https://containeranalysis.googleapis.com/", "schemas": { "AnalysisCompleted": { @@ -1272,6 +1274,64 @@ }, "type": "object" }, + "Assessment": { + "description": "Assessment provides all information that is related to a single vulnerability for this product.", + "id": "Assessment", + "properties": { + "cve": { + "description": "Holds the MITRE standard Common Vulnerabilities and Exposures (CVE) tracking number for the vulnerability.", + "type": "string" + }, + "longDescription": { + "description": "A detailed description of this Vex.", + "type": "string" + }, + "relatedUris": { + "description": "Holds a list of references associated with this vulnerability item and assessment. These uris have additional information about the vulnerability and the assessment itself. E.g. Link to a document which details how this assessment concluded the state of this vulnerability.", + "items": { + "$ref": "URI" + }, + "type": "array" + }, + "remediations": { + "description": "Specifies details on how to handle (and presumably, fix) a vulnerability.", + "items": { + "$ref": "Remediation" + }, + "type": "array" + }, + "shortDescription": { + "description": "A one sentence description of this Vex.", + "type": "string" + }, + "state": { + "description": "Provides the state of this Vulnerability assessment.", + "enum": [ + "STATE_UNSPECIFIED", + "AFFECTED", + "NOT_AFFECTED", + "FIXED", + "UNDER_INVESTIGATION" + ], + "enumDescriptions": [ + "No state is specified.", + "This product is known to be affected by this vulnerability.", + "This product is known to be not affected by this vulnerability.", + "This product contains a fix for this vulnerability.", + "It is not known yet whether these versions are or are not affected by the vulnerability. However, it is still under investigation." + ], + "type": "string" + }, + "threats": { + "description": "Contains information about this vulnerability, this will change with time.", + "items": { + "$ref": "Threat" + }, + "type": "array" + } + }, + "type": "object" + }, "Attestation": { "description": "Occurrence that represents a single \"attestation\". The authenticity of an Attestation can be verified using the attached signature. If the verifier trusts the public key of the signer, then verifying the signature is sufficient to establish trust. In this circumstance, the AttestationAuthority to which this Attestation is attached is primarily useful for look-up (how to find this Attestation if you already know the Authority and artifact to be verified) and intent (which authority was this attestation intended to sign for).", "id": "Attestation", @@ -3361,7 +3421,8 @@ "SPDX_PACKAGE", "SPDX_FILE", "SPDX_RELATIONSHIP", - "DSSE_ATTESTATION" + "DSSE_ATTESTATION", + "VULNERABILITY_ASSESSMENT" ], "enumDescriptions": [ "Unknown", @@ -3378,7 +3439,8 @@ "This represents an SPDX Package.", "This represents an SPDX File.", "This represents an SPDX Relationship.", - "This represents a DSSE attestation Note" + "This represents a DSSE attestation Note", + "This represents a Vulnerability Assessment." ], "type": "string" } @@ -4085,6 +4147,29 @@ }, "type": "object" }, + "IdentifierHelper": { + "description": "Helps in identifying the underlying product. This should be treated like a one-of field. Only one field should be set in this proto. This is a workaround because spanner indexes on one-of fields restrict addition and deletion of fields.", + "id": "IdentifierHelper", + "properties": { + "field": { + "description": "The field that is set in the API proto.", + "enum": [ + "IDENTIFIER_HELPER_FIELD_UNSPECIFIED", + "GENERIC_URI" + ], + "enumDescriptions": [ + "The helper isn't set.", + "The generic_uri one-of field is set." + ], + "type": "string" + }, + "genericUri": { + "description": "Contains a URI which is vendor-specific. Example: The artifact repository URL of an image.", + "type": "string" + } + }, + "type": "object" + }, "InTotoProvenance": { "id": "InTotoProvenance", "properties": { @@ -4482,7 +4567,8 @@ "SPDX_PACKAGE", "SPDX_FILE", "SPDX_RELATIONSHIP", - "DSSE_ATTESTATION" + "DSSE_ATTESTATION", + "VULNERABILITY_ASSESSMENT" ], "enumDescriptions": [ "Unknown", @@ -4499,7 +4585,8 @@ "This represents an SPDX Package.", "This represents an SPDX File.", "This represents an SPDX Relationship.", - "This represents a DSSE attestation Note" + "This represents a DSSE attestation Note", + "This represents a Vulnerability Assessment." ], "type": "string" }, @@ -4551,6 +4638,10 @@ "$ref": "UpgradeNote", "description": "A note describing an upgrade." }, + "vulnerabilityAssessment": { + "$ref": "VulnerabilityAssessmentNote", + "description": "A note describing a vulnerability assessment." + }, "vulnerabilityType": { "$ref": "VulnerabilityType", "description": "A package vulnerability type of note." @@ -4620,7 +4711,8 @@ "SPDX_PACKAGE", "SPDX_FILE", "SPDX_RELATIONSHIP", - "DSSE_ATTESTATION" + "DSSE_ATTESTATION", + "VULNERABILITY_ASSESSMENT" ], "enumDescriptions": [ "Unknown", @@ -4637,7 +4729,8 @@ "This represents an SPDX Package.", "This represents an SPDX File.", "This represents an SPDX Relationship.", - "This represents a DSSE attestation Note" + "This represents a DSSE attestation Note", + "This represents a Vulnerability Assessment." ], "type": "string" }, @@ -5022,6 +5115,44 @@ }, "type": "object" }, + "Product": { + "description": "Product contains information about a product and how to uniquely identify it.", + "id": "Product", + "properties": { + "id": { + "description": "Token that identifies a product so that it can be referred to from other parts in the document. There is no predefined format as long as it uniquely identifies a group in the context of the current document.", + "type": "string" + }, + "identifierHelper": { + "$ref": "IdentifierHelper", + "description": "Helps in identifying the underlying product." + }, + "name": { + "description": "Name of the product.", + "type": "string" + } + }, + "type": "object" + }, + "Publisher": { + "description": "Publisher contains information about the publisher of this Note.", + "id": "Publisher", + "properties": { + "context": { + "description": "The context or namespace. Contains a URL which is under control of the issuing party and can be used as a globally unique identifier for that issuing party. Example: https://csaf.io", + "type": "string" + }, + "issuingAuthority": { + "description": "Provides information about the authority of the issuing party to release the document, in particular, the party's constituency and responsibilities or other obligations.", + "type": "string" + }, + "name": { + "description": "Name of the publisher. Examples: 'Google', 'Google Cloud Platform'.", + "type": "string" + } + }, + "type": "object" + }, "Recipe": { "description": "Steps taken to build the artifact. For a TaskRun, typically each container corresponds to one step in the recipe.", "id": "Recipe", @@ -5298,6 +5429,46 @@ }, "type": "object" }, + "Remediation": { + "description": "Specifies details on how to handle (and presumably, fix) a vulnerability.", + "id": "Remediation", + "properties": { + "details": { + "description": "Contains a comprehensive human-readable discussion of the remediation.", + "type": "string" + }, + "remediationTime": { + "description": "Contains the date from which the remediation is available.", + "format": "google-datetime", + "type": "string" + }, + "remediationType": { + "description": "The type of remediation that can be applied.", + "enum": [ + "REMEDIATION_TYPE_UNSPECIFIED", + "MITIGATION", + "NO_FIX_PLANNED", + "NONE_AVAILABLE", + "VENDOR_FIX", + "WORKAROUND" + ], + "enumDescriptions": [ + "No remediation type specified.", + "A MITIGATION is available.", + "No fix is planned.", + "Not available.", + "A vendor fix is available.", + "A workaround is available." + ], + "type": "string" + }, + "remediationUri": { + "$ref": "URI", + "description": "Contains the URL where to obtain the remediation." + } + }, + "type": "object" + }, "RepoSource": { "description": "RepoSource describes the location of the source in a Google Cloud Source Repository.", "id": "RepoSource", @@ -5705,6 +5876,31 @@ }, "type": "object" }, + "Threat": { + "description": "Contains the vulnerability kinetic information. This information can change as the vulnerability ages and new information becomes available.", + "id": "Threat", + "properties": { + "details": { + "description": "Represents a thorough human-readable discussion of the threat.", + "type": "string" + }, + "threatType": { + "description": "The type of threat.", + "enum": [ + "THREAT_TYPE_UNSPECIFIED", + "IMPACT", + "EXPLOIT_STATUS" + ], + "enumDescriptions": [ + "No threat type specified.", + "IMPACT", + "EXPLOIT_STATUS" + ], + "type": "string" + } + }, + "type": "object" + }, "TimeSpan": { "description": "Start and end times for a build execution phase. Next ID: 3", "id": "TimeSpan", @@ -5722,6 +5918,21 @@ }, "type": "object" }, + "URI": { + "description": "An URI message.", + "id": "URI", + "properties": { + "label": { + "description": "A label for the URI.", + "type": "string" + }, + "uri": { + "description": "The unique resource identifier.", + "type": "string" + } + }, + "type": "object" + }, "UpdateOperationRequest": { "description": "Request for updating an existing operation", "id": "UpdateOperationRequest", @@ -5843,6 +6054,60 @@ }, "type": "object" }, + "VexAssessment": { + "description": "VexAssessment provides all publisher provided Vex information that is related to this vulnerability.", + "id": "VexAssessment", + "properties": { + "cve": { + "description": "Holds the MITRE standard Common Vulnerabilities and Exposures (CVE) tracking number for the vulnerability.", + "type": "string" + }, + "noteName": { + "description": "The VulnerabilityAssessment note from which this VexAssessment was generated. This will be of the form: `projects/[PROJECT_ID]/notes/[NOTE_ID]`.", + "type": "string" + }, + "relatedUris": { + "description": "Holds a list of references associated with this vulnerability item and assessment. These uris have additional information about the vulnerability and the assessment itself. E.g. Link to a document which details how this assessment concluded the state of this vulnerability.", + "items": { + "$ref": "URI" + }, + "type": "array" + }, + "remediations": { + "description": "Specifies details on how to handle (and presumably, fix) a vulnerability.", + "items": { + "$ref": "Remediation" + }, + "type": "array" + }, + "state": { + "description": "Provides the state of this Vulnerability assessment.", + "enum": [ + "STATE_UNSPECIFIED", + "AFFECTED", + "NOT_AFFECTED", + "FIXED", + "UNDER_INVESTIGATION" + ], + "enumDescriptions": [ + "No state is specified.", + "This product is known to be affected by this vulnerability.", + "This product is known to be not affected by this vulnerability.", + "This product contains a fix for this vulnerability.", + "It is not known yet whether these versions are or are not affected by the vulnerability. However, it is still under investigation." + ], + "type": "string" + }, + "threats": { + "description": "Contains information about this vulnerability, this will change with time.", + "items": { + "$ref": "Threat" + }, + "type": "array" + } + }, + "type": "object" + }, "Volume": { "description": "Volume describes a Docker container volume which is mounted into build steps in order to persist files across build step execution. Next ID: 3", "id": "Volume", @@ -5858,6 +6123,41 @@ }, "type": "object" }, + "VulnerabilityAssessmentNote": { + "description": "A single VulnerabilityAssessmentNote represents one particular product's vulnerability assessment for one CVE. Multiple VulnerabilityAssessmentNotes together form a Vex statement. Please go/sds-vex-example for a sample Vex statement in the CSAF format.", + "id": "VulnerabilityAssessmentNote", + "properties": { + "assessment": { + "$ref": "Assessment", + "description": "Represents a vulnerability assessment for the product." + }, + "languageCode": { + "description": "Identifies the language used by this document, corresponding to IETF BCP 47 / RFC 5646.", + "type": "string" + }, + "longDescription": { + "description": "A detailed description of this Vex.", + "type": "string" + }, + "product": { + "$ref": "Product", + "description": "The product affected by this vex." + }, + "publisher": { + "$ref": "Publisher", + "description": "Publisher details of this Note." + }, + "shortDescription": { + "description": "A one sentence description of this Vex.", + "type": "string" + }, + "title": { + "description": "The title of the note. E.g. `Vex-Debian-11.4`", + "type": "string" + } + }, + "type": "object" + }, "VulnerabilityDetails": { "description": "Used by Occurrence to point to where the vulnerability exists and how to fix it.", "id": "VulnerabilityDetails", @@ -5867,10 +6167,29 @@ "format": "float", "type": "number" }, + "cvssV2": { + "$ref": "CVSS", + "description": "The CVSS v2 score of this vulnerability." + }, "cvssV3": { "$ref": "CVSS", "description": "The CVSS v3 score of this vulnerability." }, + "cvssVersion": { + "description": "Output only. CVSS version used to populate cvss_score and severity.", + "enum": [ + "CVSS_VERSION_UNSPECIFIED", + "CVSS_VERSION_2", + "CVSS_VERSION_3" + ], + "enumDescriptions": [ + "CVSS Version unspecified.", + "CVSS v2.", + "CVSS v3." + ], + "readOnly": true, + "type": "string" + }, "effectiveSeverity": { "description": "The distro assigned severity for this vulnerability when that is available and note provider assigned severity when distro has not yet assigned a severity for this vulnerability. When there are multiple package issues for this vulnerability, they can have different effective severities because some might come from the distro and some might come from installed language packs (e.g. Maven JARs or Go binaries). For this reason, it is advised to use the effective severity on the PackageIssue level, as this field may eventually be deprecated. In the case where multiple PackageIssues have different effective severities, the one set here will be the highest severity of any of the PackageIssues.", "enum": [ @@ -5921,6 +6240,10 @@ "type": { "description": "The type of package; whether native or non native(ruby gems, node.js packages etc). This may be deprecated in the future because we can have multiple PackageIssues with different package types.", "type": "string" + }, + "vexAssessment": { + "$ref": "VexAssessment", + "description": "VexAssessment provides all publisher provided Vex information that is related to this vulnerability for this resource." } }, "type": "object" @@ -5964,6 +6287,20 @@ "$ref": "CVSS", "description": "The full description of the CVSS for version 2." }, + "cvssVersion": { + "description": "CVSS version used to populate cvss_score and severity.", + "enum": [ + "CVSS_VERSION_UNSPECIFIED", + "CVSS_VERSION_2", + "CVSS_VERSION_3" + ], + "enumDescriptions": [ + "CVSS Version unspecified.", + "CVSS v2.", + "CVSS v3." + ], + "type": "string" + }, "cwe": { "description": "A list of CWE for this vulnerability. For details, see: https://cwe.mitre.org/index.html", "items": { diff --git a/containeranalysis/v1alpha1/containeranalysis-gen.go b/containeranalysis/v1alpha1/containeranalysis-gen.go index bd13710819f..c97b4e64e9d 100644 --- a/containeranalysis/v1alpha1/containeranalysis-gen.go +++ b/containeranalysis/v1alpha1/containeranalysis-gen.go @@ -321,6 +321,71 @@ func (s *Artifact) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// Assessment: Assessment provides all information that is related to a +// single vulnerability for this product. +type Assessment struct { + // Cve: Holds the MITRE standard Common Vulnerabilities and Exposures + // (CVE) tracking number for the vulnerability. + Cve string `json:"cve,omitempty"` + + // LongDescription: A detailed description of this Vex. + LongDescription string `json:"longDescription,omitempty"` + + // RelatedUris: Holds a list of references associated with this + // vulnerability item and assessment. These uris have additional + // information about the vulnerability and the assessment itself. E.g. + // Link to a document which details how this assessment concluded the + // state of this vulnerability. + RelatedUris []*URI `json:"relatedUris,omitempty"` + + // Remediations: Specifies details on how to handle (and presumably, + // fix) a vulnerability. + Remediations []*Remediation `json:"remediations,omitempty"` + + // ShortDescription: A one sentence description of this Vex. + ShortDescription string `json:"shortDescription,omitempty"` + + // State: Provides the state of this Vulnerability assessment. + // + // Possible values: + // "STATE_UNSPECIFIED" - No state is specified. + // "AFFECTED" - This product is known to be affected by this + // vulnerability. + // "NOT_AFFECTED" - This product is known to be not affected by this + // vulnerability. + // "FIXED" - This product contains a fix for this vulnerability. + // "UNDER_INVESTIGATION" - It is not known yet whether these versions + // are or are not affected by the vulnerability. However, it is still + // under investigation. + State string `json:"state,omitempty"` + + // Threats: Contains information about this vulnerability, this will + // change with time. + Threats []*Threat `json:"threats,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Cve") 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. "Cve") 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 *Assessment) MarshalJSON() ([]byte, error) { + type NoMethod Assessment + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // Attestation: Occurrence that represents a single "attestation". The // authenticity of an Attestation can be verified using the attached // signature. If the verifier trusts the public key of the signer, then @@ -3364,6 +3429,8 @@ type Discovery struct { // "SPDX_FILE" - This represents an SPDX File. // "SPDX_RELATIONSHIP" - This represents an SPDX Relationship. // "DSSE_ATTESTATION" - This represents a DSSE attestation Note + // "VULNERABILITY_ASSESSMENT" - This represents a Vulnerability + // Assessment. AnalysisKind string `json:"analysisKind,omitempty"` // ForceSendFields is a list of field names (e.g. "AnalysisKind") to @@ -4610,6 +4677,45 @@ func (s *Hash) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// IdentifierHelper: Helps in identifying the underlying product. This +// should be treated like a one-of field. Only one field should be set +// in this proto. This is a workaround because spanner indexes on one-of +// fields restrict addition and deletion of fields. +type IdentifierHelper struct { + // Field: The field that is set in the API proto. + // + // Possible values: + // "IDENTIFIER_HELPER_FIELD_UNSPECIFIED" - The helper isn't set. + // "GENERIC_URI" - The generic_uri one-of field is set. + Field string `json:"field,omitempty"` + + // GenericUri: Contains a URI which is vendor-specific. Example: The + // artifact repository URL of an image. + GenericUri string `json:"genericUri,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Field") 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. "Field") 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 *IdentifierHelper) MarshalJSON() ([]byte, error) { + type NoMethod IdentifierHelper + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + type InTotoProvenance struct { // BuilderConfig: required BuilderConfig *BuilderConfig `json:"builderConfig,omitempty"` @@ -5204,6 +5310,8 @@ type Note struct { // "SPDX_FILE" - This represents an SPDX File. // "SPDX_RELATIONSHIP" - This represents an SPDX Relationship. // "DSSE_ATTESTATION" - This represents a DSSE attestation Note + // "VULNERABILITY_ASSESSMENT" - This represents a Vulnerability + // Assessment. Kind string `json:"kind,omitempty"` // LongDescription: A detailed description of this `Note`. @@ -5243,6 +5351,10 @@ type Note struct { // Upgrade: A note describing an upgrade. Upgrade *UpgradeNote `json:"upgrade,omitempty"` + // VulnerabilityAssessment: A note describing a vulnerability + // assessment. + VulnerabilityAssessment *VulnerabilityAssessmentNote `json:"vulnerabilityAssessment,omitempty"` + // VulnerabilityType: A package vulnerability type of note. VulnerabilityType *VulnerabilityType `json:"vulnerabilityType,omitempty"` @@ -5336,6 +5448,8 @@ type Occurrence struct { // "SPDX_FILE" - This represents an SPDX File. // "SPDX_RELATIONSHIP" - This represents an SPDX Relationship. // "DSSE_ATTESTATION" - This represents a DSSE attestation Note + // "VULNERABILITY_ASSESSMENT" - This represents a Vulnerability + // Assessment. Kind string `json:"kind,omitempty"` // Name: Output only. The name of the `Occurrence` in the form @@ -5939,6 +6053,84 @@ func (s *Policy) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// Product: Product contains information about a product and how to +// uniquely identify it. +type Product struct { + // Id: Token that identifies a product so that it can be referred to + // from other parts in the document. There is no predefined format as + // long as it uniquely identifies a group in the context of the current + // document. + Id string `json:"id,omitempty"` + + // IdentifierHelper: Helps in identifying the underlying product. + IdentifierHelper *IdentifierHelper `json:"identifierHelper,omitempty"` + + // Name: Name of the product. + Name string `json:"name,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 *Product) MarshalJSON() ([]byte, error) { + type NoMethod Product + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Publisher: Publisher contains information about the publisher of this +// Note. +type Publisher struct { + // Context: The context or namespace. Contains a URL which is under + // control of the issuing party and can be used as a globally unique + // identifier for that issuing party. Example: https://csaf.io + Context string `json:"context,omitempty"` + + // IssuingAuthority: Provides information about the authority of the + // issuing party to release the document, in particular, the party's + // constituency and responsibilities or other obligations. + IssuingAuthority string `json:"issuingAuthority,omitempty"` + + // Name: Name of the publisher. Examples: 'Google', 'Google Cloud + // Platform'. + Name string `json:"name,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Context") 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. "Context") 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 *Publisher) MarshalJSON() ([]byte, error) { + type NoMethod Publisher + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // Recipe: Steps taken to build the artifact. For a TaskRun, typically // each container corresponds to one step in the recipe. type Recipe struct { @@ -6279,6 +6471,54 @@ func (s *RelationshipOccurrence) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// Remediation: Specifies details on how to handle (and presumably, fix) +// a vulnerability. +type Remediation struct { + // Details: Contains a comprehensive human-readable discussion of the + // remediation. + Details string `json:"details,omitempty"` + + // RemediationTime: Contains the date from which the remediation is + // available. + RemediationTime string `json:"remediationTime,omitempty"` + + // RemediationType: The type of remediation that can be applied. + // + // Possible values: + // "REMEDIATION_TYPE_UNSPECIFIED" - No remediation type specified. + // "MITIGATION" - A MITIGATION is available. + // "NO_FIX_PLANNED" - No fix is planned. + // "NONE_AVAILABLE" - Not available. + // "VENDOR_FIX" - A vendor fix is available. + // "WORKAROUND" - A workaround is available. + RemediationType string `json:"remediationType,omitempty"` + + // RemediationUri: Contains the URL where to obtain the remediation. + RemediationUri *URI `json:"remediationUri,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Details") 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. "Details") 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 *Remediation) MarshalJSON() ([]byte, error) { + type NoMethod Remediation + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // RepoSource: RepoSource describes the location of the source in a // Google Cloud Source Repository. type RepoSource struct { @@ -6979,6 +7219,45 @@ func (s *TestIamPermissionsResponse) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// Threat: Contains the vulnerability kinetic information. This +// information can change as the vulnerability ages and new information +// becomes available. +type Threat struct { + // Details: Represents a thorough human-readable discussion of the + // threat. + Details string `json:"details,omitempty"` + + // ThreatType: The type of threat. + // + // Possible values: + // "THREAT_TYPE_UNSPECIFIED" - No threat type specified. + // "IMPACT" - IMPACT + // "EXPLOIT_STATUS" - EXPLOIT_STATUS + ThreatType string `json:"threatType,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Details") 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. "Details") 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 *Threat) MarshalJSON() ([]byte, error) { + type NoMethod Threat + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // TimeSpan: Start and end times for a build execution phase. Next ID: 3 type TimeSpan struct { // EndTime: End of time span. @@ -7010,6 +7289,37 @@ func (s *TimeSpan) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// URI: An URI message. +type URI struct { + // Label: A label for the URI. + Label string `json:"label,omitempty"` + + // Uri: The unique resource identifier. + Uri string `json:"uri,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Label") 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. "Label") 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 *URI) MarshalJSON() ([]byte, error) { + type NoMethod URI + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // UpdateOperationRequest: Request for updating an existing operation type UpdateOperationRequest struct { // Operation: The operation to create. @@ -7217,6 +7527,70 @@ func (s *Version) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// VexAssessment: VexAssessment provides all publisher provided Vex +// information that is related to this vulnerability. +type VexAssessment struct { + // Cve: Holds the MITRE standard Common Vulnerabilities and Exposures + // (CVE) tracking number for the vulnerability. + Cve string `json:"cve,omitempty"` + + // NoteName: The VulnerabilityAssessment note from which this + // VexAssessment was generated. This will be of the form: + // `projects/[PROJECT_ID]/notes/[NOTE_ID]`. + NoteName string `json:"noteName,omitempty"` + + // RelatedUris: Holds a list of references associated with this + // vulnerability item and assessment. These uris have additional + // information about the vulnerability and the assessment itself. E.g. + // Link to a document which details how this assessment concluded the + // state of this vulnerability. + RelatedUris []*URI `json:"relatedUris,omitempty"` + + // Remediations: Specifies details on how to handle (and presumably, + // fix) a vulnerability. + Remediations []*Remediation `json:"remediations,omitempty"` + + // State: Provides the state of this Vulnerability assessment. + // + // Possible values: + // "STATE_UNSPECIFIED" - No state is specified. + // "AFFECTED" - This product is known to be affected by this + // vulnerability. + // "NOT_AFFECTED" - This product is known to be not affected by this + // vulnerability. + // "FIXED" - This product contains a fix for this vulnerability. + // "UNDER_INVESTIGATION" - It is not known yet whether these versions + // are or are not affected by the vulnerability. However, it is still + // under investigation. + State string `json:"state,omitempty"` + + // Threats: Contains information about this vulnerability, this will + // change with time. + Threats []*Threat `json:"threats,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Cve") 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. "Cve") 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 *VexAssessment) MarshalJSON() ([]byte, error) { + type NoMethod VexAssessment + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // Volume: Volume describes a Docker container volume which is mounted // into build steps in order to persist files across build step // execution. Next ID: 3 @@ -7254,6 +7628,57 @@ func (s *Volume) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// VulnerabilityAssessmentNote: A single VulnerabilityAssessmentNote +// represents one particular product's vulnerability assessment for one +// CVE. Multiple VulnerabilityAssessmentNotes together form a Vex +// statement. Please go/sds-vex-example for a sample Vex statement in +// the CSAF format. +type VulnerabilityAssessmentNote struct { + // Assessment: Represents a vulnerability assessment for the product. + Assessment *Assessment `json:"assessment,omitempty"` + + // LanguageCode: Identifies the language used by this document, + // corresponding to IETF BCP 47 / RFC 5646. + LanguageCode string `json:"languageCode,omitempty"` + + // LongDescription: A detailed description of this Vex. + LongDescription string `json:"longDescription,omitempty"` + + // Product: The product affected by this vex. + Product *Product `json:"product,omitempty"` + + // Publisher: Publisher details of this Note. + Publisher *Publisher `json:"publisher,omitempty"` + + // ShortDescription: A one sentence description of this Vex. + ShortDescription string `json:"shortDescription,omitempty"` + + // Title: The title of the note. E.g. `Vex-Debian-11.4` + Title string `json:"title,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Assessment") 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. "Assessment") 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 *VulnerabilityAssessmentNote) MarshalJSON() ([]byte, error) { + type NoMethod VulnerabilityAssessmentNote + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // VulnerabilityDetails: Used by Occurrence to point to where the // vulnerability exists and how to fix it. type VulnerabilityDetails struct { @@ -7262,9 +7687,21 @@ type VulnerabilityDetails struct { // indicates high severity. CvssScore float64 `json:"cvssScore,omitempty"` + // CvssV2: The CVSS v2 score of this vulnerability. + CvssV2 *CVSS `json:"cvssV2,omitempty"` + // CvssV3: The CVSS v3 score of this vulnerability. CvssV3 *CVSS `json:"cvssV3,omitempty"` + // CvssVersion: Output only. CVSS version used to populate cvss_score + // and severity. + // + // Possible values: + // "CVSS_VERSION_UNSPECIFIED" - CVSS Version unspecified. + // "CVSS_VERSION_2" - CVSS v2. + // "CVSS_VERSION_3" - CVSS v3. + CvssVersion string `json:"cvssVersion,omitempty"` + // EffectiveSeverity: The distro assigned severity for this // vulnerability when that is available and note provider assigned // severity when distro has not yet assigned a severity for this @@ -7307,6 +7744,10 @@ type VulnerabilityDetails struct { // we can have multiple PackageIssues with different package types. Type string `json:"type,omitempty"` + // VexAssessment: VexAssessment provides all publisher provided Vex + // information that is related to this vulnerability for this resource. + VexAssessment *VexAssessment `json:"vexAssessment,omitempty"` + // ForceSendFields is a list of field names (e.g. "CvssScore") to // unconditionally include in API requests. By default, fields with // empty or default values are omitted from API requests. However, any @@ -7394,6 +7835,14 @@ type VulnerabilityType struct { // CvssV2: The full description of the CVSS for version 2. CvssV2 *CVSS `json:"cvssV2,omitempty"` + // CvssVersion: CVSS version used to populate cvss_score and severity. + // + // Possible values: + // "CVSS_VERSION_UNSPECIFIED" - CVSS Version unspecified. + // "CVSS_VERSION_2" - CVSS v2. + // "CVSS_VERSION_3" - CVSS v3. + CvssVersion string `json:"cvssVersion,omitempty"` + // Cwe: A list of CWE for this vulnerability. For details, see: // https://cwe.mitre.org/index.html Cwe []string `json:"cwe,omitempty"` @@ -9904,6 +10353,9 @@ func (c *ProjectsOccurrencesListCall) Filter(filter string) *ProjectsOccurrences // "SPDX_FILE" - This represents an SPDX File. // "SPDX_RELATIONSHIP" - This represents an SPDX Relationship. // "DSSE_ATTESTATION" - This represents a DSSE attestation Note +// "VULNERABILITY_ASSESSMENT" - This represents a Vulnerability +// +// Assessment. func (c *ProjectsOccurrencesListCall) Kind(kind string) *ProjectsOccurrencesListCall { c.urlParams_.Set("kind", kind) return c @@ -10059,7 +10511,8 @@ func (c *ProjectsOccurrencesListCall) Do(opts ...googleapi.CallOption) (*ListOcc // "SPDX_PACKAGE", // "SPDX_FILE", // "SPDX_RELATIONSHIP", - // "DSSE_ATTESTATION" + // "DSSE_ATTESTATION", + // "VULNERABILITY_ASSESSMENT" // ], // "enumDescriptions": [ // "Unknown", @@ -10076,7 +10529,8 @@ func (c *ProjectsOccurrencesListCall) Do(opts ...googleapi.CallOption) (*ListOcc // "This represents an SPDX Package.", // "This represents an SPDX File.", // "This represents an SPDX Relationship.", - // "This represents a DSSE attestation Note" + // "This represents a DSSE attestation Note", + // "This represents a Vulnerability Assessment." // ], // "location": "query", // "type": "string" diff --git a/containeranalysis/v1beta1/containeranalysis-api.json b/containeranalysis/v1beta1/containeranalysis-api.json index 5d6bd4a85c8..69e086550be 100644 --- a/containeranalysis/v1beta1/containeranalysis-api.json +++ b/containeranalysis/v1beta1/containeranalysis-api.json @@ -755,7 +755,7 @@ } } }, - "revision": "20230127", + "revision": "20230221", "rootUrl": "https://containeranalysis.googleapis.com/", "schemas": { "AliasContext": { @@ -843,6 +843,64 @@ }, "type": "object" }, + "Assessment": { + "description": "Assessment provides all information that is related to a single vulnerability for this product.", + "id": "Assessment", + "properties": { + "cve": { + "description": "Holds the MITRE standard Common Vulnerabilities and Exposures (CVE) tracking number for the vulnerability.", + "type": "string" + }, + "longDescription": { + "description": "A detailed description of this Vex.", + "type": "string" + }, + "relatedUris": { + "description": "Holds a list of references associated with this vulnerability item and assessment. These uris have additional information about the vulnerability and the assessment itself. E.g. Link to a document which details how this assessment concluded the state of this vulnerability.", + "items": { + "$ref": "RelatedUrl" + }, + "type": "array" + }, + "remediations": { + "description": "Specifies details on how to handle (and presumably, fix) a vulnerability.", + "items": { + "$ref": "Remediation" + }, + "type": "array" + }, + "shortDescription": { + "description": "A one sentence description of this Vex.", + "type": "string" + }, + "state": { + "description": "Provides the state of this Vulnerability assessment.", + "enum": [ + "STATE_UNSPECIFIED", + "AFFECTED", + "NOT_AFFECTED", + "FIXED", + "UNDER_INVESTIGATION" + ], + "enumDescriptions": [ + "No state is specified.", + "This product is known to be affected by this vulnerability.", + "This product is known to be not affected by this vulnerability.", + "This product contains a fix for this vulnerability.", + "It is not known yet whether these versions are or are not affected by the vulnerability. However, it is still under investigation." + ], + "type": "string" + }, + "threats": { + "description": "Contains information about this vulnerability, this will change with time.", + "items": { + "$ref": "Threat" + }, + "type": "array" + } + }, + "type": "object" + }, "Attestation": { "description": "Occurrence that represents a single \"attestation\". The authenticity of an attestation can be verified using the attached signature. If the verifier trusts the public key of the signer, then verifying the signature is sufficient to establish trust. In this circumstance, the authority to which this attestation is attached is primarily useful for look-up (how to find this attestation if you already know the authority and artifact to be verified) and intent (which authority was this attestation intended to sign for).", "id": "Attestation", @@ -2942,7 +3000,8 @@ "SBOM", "SPDX_PACKAGE", "SPDX_FILE", - "SPDX_RELATIONSHIP" + "SPDX_RELATIONSHIP", + "VULNERABILITY_ASSESSMENT" ], "enumDescriptions": [ "Default value. This value is unused.", @@ -2957,7 +3016,8 @@ "This represents a software bill of materials.", "This represents an SPDX Package.", "This represents an SPDX File.", - "This represents an SPDX Relationship." + "This represents an SPDX Relationship.", + "This represents a Vulnerability Assessment." ], "type": "string" } @@ -3575,6 +3635,14 @@ "format": "float", "type": "number" }, + "cvssV2": { + "$ref": "CVSS", + "description": "The cvss v2 score for the vulnerability." + }, + "cvssV3": { + "$ref": "CVSS", + "description": "The cvss v3 score for the vulnerability." + }, "cvssVersion": { "description": "Output only. CVSS version used to populate cvss_score and severity.", "enum": [ @@ -3654,6 +3722,9 @@ "type": { "description": "The type of package; whether native or non native(ruby gems, node.js packages etc)", "type": "string" + }, + "vexAssessment": { + "$ref": "VexAssessment" } }, "type": "object" @@ -4035,7 +4106,8 @@ "SBOM", "SPDX_PACKAGE", "SPDX_FILE", - "SPDX_RELATIONSHIP" + "SPDX_RELATIONSHIP", + "VULNERABILITY_ASSESSMENT" ], "enumDescriptions": [ "Default value. This value is unused.", @@ -4050,7 +4122,8 @@ "This represents a software bill of materials.", "This represents an SPDX Package.", "This represents an SPDX File.", - "This represents an SPDX Relationship." + "This represents an SPDX Relationship.", + "This represents a Vulnerability Assessment." ], "type": "string" }, @@ -4108,6 +4181,10 @@ "vulnerability": { "$ref": "Vulnerability", "description": "A note describing a package vulnerability." + }, + "vulnerabilityAssessment": { + "$ref": "VulnerabilityAssessmentNote", + "description": "A note describing a vulnerability assessment." } }, "type": "object" @@ -4168,7 +4245,8 @@ "SBOM", "SPDX_PACKAGE", "SPDX_FILE", - "SPDX_RELATIONSHIP" + "SPDX_RELATIONSHIP", + "VULNERABILITY_ASSESSMENT" ], "enumDescriptions": [ "Default value. This value is unused.", @@ -4183,7 +4261,8 @@ "This represents a software bill of materials.", "This represents an SPDX Package.", "This represents an SPDX File.", - "This represents an SPDX Relationship." + "This represents an SPDX Relationship.", + "This represents a Vulnerability Assessment." ], "type": "string" }, @@ -4526,6 +4605,25 @@ }, "type": "object" }, + "Product": { + "description": "Product contains information about a product and how to uniquely identify it.", + "id": "Product", + "properties": { + "genericUri": { + "description": "Contains a URI which is vendor-specific. Example: The artifact repository URL of an image.", + "type": "string" + }, + "id": { + "description": "Token that identifies a product so that it can be referred to from other parts in the document. There is no predefined format as long as it uniquely identifies a group in the context of the current document.", + "type": "string" + }, + "name": { + "description": "Name of the product.", + "type": "string" + } + }, + "type": "object" + }, "ProjectRepoId": { "description": "Selects a repo using a Google Cloud Platform project ID (e.g., winged-cargo-31) and a repo name within that project.", "id": "ProjectRepoId", @@ -4541,6 +4639,25 @@ }, "type": "object" }, + "Publisher": { + "description": "Publisher contains information about the publisher of this Note.", + "id": "Publisher", + "properties": { + "context": { + "description": "The context or namespace. Contains a URL which is under control of the issuing party and can be used as a globally unique identifier for that issuing party. Example: https://csaf.io", + "type": "string" + }, + "issuingAuthority": { + "description": "Provides information about the authority of the issuing party to release the document, in particular, the party's constituency and responsibilities or other obligations.", + "type": "string" + }, + "name": { + "description": "Name of the publisher. Examples: 'Google', 'Google Cloud Platform'.", + "type": "string" + } + }, + "type": "object" + }, "RelatedUrl": { "description": "Metadata for any related URL information.", "id": "RelatedUrl", @@ -4775,6 +4892,46 @@ }, "type": "object" }, + "Remediation": { + "description": "Specifies details on how to handle (and presumably, fix) a vulnerability.", + "id": "Remediation", + "properties": { + "details": { + "description": "Contains a comprehensive human-readable discussion of the remediation.", + "type": "string" + }, + "remediationTime": { + "description": "Contains the date from which the remediation is available.", + "format": "google-datetime", + "type": "string" + }, + "remediationType": { + "description": "The type of remediation that can be applied.", + "enum": [ + "REMEDIATION_TYPE_UNSPECIFIED", + "MITIGATION", + "NO_FIX_PLANNED", + "NONE_AVAILABLE", + "VENDOR_FIX", + "WORKAROUND" + ], + "enumDescriptions": [ + "No remediation type specified.", + "A MITIGATION is available.", + "No fix is planned.", + "Not available.", + "A vendor fix is available.", + "A workaround is available." + ], + "type": "string" + }, + "remediationUri": { + "$ref": "RelatedUrl", + "description": "Contains the URL where to obtain the remediation." + } + }, + "type": "object" + }, "RepoId": { "description": "A unique identifier for a Cloud Repo.", "id": "RepoId", @@ -4969,6 +5126,31 @@ }, "type": "object" }, + "Threat": { + "description": "Contains the vulnerability kinetic information. This information can change as the vulnerability ages and new information becomes available.", + "id": "Threat", + "properties": { + "details": { + "description": "Represents a thorough human-readable discussion of the threat.", + "type": "string" + }, + "threatType": { + "description": "The type of threat.", + "enum": [ + "THREAT_TYPE_UNSPECIFIED", + "IMPACT", + "EXPLOIT_STATUS" + ], + "enumDescriptions": [ + "No threat type specified.", + "IMPACT", + "EXPLOIT_STATUS" + ], + "type": "string" + } + }, + "type": "object" + }, "TimeSpan": { "description": "Start and end times for a build execution phase. Next ID: 3", "id": "TimeSpan", @@ -5026,6 +5208,60 @@ }, "type": "object" }, + "VexAssessment": { + "description": "VexAssessment provides all publisher provided Vex information that is related to this vulnerability.", + "id": "VexAssessment", + "properties": { + "cve": { + "description": "Holds the MITRE standard Common Vulnerabilities and Exposures (CVE) tracking number for the vulnerability.", + "type": "string" + }, + "noteName": { + "description": "The VulnerabilityAssessment note from which this VexAssessment was generated. This will be of the form: `projects/[PROJECT_ID]/notes/[NOTE_ID]`.", + "type": "string" + }, + "relatedUris": { + "description": "Holds a list of references associated with this vulnerability item and assessment.", + "items": { + "$ref": "RelatedUrl" + }, + "type": "array" + }, + "remediations": { + "description": "Specifies details on how to handle (and presumably, fix) a vulnerability.", + "items": { + "$ref": "Remediation" + }, + "type": "array" + }, + "state": { + "description": "Provides the state of this Vulnerability assessment.", + "enum": [ + "STATE_UNSPECIFIED", + "AFFECTED", + "NOT_AFFECTED", + "FIXED", + "UNDER_INVESTIGATION" + ], + "enumDescriptions": [ + "No state is specified.", + "This product is known to be affected by this vulnerability.", + "This product is known to be not affected by this vulnerability.", + "This product contains a fix for this vulnerability.", + "It is not known yet whether these versions are or are not affected by the vulnerability. However, it is still under investigation." + ], + "type": "string" + }, + "threats": { + "description": "Contains information about this vulnerability, this will change with time.", + "items": { + "$ref": "Threat" + }, + "type": "array" + } + }, + "type": "object" + }, "Volume": { "description": "Volume describes a Docker container volume which is mounted into build steps in order to persist files across build step execution. Next ID: 3", "id": "Volume", @@ -5121,6 +5357,41 @@ }, "type": "object" }, + "VulnerabilityAssessmentNote": { + "description": "A single VulnerabilityAssessmentNote represents one particular product's vulnerability assessment for one CVE.", + "id": "VulnerabilityAssessmentNote", + "properties": { + "assessment": { + "$ref": "Assessment", + "description": "Represents a vulnerability assessment for the product." + }, + "languageCode": { + "description": "Identifies the language used by this document, corresponding to IETF BCP 47 / RFC 5646.", + "type": "string" + }, + "longDescription": { + "description": "A detailed description of this Vex.", + "type": "string" + }, + "product": { + "$ref": "Product", + "description": "The product affected by this vex." + }, + "publisher": { + "$ref": "Publisher", + "description": "Publisher details of this Note." + }, + "shortDescription": { + "description": "A one sentence description of this Vex.", + "type": "string" + }, + "title": { + "description": "The title of the note. E.g. `Vex-Debian-11.4`", + "type": "string" + } + }, + "type": "object" + }, "VulnerabilityLocation": { "description": "The location of the vulnerability.", "id": "VulnerabilityLocation", diff --git a/containeranalysis/v1beta1/containeranalysis-gen.go b/containeranalysis/v1beta1/containeranalysis-gen.go index e992e623f88..5553c896d12 100644 --- a/containeranalysis/v1beta1/containeranalysis-gen.go +++ b/containeranalysis/v1beta1/containeranalysis-gen.go @@ -343,6 +343,71 @@ func (s *ArtifactRule) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// Assessment: Assessment provides all information that is related to a +// single vulnerability for this product. +type Assessment struct { + // Cve: Holds the MITRE standard Common Vulnerabilities and Exposures + // (CVE) tracking number for the vulnerability. + Cve string `json:"cve,omitempty"` + + // LongDescription: A detailed description of this Vex. + LongDescription string `json:"longDescription,omitempty"` + + // RelatedUris: Holds a list of references associated with this + // vulnerability item and assessment. These uris have additional + // information about the vulnerability and the assessment itself. E.g. + // Link to a document which details how this assessment concluded the + // state of this vulnerability. + RelatedUris []*RelatedUrl `json:"relatedUris,omitempty"` + + // Remediations: Specifies details on how to handle (and presumably, + // fix) a vulnerability. + Remediations []*Remediation `json:"remediations,omitempty"` + + // ShortDescription: A one sentence description of this Vex. + ShortDescription string `json:"shortDescription,omitempty"` + + // State: Provides the state of this Vulnerability assessment. + // + // Possible values: + // "STATE_UNSPECIFIED" - No state is specified. + // "AFFECTED" - This product is known to be affected by this + // vulnerability. + // "NOT_AFFECTED" - This product is known to be not affected by this + // vulnerability. + // "FIXED" - This product contains a fix for this vulnerability. + // "UNDER_INVESTIGATION" - It is not known yet whether these versions + // are or are not affected by the vulnerability. However, it is still + // under investigation. + State string `json:"state,omitempty"` + + // Threats: Contains information about this vulnerability, this will + // change with time. + Threats []*Threat `json:"threats,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Cve") 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. "Cve") 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 *Assessment) MarshalJSON() ([]byte, error) { + type NoMethod Assessment + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // Attestation: Occurrence that represents a single "attestation". The // authenticity of an attestation can be verified using the attached // signature. If the verifier trusts the public key of the signer, then @@ -3262,6 +3327,8 @@ type Discovery struct { // "SPDX_PACKAGE" - This represents an SPDX Package. // "SPDX_FILE" - This represents an SPDX File. // "SPDX_RELATIONSHIP" - This represents an SPDX Relationship. + // "VULNERABILITY_ASSESSMENT" - This represents a Vulnerability + // Assessment. AnalysisKind string `json:"analysisKind,omitempty"` // ForceSendFields is a list of field names (e.g. "AnalysisKind") to @@ -4378,6 +4445,12 @@ type GrafeasV1beta1VulnerabilityDetails struct { // indicates high severity. CvssScore float64 `json:"cvssScore,omitempty"` + // CvssV2: The cvss v2 score for the vulnerability. + CvssV2 *CVSS `json:"cvssV2,omitempty"` + + // CvssV3: The cvss v3 score for the vulnerability. + CvssV3 *CVSS `json:"cvssV3,omitempty"` + // CvssVersion: Output only. CVSS version used to populate cvss_score // and severity. // @@ -4439,6 +4512,8 @@ type GrafeasV1beta1VulnerabilityDetails struct { // node.js packages etc) Type string `json:"type,omitempty"` + VexAssessment *VexAssessment `json:"vexAssessment,omitempty"` + // ForceSendFields is a list of field names (e.g. "CvssScore") to // unconditionally include in API requests. By default, fields with // empty or default values are omitted from API requests. However, any @@ -5033,6 +5108,8 @@ type Note struct { // "SPDX_PACKAGE" - This represents an SPDX Package. // "SPDX_FILE" - This represents an SPDX File. // "SPDX_RELATIONSHIP" - This represents an SPDX Relationship. + // "VULNERABILITY_ASSESSMENT" - This represents a Vulnerability + // Assessment. Kind string `json:"kind,omitempty"` // LongDescription: A detailed description of this note. @@ -5074,6 +5151,10 @@ type Note struct { // Vulnerability: A note describing a package vulnerability. Vulnerability *Vulnerability `json:"vulnerability,omitempty"` + // VulnerabilityAssessment: A note describing a vulnerability + // assessment. + VulnerabilityAssessment *VulnerabilityAssessmentNote `json:"vulnerabilityAssessment,omitempty"` + // ServerResponse contains the HTTP response code and headers from the // server. googleapi.ServerResponse `json:"-"` @@ -5157,6 +5238,8 @@ type Occurrence struct { // "SPDX_PACKAGE" - This represents an SPDX Package. // "SPDX_FILE" - This represents an SPDX File. // "SPDX_RELATIONSHIP" - This represents an SPDX Relationship. + // "VULNERABILITY_ASSESSMENT" - This represents a Vulnerability + // Assessment. Kind string `json:"kind,omitempty"` // Name: Output only. The name of the occurrence in the form of @@ -5688,6 +5771,45 @@ func (s *Policy) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// Product: Product contains information about a product and how to +// uniquely identify it. +type Product struct { + // GenericUri: Contains a URI which is vendor-specific. Example: The + // artifact repository URL of an image. + GenericUri string `json:"genericUri,omitempty"` + + // Id: Token that identifies a product so that it can be referred to + // from other parts in the document. There is no predefined format as + // long as it uniquely identifies a group in the context of the current + // document. + Id string `json:"id,omitempty"` + + // Name: Name of the product. + Name string `json:"name,omitempty"` + + // ForceSendFields is a list of field names (e.g. "GenericUri") 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. "GenericUri") 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 *Product) MarshalJSON() ([]byte, error) { + type NoMethod Product + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // ProjectRepoId: Selects a repo using a Google Cloud Platform project // ID (e.g., winged-cargo-31) and a repo name within that project. type ProjectRepoId struct { @@ -5720,6 +5842,46 @@ func (s *ProjectRepoId) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// Publisher: Publisher contains information about the publisher of this +// Note. +type Publisher struct { + // Context: The context or namespace. Contains a URL which is under + // control of the issuing party and can be used as a globally unique + // identifier for that issuing party. Example: https://csaf.io + Context string `json:"context,omitempty"` + + // IssuingAuthority: Provides information about the authority of the + // issuing party to release the document, in particular, the party's + // constituency and responsibilities or other obligations. + IssuingAuthority string `json:"issuingAuthority,omitempty"` + + // Name: Name of the publisher. Examples: 'Google', 'Google Cloud + // Platform'. + Name string `json:"name,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Context") 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. "Context") 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 *Publisher) MarshalJSON() ([]byte, error) { + type NoMethod Publisher + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // RelatedUrl: Metadata for any related URL information. type RelatedUrl struct { // Label: Label to describe usage of the URL. @@ -6002,6 +6164,54 @@ func (s *RelationshipOccurrence) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// Remediation: Specifies details on how to handle (and presumably, fix) +// a vulnerability. +type Remediation struct { + // Details: Contains a comprehensive human-readable discussion of the + // remediation. + Details string `json:"details,omitempty"` + + // RemediationTime: Contains the date from which the remediation is + // available. + RemediationTime string `json:"remediationTime,omitempty"` + + // RemediationType: The type of remediation that can be applied. + // + // Possible values: + // "REMEDIATION_TYPE_UNSPECIFIED" - No remediation type specified. + // "MITIGATION" - A MITIGATION is available. + // "NO_FIX_PLANNED" - No fix is planned. + // "NONE_AVAILABLE" - Not available. + // "VENDOR_FIX" - A vendor fix is available. + // "WORKAROUND" - A workaround is available. + RemediationType string `json:"remediationType,omitempty"` + + // RemediationUri: Contains the URL where to obtain the remediation. + RemediationUri *RelatedUrl `json:"remediationUri,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Details") 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. "Details") 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 *Remediation) MarshalJSON() ([]byte, error) { + type NoMethod Remediation + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // RepoId: A unique identifier for a Cloud Repo. type RepoId struct { // ProjectRepoId: A combination of a project ID and a repo name. @@ -6416,6 +6626,45 @@ func (s *TestIamPermissionsResponse) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// Threat: Contains the vulnerability kinetic information. This +// information can change as the vulnerability ages and new information +// becomes available. +type Threat struct { + // Details: Represents a thorough human-readable discussion of the + // threat. + Details string `json:"details,omitempty"` + + // ThreatType: The type of threat. + // + // Possible values: + // "THREAT_TYPE_UNSPECIFIED" - No threat type specified. + // "IMPACT" - IMPACT + // "EXPLOIT_STATUS" - EXPLOIT_STATUS + ThreatType string `json:"threatType,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Details") 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. "Details") 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 *Threat) MarshalJSON() ([]byte, error) { + type NoMethod Threat + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // TimeSpan: Start and end times for a build execution phase. Next ID: 3 type TimeSpan struct { // EndTime: End of time span. @@ -6502,6 +6751,67 @@ func (s *Version) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// VexAssessment: VexAssessment provides all publisher provided Vex +// information that is related to this vulnerability. +type VexAssessment struct { + // Cve: Holds the MITRE standard Common Vulnerabilities and Exposures + // (CVE) tracking number for the vulnerability. + Cve string `json:"cve,omitempty"` + + // NoteName: The VulnerabilityAssessment note from which this + // VexAssessment was generated. This will be of the form: + // `projects/[PROJECT_ID]/notes/[NOTE_ID]`. + NoteName string `json:"noteName,omitempty"` + + // RelatedUris: Holds a list of references associated with this + // vulnerability item and assessment. + RelatedUris []*RelatedUrl `json:"relatedUris,omitempty"` + + // Remediations: Specifies details on how to handle (and presumably, + // fix) a vulnerability. + Remediations []*Remediation `json:"remediations,omitempty"` + + // State: Provides the state of this Vulnerability assessment. + // + // Possible values: + // "STATE_UNSPECIFIED" - No state is specified. + // "AFFECTED" - This product is known to be affected by this + // vulnerability. + // "NOT_AFFECTED" - This product is known to be not affected by this + // vulnerability. + // "FIXED" - This product contains a fix for this vulnerability. + // "UNDER_INVESTIGATION" - It is not known yet whether these versions + // are or are not affected by the vulnerability. However, it is still + // under investigation. + State string `json:"state,omitempty"` + + // Threats: Contains information about this vulnerability, this will + // change with time. + Threats []*Threat `json:"threats,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Cve") 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. "Cve") 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 *VexAssessment) MarshalJSON() ([]byte, error) { + type NoMethod VexAssessment + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // Volume: Volume describes a Docker container volume which is mounted // into build steps in order to persist files across build step // execution. Next ID: 3 @@ -6628,6 +6938,55 @@ func (s *Vulnerability) UnmarshalJSON(data []byte) error { return nil } +// VulnerabilityAssessmentNote: A single VulnerabilityAssessmentNote +// represents one particular product's vulnerability assessment for one +// CVE. +type VulnerabilityAssessmentNote struct { + // Assessment: Represents a vulnerability assessment for the product. + Assessment *Assessment `json:"assessment,omitempty"` + + // LanguageCode: Identifies the language used by this document, + // corresponding to IETF BCP 47 / RFC 5646. + LanguageCode string `json:"languageCode,omitempty"` + + // LongDescription: A detailed description of this Vex. + LongDescription string `json:"longDescription,omitempty"` + + // Product: The product affected by this vex. + Product *Product `json:"product,omitempty"` + + // Publisher: Publisher details of this Note. + Publisher *Publisher `json:"publisher,omitempty"` + + // ShortDescription: A one sentence description of this Vex. + ShortDescription string `json:"shortDescription,omitempty"` + + // Title: The title of the note. E.g. `Vex-Debian-11.4` + Title string `json:"title,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Assessment") 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. "Assessment") 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 *VulnerabilityAssessmentNote) MarshalJSON() ([]byte, error) { + type NoMethod VulnerabilityAssessmentNote + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // VulnerabilityLocation: The location of the vulnerability. type VulnerabilityLocation struct { // CpeUri: Required. The CPE URI in cpe format diff --git a/contentwarehouse/v1/contentwarehouse-api.json b/contentwarehouse/v1/contentwarehouse-api.json index 7c928bf9ac7..b464ba62a09 100644 --- a/contentwarehouse/v1/contentwarehouse-api.json +++ b/contentwarehouse/v1/contentwarehouse-api.json @@ -1103,7 +1103,7 @@ } } }, - "revision": "20230203", + "revision": "20230221", "rootUrl": "https://contentwarehouse.googleapis.com/", "schemas": { "AbuseiamAbuseType": { @@ -3566,7 +3566,9 @@ "DATA_STUDIO_DOMAIN_ONLY_AFFINITY", "MONOSPACE_AFFINITY", "MY_ACCOUNT_AFFINITY", - "NUDGEIT_CAMPAIGN_MANAGER_AFFINITY" + "NUDGEIT_CAMPAIGN_MANAGER_AFFINITY", + "LEGAL_CONTRACTS_EXTERNAL_AFFINITY", + "CONTACTS_TO_STAR_AFFINITY" ], "enumDescriptions": [ "", @@ -3811,6 +3813,8 @@ "", "", "", + "", + "", "" ], "type": "string" @@ -9298,6 +9302,27 @@ }, "type": "object" }, + "AssistantApiCapabilitiesHomeAppCapabilities": { + "description": "Information about the readiness of Home app features on the device. As of January 2023, this is only populated by Assistant on Android.", + "id": "AssistantApiCapabilitiesHomeAppCapabilities", + "properties": { + "setupState": { + "description": "The app's installation and setup state. This is most pertinent for Tangor, where lock screen Smart Home queries are fulfilled by a Home app activity that may be blocked if this value is not `SETUP_STATE_COMPLETE`.", + "enum": [ + "SETUP_STATE_UNKNOWN", + "SETUP_STATE_INCOMPLETE", + "SETUP_STATE_COMPLETE" + ], + "enumDescriptions": [ + "Setup state is not known, potentially because the installed version of the app does not have the app state service.", + "First-time setup has not been completed.", + "First-time setup is known to be complete." + ], + "type": "string" + } + }, + "type": "object" + }, "AssistantApiCarAssistantCapabilities": { "description": "Capabilities that are associated with Assistants on auto surfaces. This is different from other capabilities such as CarSettingsCapabilities, CloudCarCapabilities since they are specific to settings and 3P cloud information. All the auto/car Assistant specific capabilities should live here.", "id": "AssistantApiCarAssistantCapabilities", @@ -11443,7 +11468,6 @@ "CHROMECAST_MANHATTAN", "CLOUD_DEVICE", "CROS", - "FITBIT_OS", "FITBIT_OS_WATCH", "FITBIT_OS_WATCH_ANDROID", "FITBIT_OS_WATCH_IOS", @@ -11465,6 +11489,9 @@ "PIXEL6", "PIXEL7", "PIXEL_BUDS", + "PIXEL_TABLET", + "PIXEL_TABLET_HUB_MODE", + "PIXEL_TABLET_PERSONAL_MODE", "PIXEL_WATCH", "SCREENLESS", "SMART_DISPLAY", @@ -11500,7 +11527,6 @@ "For chromecast with assistant + screen, e.g. Newman. OWNERS: cast-eng-platform@", "Virtual device for event-based triggering, e.g. executing time scheduled routines: go/scheduled-routines. OWNERS: surfaces-infra-core@", "Assistant on native Chrome OS (go/croissant). OWNERS: croissant@", - "Fitbit OS. OWNERS: surfaces-infra-core@", "Assistant on Fitbit OS Watch. OWNERS: assistant-wearable-team@", "Assistant on Fitbit Watch paired with AGSA. OWNERS: assistant-wearable-team@", "Assistant on Fitbit Watch paired with iOPA. OWNERS: assistant-wearable-team@", @@ -11522,6 +11548,9 @@ "Pixel 6. OWNERS: surfaces-infra-core@", "Pixel 7. OWNERS: surfaces-infra-core@", "Assistant on Pixel Buds. OWNERS: assistant-wearable-team@", + "Assistant on Pixel Tablet/Tangor (a.k.a, TK). OWNERS: assistant-display-eng@", + "Assistant on Tangor running in Hub mode. OWNERS: assistant-display-eng@", + "Assistant on Tangor running in Personal mode. OWNERS: assistant-display-eng@", "Assistant on Pixel Watch (a.k.a., Rohan). OWNERS: assistant-wearable-team@", "Devices with screen off or locked (go/bisto). OWNERS: surfaces-infra-core@", "Smart surface, such as Titan. OWNERS: surfaces-infra-core@", @@ -15156,7 +15185,7 @@ "type": "object" }, "AssistantApiSoftwareCapabilities": { - "description": "These capabilities represent what software features the client supports. This should be determined based on the client's various software versions (OS, GSA version, etc). Next ID: 26", + "description": "These capabilities represent what software features the client supports. This should be determined based on the client's various software versions (OS, GSA version, etc). Next ID: 27", "id": "AssistantApiSoftwareCapabilities", "properties": { "appCapabilities": { @@ -15202,6 +15231,10 @@ "gcmCapabilities": { "$ref": "AssistantApiGcmCapabilities" }, + "homeAppCapabilities": { + "$ref": "AssistantApiCapabilitiesHomeAppCapabilities", + "description": "Google Home app features." + }, "liveTvChannelCapabilities": { "$ref": "AssistantApiLiveTvChannelCapabilities", "description": "Capabilities related to live TV channels." @@ -15479,7 +15512,7 @@ "type": "object" }, "AssistantApiSupportedFeatures": { - "description": "These are the set of features that are supported by the device. It's a part of the SoftwareCapabilities of the device. Next ID: 62", + "description": "These are the set of features that are supported by the device. It's a part of the SoftwareCapabilities of the device. Next ID: 63", "id": "AssistantApiSupportedFeatures", "properties": { "aaeNotificationSourceSupported": { @@ -15525,6 +15558,10 @@ "description": "Whether the client can batch client op results before sending them to the server.", "type": "boolean" }, + "confirmationBeforeReadingMultipleMessagesSupported": { + "description": "Whether the client supports confirmation flow before announcement of multiple messages. If set to true the user will be prompted once and confirmation will be taken before all the messages are announced.", + "type": "boolean" + }, "crossDeviceBroadcastSupported": { "description": "Whether the client supports cross-device broadcast (i.e. on Torus).", "type": "boolean" @@ -18737,9 +18774,18 @@ "type": "object" }, "AssistantLogsProviderAnnotationLog": { - "description": "Provider annotation annotated from the query.", + "description": "Provider annotation annotated from the query. These fields contain the detailed information for the provider. (e.g. for Youtube, package_names contains \"com.google.android.youtube\", localized_names contains \"youtube\", and lang contains \"en\" from \"en-US\" which depends on user's setting.)", "id": "AssistantLogsProviderAnnotationLog", "properties": { + "lang": { + "type": "string" + }, + "localizedNames": { + "items": { + "type": "string" + }, + "type": "array" + }, "packageNames": { "items": { "type": "string" @@ -18916,14 +18962,16 @@ "LOCAL_FALLBACK", "MANUAL_DEFINED_REASON", "SINGLE_NEARBY_DEVICE", - "PERSONAL_RESPONSE_BIT_OPTOUT_ON_LOCKED_PHONE" + "PERSONAL_RESPONSE_BIT_OPTOUT_ON_LOCKED_PHONE", + "FURTHER_LOCAL_DEVICE" ], "enumDescriptions": [ "", "", "", "", - "" + "", + "Lumos result from a FURTHER hearing device will be marked as low confidence." ], "type": "string" }, @@ -18944,7 +18992,7 @@ "type": "object" }, "AssistantPrefulfillmentRankerPrefulfillmentSignals": { - "description": "Signals to be used by the Prefulfillment Ranker. Derived from the ParsingSignals and GroundingSignals carried by the FunctionCall. LINT.IfChange Next ID: 39", + "description": "Signals to be used by the Prefulfillment Ranker. Derived from the ParsingSignals and GroundingSignals carried by the FunctionCall. LINT.IfChange Next ID: 41", "id": "AssistantPrefulfillmentRankerPrefulfillmentSignals", "properties": { "bindingSetAuis": { @@ -19011,6 +19059,14 @@ "description": "Feasibility of fulfilling the binding set. Eg: For PlayMedia, this is equivalent to playability. More details: go/hgr-feasibility-feature.", "type": "boolean" }, + "isFullyGrounded": { + "description": "Whether the intent is fully grounded.", + "type": "boolean" + }, + "isPlayGenericMusic": { + "description": "Whether the intent is a PlayGenericMusic-type intent.", + "type": "boolean" + }, "kscorerRank": { "description": "The rank order of the interpretation as determined by kscorer. The kscorer-determined dominant interpretation, if any, gets a rank of 0. The remaining N interpretations get a rank of 1 through N.", "format": "int32", @@ -19473,15 +19529,13 @@ "UNDEFINED", "CURATED", "ALARM", - "CUSTOM", - "CUSTOM_SCRIPT" + "CUSTOM" ], "enumDescriptions": [ "", "", "", - "", - "SCHEDULED = 3 [deprecated = true];" + "" ], "type": "string" }, @@ -21669,9 +21723,6 @@ "$ref": "QualityTimebasedLastSignificantUpdate", "description": "Contains a date used for the \"Date Last Modified\" toolbelt restrict mode. Note: this date is a combined date and is different from the pure shingle-based signal stored in contentage.last_significant_update field." }, - "oldnessInfo": { - "$ref": "QualityTimebasedOldnessInfo" - }, "pagetype": { "$ref": "QualityTimebasedPageType" } @@ -21689,7 +21740,7 @@ "type": "object" }, "CompressedQualitySignals": { - "description": "A message containing per doc signals that are compressed and included in Mustang and TeraGoogle. For TeraGoogle, this message is included in perdocdata which means it can be used in preliminary scoring. CAREFUL: For TeraGoogle, this data resides in very limited serving memory (Flash storage) for a huge number of documents. Next id: 40", + "description": "A message containing per doc signals that are compressed and included in Mustang and TeraGoogle. For TeraGoogle, this message is included in perdocdata which means it can be used in preliminary scoring. CAREFUL: For TeraGoogle, this data resides in very limited serving memory (Flash storage) for a huge number of documents. Next id: 42", "id": "CompressedQualitySignals", "properties": { "anchorMismatchDemotion": { @@ -21834,6 +21885,16 @@ "format": "uint32", "type": "integer" }, + "productReviewPReviewPage": { + "description": "Fields product_review_p_review_page and product_review_p_uhq_page are for promoting/demoting HQ/LQ review pages in NGS. See go/pr-boosts for details. The possibility of a page being a review page.", + "format": "uint32", + "type": "integer" + }, + "productReviewPUhqPage": { + "description": "The possibility of a page being a high quality review page.", + "format": "uint32", + "type": "integer" + }, "scamness": { "description": "Scam model score. Used as one of the web page quality qstar signals. Value range from 0 to 1023.", "format": "uint32", @@ -26751,6 +26812,7 @@ "TYPE_PROTO", "TYPE_EXTENSION", "TYPE_NESTED_STRUCT", + "TYPE_SEMANTIC_REFERENCE", "TYPE_LAT_LONG", "TYPE_MEASUREMENT", "TYPE_HAS_VALUE", @@ -26771,6 +26833,7 @@ "raw_value contains a raw proto.", "This proto has extensions set.", "nested_struct field is populated.", + "string_value contains a Meaning Schema(go/life-of-a-meaning-schema) type name which needs to be a valid ValueType or SemanticType. This is currently used by semantic type based answer value formatting(go/semantic-type-format) before Search Response Meaning(go/srm-design) is ready for use", "lat_long_value contains a geopoint.", "measurement_value contains a measurement.", "No longer used; pending downstream code cleanup.", @@ -28328,6 +28391,7 @@ "PROVIDER_GOOGLE_MAPFACTS_PRIVACY", "PROVIDER_GOOGLE_GT_ALF", "PROVIDER_GOOGLE_GT_OPERATOR_PROVENANCE", + "PROVIDER_GOOGLE_LOCAL_SERVICES_ADS", "PROVIDER_GOOGLE_LOCALSEARCH", "PROVIDER_GOOGLE_TRANSIT", "PROVIDER_GOOGLE_GEOWIKI", @@ -28850,7 +28914,8 @@ "PROVIDER_NEOGY", "PROVIDER_AMPUP", "PROVIDER_LOOP", - "PROVIDER_ZEST" + "PROVIDER_ZEST", + "PROVIDER_EZVOLT" ], "enumDescriptions": [ "ABSTRACT The root of all provider types. This should never be present on an actual feature, but can be useful when calling InCategory.", @@ -29040,6 +29105,7 @@ "", "", "", + "", "The next new \"Google\" provider entries should be placed above.", "UMBRELLA", "", @@ -29562,7 +29628,8 @@ "", "", "", - "Note: Next available value is 0x1270B." + "", + "Note: Next available value is 0x1270C." ], "type": "string" }, @@ -29589,6 +29656,7 @@ "type": "object" }, "GeostoreDateTimeProto": { + "description": "WARNING: Outside of FeatureProto, please avoid in favor of a standard civil time type. Direct usage is error-prone due to the conflation of physical time and civil time (go/httat). In a protocol buffer, please use google.type.Date, with an additional google.type.TimeOfDay for precision finer-grained than a day. (For google.type.DateTime, go/prototime#types cites go/httat#zoned_datetime as a caveat). In a programming language, see go/time-devguide/languages. Additionally in C++, google3/geostore/base/public/datetime.h has conversion functions between DateTimeProto and Abseil's civil time types.", "id": "GeostoreDateTimeProto", "properties": { "precision": { @@ -33161,6 +33229,7 @@ "PROVIDER_GOOGLE_MAPFACTS_PRIVACY", "PROVIDER_GOOGLE_GT_ALF", "PROVIDER_GOOGLE_GT_OPERATOR_PROVENANCE", + "PROVIDER_GOOGLE_LOCAL_SERVICES_ADS", "PROVIDER_GOOGLE_LOCALSEARCH", "PROVIDER_GOOGLE_TRANSIT", "PROVIDER_GOOGLE_GEOWIKI", @@ -33683,7 +33752,8 @@ "PROVIDER_NEOGY", "PROVIDER_AMPUP", "PROVIDER_LOOP", - "PROVIDER_ZEST" + "PROVIDER_ZEST", + "PROVIDER_EZVOLT" ], "enumDescriptions": [ "ABSTRACT The root of all provider types. This should never be present on an actual feature, but can be useful when calling InCategory.", @@ -33873,6 +33943,7 @@ "", "", "", + "", "The next new \"Google\" provider entries should be placed above.", "UMBRELLA", "", @@ -34395,7 +34466,8 @@ "", "", "", - "Note: Next available value is 0x1270B." + "", + "Note: Next available value is 0x1270C." ], "type": "string" } @@ -35312,6 +35384,7 @@ "PROVIDER_GOOGLE_MAPFACTS_PRIVACY", "PROVIDER_GOOGLE_GT_ALF", "PROVIDER_GOOGLE_GT_OPERATOR_PROVENANCE", + "PROVIDER_GOOGLE_LOCAL_SERVICES_ADS", "PROVIDER_GOOGLE_LOCALSEARCH", "PROVIDER_GOOGLE_TRANSIT", "PROVIDER_GOOGLE_GEOWIKI", @@ -35834,7 +35907,8 @@ "PROVIDER_NEOGY", "PROVIDER_AMPUP", "PROVIDER_LOOP", - "PROVIDER_ZEST" + "PROVIDER_ZEST", + "PROVIDER_EZVOLT" ], "enumDescriptions": [ "ABSTRACT The root of all provider types. This should never be present on an actual feature, but can be useful when calling InCategory.", @@ -36024,6 +36098,7 @@ "", "", "", + "", "The next new \"Google\" provider entries should be placed above.", "UMBRELLA", "", @@ -36546,7 +36621,8 @@ "", "", "", - "Note: Next available value is 0x1270B." + "", + "Note: Next available value is 0x1270C." ], "type": "string" }, @@ -37115,7 +37191,7 @@ "id": "GeostorePoseProto", "properties": { "altitude": { - "description": "The height of the poses above the WGS-84 ellipsoid in meters.", + "description": "The height of the pose. A positive height is above the WGS-84 ellipsoid in meters; negative is below.", "format": "double", "type": "number" }, @@ -37775,6 +37851,7 @@ "PROVIDER_GOOGLE_MAPFACTS_PRIVACY", "PROVIDER_GOOGLE_GT_ALF", "PROVIDER_GOOGLE_GT_OPERATOR_PROVENANCE", + "PROVIDER_GOOGLE_LOCAL_SERVICES_ADS", "PROVIDER_GOOGLE_LOCALSEARCH", "PROVIDER_GOOGLE_TRANSIT", "PROVIDER_GOOGLE_GEOWIKI", @@ -38297,7 +38374,8 @@ "PROVIDER_NEOGY", "PROVIDER_AMPUP", "PROVIDER_LOOP", - "PROVIDER_ZEST" + "PROVIDER_ZEST", + "PROVIDER_EZVOLT" ], "enumDescriptions": [ "ABSTRACT The root of all provider types. This should never be present on an actual feature, but can be useful when calling InCategory.", @@ -38487,6 +38565,7 @@ "", "", "", + "", "The next new \"Google\" provider entries should be placed above.", "UMBRELLA", "", @@ -39009,7 +39088,8 @@ "", "", "", - "Note: Next available value is 0x1270B." + "", + "Note: Next available value is 0x1270C." ], "type": "string" } @@ -43979,6 +44059,13 @@ "$ref": "GoogleCloudContentwarehouseV1Document", "description": "Document created after executing create request." }, + "longRunningOperations": { + "description": "post-processing LROs", + "items": { + "$ref": "GoogleLongrunningOperation" + }, + "type": "array" + }, "metadata": { "$ref": "GoogleCloudContentwarehouseV1ResponseMetadata", "description": "Additional information for the API invocation, such as the request tracking id." @@ -44450,8 +44537,12 @@ "description": "The configuration of exporting documents from the Document Warehouse to CDW pipeline.", "id": "GoogleCloudContentwarehouseV1ExportToCdwPipeline", "properties": { - "documentIds": { - "description": "The list of all the documents to be processed.", + "docAiDataset": { + "description": "The CDW dataset resource name. Format: projects/{project}/locations/{location}/processors/{processor}/dataset", + "type": "string" + }, + "documents": { + "description": "The list of all the resource names of the documents to be processed. Format: projects/{project_number}/locations/{location}/documents/{document_id}.", "items": { "type": "string" }, @@ -44461,9 +44552,10 @@ "description": "The Cloud Storage folder path used to store the exported documents before being sent to CDW. Format: gs:///.", "type": "string" }, - "processorInfo": { - "$ref": "GoogleCloudContentwarehouseV1ProcessorInfo", - "description": "The CDW processor information." + "trainingSplitRatio": { + "description": "Ratio of training dataset split. When importing into Document AI Workbench, documents will be automatically split into training and test split category with the specified ratio.", + "format": "float", + "type": "number" } }, "type": "object" @@ -44550,6 +44642,10 @@ "description": "The input Cloud Storage folder. All files under this folder will be imported to Document Warehouse. Format: gs:///.", "type": "string" }, + "processorResultsFolderPath": { + "description": "The Cloud Storage folder path used to store the raw results from processors. Format: gs:///.", + "type": "string" + }, "schemaName": { "description": "The Document Warehouse schema resource name. All documents processed by this pipeline will use this schema. Format: projects/{project_number}/locations/{location}/documentSchemas/{document_schema_id}.", "type": "string" @@ -44561,12 +44657,8 @@ "description": "The configuration of the document classify/split and entity/kvp extraction pipeline.", "id": "GoogleCloudContentwarehouseV1GcsIngestWithDocAiProcessorsPipeline", "properties": { - "classifySplitProcessorInfos": { - "$ref": "GoogleCloudContentwarehouseV1ProcessorInfo", - "description": "The classify or split processor information." - }, "extractProcessorInfos": { - "description": "The entity or key-value pair extracting processor information.", + "description": "The extract processors information. One matched extract processor will be used to process documents based on the classify processor result. If no classify processor is specificied, the first extract processor will be used.", "items": { "$ref": "GoogleCloudContentwarehouseV1ProcessorInfo" }, @@ -44579,6 +44671,10 @@ "processorResultsFolderPath": { "description": "The Cloud Storage folder path used to store the raw results from processors. Format: gs:///.", "type": "string" + }, + "splitClassifyProcessorInfo": { + "$ref": "GoogleCloudContentwarehouseV1ProcessorInfo", + "description": "The split and classify processor information. The split and classify result will be used to find a matched extract processor." } }, "type": "object" @@ -44942,6 +45038,32 @@ }, "type": "object" }, + "GoogleCloudContentwarehouseV1ProcessWithDocAi": { + "description": "The configuration of processing documents in Document Warehouse with DocAi processors pipeline.", + "id": "GoogleCloudContentwarehouseV1ProcessWithDocAi", + "properties": { + "documents": { + "description": "The list of all the resource names of the documents to be processed. Format: projects/{project_number}/locations/{location}/documents/{document_id}.", + "items": { + "type": "string" + }, + "type": "array" + }, + "exportFolderPath": { + "description": "The Cloud Storage folder path used to store the exported documents before being sent to CDW. Format: gs:///.", + "type": "string" + }, + "processorInfo": { + "$ref": "GoogleCloudContentwarehouseV1ProcessorInfo", + "description": "The CDW processor information." + }, + "processorResultsFolderPath": { + "description": "The Cloud Storage folder path used to store the raw results from processors. Format: gs:///.", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudContentwarehouseV1ProcessorInfo": { "description": "The DocAI processor information.", "id": "GoogleCloudContentwarehouseV1ProcessorInfo", @@ -45385,7 +45507,7 @@ "properties": { "exportCdwPipeline": { "$ref": "GoogleCloudContentwarehouseV1ExportToCdwPipeline", - "description": "Export docuemnts from Document Warehouseing to CDW for training purpose." + "description": "Export docuemnts from Document Warehouse to CDW for training purpose." }, "gcsIngestPipeline": { "$ref": "GoogleCloudContentwarehouseV1GcsIngestPipeline", @@ -45394,6 +45516,10 @@ "gcsIngestWithDocAiProcessorsPipeline": { "$ref": "GoogleCloudContentwarehouseV1GcsIngestWithDocAiProcessorsPipeline", "description": "Use DocAI processors to process documents in Cloud Storage and ingest them to Document Warehouse." + }, + "processWithDocAiPipeline": { + "$ref": "GoogleCloudContentwarehouseV1ProcessWithDocAi", + "description": "Use a DocAI processor to process documents in Document Warehouse, and re-ingest the updated results into Document Warehouse." } }, "type": "object" @@ -47170,7 +47296,7 @@ "type": "string" }, "committedUntilIsMixed": { - "description": "TODO(b/265939748) To be removed, always false from User Status Service.", + "description": "TODO(b/265939748) To be removed, always false.", "type": "boolean" }, "eventSummary": { @@ -47219,7 +47345,7 @@ "type": "string" }, "committedUntilIsMixed": { - "description": "TODO(b/265939748) To be removed, always false from User Status Service.", + "description": "TODO(b/265939748) To be removed, always false.", "type": "boolean" }, "nextAvailable": { @@ -47251,7 +47377,7 @@ "type": "string" }, "committedUntilIsMixed": { - "description": "TODO(b/265939748) To be removed, always false from User Status Service.", + "description": "TODO(b/265939748) To be removed, always false.", "type": "boolean" }, "eventSummary": { @@ -47327,7 +47453,7 @@ "type": "string" }, "committedUntilIsMixed": { - "description": "TODO(b/265939748) To be removed, always false from User Status Service.", + "description": "TODO(b/265939748) To be removed, always false.", "type": "boolean" }, "eventSummary": { @@ -47597,7 +47723,8 @@ "EXTERNAL_PARTNER_ID", "UNAUTHENTICATED_USER_ID", "SUPPORT_CASES_ID", - "FITBIT_P11_ID" + "FITBIT_P11_ID", + "SHORT_PHONE_NUMBER" ], "enumDescriptions": [ "", @@ -47637,7 +47764,8 @@ "used by RCS NNI Notification", "used by GMM for anonymous registration", "used by Support Cases for Realtime Media WebRtc", - "signaling. go/cases-media-channel-dd. used by Fitbit Project 11 for messaging." + "signaling. go/cases-media-channel-dd. used by Fitbit Project 11 for messaging.", + "Short phone number: go/shortnumbers" ], "type": "string" } @@ -52370,7 +52498,7 @@ "type": "object" }, "ImageRepositoryContentBasedVideoMetadata": { - "description": "Next Tag: 48", + "description": "Next Tag: 49", "id": "ImageRepositoryContentBasedVideoMetadata", "properties": { "amarnaDocid": { @@ -52424,6 +52552,10 @@ "representativeFrameData": { "$ref": "ImageData" }, + "s3Asr": { + "$ref": "ImageRepositoryAmarnaCloudSpeechSignals", + "description": "Trnascript generated through AMARNA_CLOUD_SPEECH asset in Venom. Note that AMARNA_CLOUD_SPEECH uses S3 as the speech engine backend, similar to YT caption's SPEECH_RECOGNIZER asset. However, they may use different S3 models." + }, "s3LanguageIdentification": { "$ref": "ImageRepositoryS3LangIdSignals" }, @@ -52463,7 +52595,7 @@ }, "transcriptAsr": { "$ref": "PseudoVideoData", - "description": "Speech related metadata" + "description": "Speech related metadata The transcript_asr field is generated from the YT caption's SPEECH_RECOGNIZER asset." }, "truncationInfo": { "$ref": "ImageRepositoryFileTruncationInfo", @@ -53486,8 +53618,13 @@ "type": "object" }, "ImageSafesearchContentOCRAnnotation": { + "description": "A protocol buffer to store the OCR annotation. Next available tag id: 10.", "id": "ImageSafesearchContentOCRAnnotation", "properties": { + "ocrAnnotationVersion": { + "description": "A string that indicates the version of SafeSearch OCR annotation.", + "type": "string" + }, "ocrProminenceScore": { "description": "The score produced by Aksara geometry and spoof score. Describes the 'visibility' or 'importance' of the text on the image [0, 1]", "format": "float", @@ -59811,7 +59948,7 @@ "type": "object" }, "KnowledgeAnswersIntentQueryFunctionCallSignals": { - "description": "Next ID: 35", + "description": "Next ID: 36", "id": "KnowledgeAnswersIntentQueryFunctionCallSignals", "properties": { "argumentComposingMid": { @@ -59968,6 +60105,10 @@ "description": "The id of the summary node if this funcall represents an mdvc interpretation", "type": "string" }, + "responseMeaningSignals": { + "$ref": "KnowledgeAnswersIntentQueryResponseMeaningSignalsResponseMeaningSignals", + "description": "Signal data from SRM generation. Solely used internally. See: go/srm-design." + }, "resultSupport": { "description": "The list of result supports for this FunctionCall.", "items": { @@ -60082,8 +60223,10 @@ "UNKNOWN_ID_TYPE", "ALARM", "CALENDAR", + "CALENDAR_EVENT", "KG", "LIST", + "LIST_ITEM", "NOTE", "PROVIDER", "STOPWATCH", @@ -60097,18 +60240,22 @@ "RECIPE", "PERSON", "COMM_ENDPOINT", + "CALL_LOG", "NEWS", "MEDIA", "CONCEPT", "RELATION", "ATTENTIONAL_ENTITY", "AUDIO_MESSAGE_METADATA_ID", - "BROADCAST" + "BROADCAST", + "MESSAGE_CONTENT" ], "enumDescriptions": [ "", "", "", + "Calendar Event Id, see go/acal-portable-id.", + "", "", "", "", @@ -60124,13 +60271,15 @@ "", "Comms specific id types. go/call-object-iff", "", + "Redial/Callback specific id to identify call log entry.", "", "Media specific id types. go/media-gb-data", "Concept and relation identifiers (go/discovered-not-designed)", "", "", "A secondary speech id for Audio Message Metadata go/audio-message-gp.", - "Broadcast feature identifier go/routines-broadcast-device-gp" + "Broadcast feature identifier go/routines-broadcast-device-gp", + "Message content identifier for send/reply message go/message-content-grounding" ], "type": "string" } @@ -60478,6 +60627,19 @@ }, "type": "object" }, + "KnowledgeAnswersIntentQueryResponseMeaningSignalsResponseMeaningSignals": { + "description": "SRM signal data. Properties here should be nonsemantic. Semantic properties should be modeled directly in the SRM.", + "id": "KnowledgeAnswersIntentQueryResponseMeaningSignalsResponseMeaningSignals", + "properties": { + "propertyValue": { + "items": { + "$ref": "FreebasePropertyValue" + }, + "type": "array" + } + }, + "type": "object" + }, "KnowledgeAnswersIntentQuerySaftSignals": { "description": "Signals derived from overlapping saft annotations.", "id": "KnowledgeAnswersIntentQuerySaftSignals", @@ -70149,6 +70311,41 @@ }, "type": "object" }, + "NlpSemanticParsingLocalEvChargingStationConnectorConstraint": { + "id": "NlpSemanticParsingLocalEvChargingStationConnectorConstraint", + "properties": { + "connectorType": { + "enum": [ + "OTHER", + "J_1772", + "MENNEKES", + "CHADEMO", + "CCS_COMBO_1", + "CCS_COMBO_2", + "TESLA_ROADSTER", + "TESLA_S_HPWC", + "TESLA", + "GB_T", + "WALL_OUTLET" + ], + "enumDescriptions": [ + "", + "", + "IEC 62196 Type 2 connector", + "", + "Combined Charging System (AC and DC). Based on SAE", + "Type-1 J-1772 connector Combined Charging System (AC and DC). Based on Type-2", + "Mennekes connector Tesla connectors (#7-8) are being deprecated and will soon be removed and reserved. Please use the generic TESLA connector #9 below.", + "", + "", + "GB/T", + "" + ], + "type": "string" + } + }, + "type": "object" + }, "NlpSemanticParsingLocalEvChargingStationSpeedConstraint": { "description": "There is an implicit AND relation if multiple EVCS constraint types are specified.", "id": "NlpSemanticParsingLocalEvChargingStationSpeedConstraint", @@ -70617,7 +70814,7 @@ "type": "object" }, "NlpSemanticParsingLocalLocationConstraint": { - "description": "All the possible location constraints. This message is associated with a location and can be nested accordingly. E.g., for a compound location the constraint may be associated with the entire location or with either of the two internal locations (loc_1 and loc_2). There is an implicit AND relation between the different constraints. Next ID: 24.", + "description": "All the possible location constraints. This message is associated with a location and can be nested accordingly. E.g., for a compound location the constraint may be associated with the entire location or with either of the two internal locations (loc_1 and loc_2). There is an implicit AND relation between the different constraints. Next ID: 25.", "id": "NlpSemanticParsingLocalLocationConstraint", "properties": { "amenities": { @@ -70630,6 +70827,10 @@ "cuisine": { "$ref": "NlpSemanticParsingLocalCuisineConstraint" }, + "evcsConnectorConstraint": { + "$ref": "NlpSemanticParsingLocalEvChargingStationConnectorConstraint", + "description": "Used for populating ElectricVehicleConnectorRefinement from QBF go/evcs-qbf-connector" + }, "evcsSpeedConstraint": { "$ref": "NlpSemanticParsingLocalEvChargingStationSpeedConstraint" }, @@ -77011,7 +77212,8 @@ "PINPOINT", "TRANSCONSOLE", "MARKETPLACE", - "SPORK" + "SPORK", + "DASHER_SUSTAINABILITY" ], "enumDescriptions": [ "Cannot just use UNKNOWN because enum values use C++ scoping rules. Therefore, \"UNKNOWN\" must be unique within \"apps.people.logs.proto\".", @@ -77648,7 +77850,8 @@ "Pinpoint go/jsuite-pinpoint Team contact: backlight-eng@google.com", "Translation Console go/transconsole Team contact: transconsole-eng@google.com", "Google Workspace Marketplace go/gsm-eng Team contact: gsm-team@google.com", - "Drive desktop Photos uploader go/spork-prd Team contact: spork-eng@google.com" + "Drive desktop Photos uploader go/spork-prd Team contact: spork-eng@google.com", + "Sustainability on Workspace Team: workspace-sustainability-eng@google.com" ], "type": "string" }, @@ -78101,6 +78304,10 @@ "$ref": "RepositoryAnnotationsRdfaRdfaRichSnippetsApplication", "description": "Application information associated to the document." }, + "s3AudioLanguage": { + "$ref": "S3AudioLanguageS3AudioLanguage", + "description": "Primary video's audio language classified by S3 based Automatic Language Identification (only for watch pages)." + }, "saftLanguageInt": { "description": "Top document language as generated by SAFT LangID. For now we store bare minimum: just the top 1 language value, converted to the language enum, and only when different from the first value in 'languages'.", "items": { @@ -81749,6 +81956,7 @@ "REMINDER_DRAGONGLASS_ARIS", "REMINDER_PROACTIVE_API", "REMINDER_POST_TASK_MIGRATION", + "REMINDER_VOLUNTARY_TASK_MIGRATION", "REMINDER_NOTIFICATION_ENABLE_NOTICE", "CROSS_SURFACE", "CROSS_SURFACE_MOVIE_SHOWTIMES", @@ -82172,6 +82380,7 @@ "", "", "", + "", "This is deprecated. Use CROSS_SURFACE_TRANSACTIONS instead.", "", "", @@ -85408,86 +85617,55 @@ "enum": [ "NONE", "TUTORIAL", - "EXAMPLES", "MAP", "TRANSLATE", - "MEANING", "LISTEN", "PROMOTION", - "SOUNDTRACK", "GIF", - "EPISODES", "REGISTER", "EVENT_LISTING", "RANKING", "DISCOGRAPHY", "DIRECTIONS", "NEWS", - "POPULATION", - "BEHIND_THE_SCENES", "SOCIAL_MEDIA", "FAN_FICTION", - "ADVICE", "RECIPES", - "CAST", - "ONLINE_QUIZ", "HOURS_OF_OPERATION", "DEFINITION", "REAL_ESTATE_LISTING", - "FOR_KIDS", - "BOOKS_BY_AUTHOR", "PREVIEW", - "BIOGRAPHY", "PURCHASE", "MENU", - "BLOG", "UNBOXING", - "IMAGES", "NUTRITION_FACTS", - "SCIENTIFIC_EXPLANATION", - "ABOUT_PAGE", - "READ_BOOK", "TRAVEL_GUIDE", "SPECS", "CALCULATOR", "DOWNLOAD", "SCORES", - "SUMMARY", "QUOTES", "SHOWTIMES", "CATALOG", - "ONLINE_CLASS", "CALENDAR", - "ANALYSIS", "LOCATION_FINDER", - "COMIC", "RENT", - "WATCH_MOVIE_TV_SHOW", - "CHARACTERS", "STUDY_GUIDE", - "WATCH_VIDEO", - "APP", "REVIEW", "SHEET_MUSIC", - "SEARCH_RESULTS", "LOGIN", "TRIVIA", "CONTACT_PAGE", - "TEMPLATE", "RESERVATION", "CUSTOMER_SUPPORT", "INTERVIEW", - "USER_COMMENTS", "COUPON", "FLIGHT_TRACKER", "COMPANY_FINANCIALS", - "WEATHER", "FORUM", "THESAURUS", - "ONLINE_GAMES", "MANUAL", "JOB_POSTING", - "MUSIC_VIDEO", "LYRICS", "SYMPTOMS", "REPAIR", @@ -85503,6 +85681,7 @@ "MUGSHOT", "CRIME", "SHOPPING_TOPN", + "AUTHENTIC", "RESERVED_FOR_NEW_ENUM_128", "RESERVED_FOR_NEW_ENUM_129", "RESERVED_FOR_NEW_ENUM_130", @@ -85523,7 +85702,6 @@ "RESERVED_FOR_NEW_ENUM_145", "RESERVED_FOR_NEW_ENUM_146", "RESERVED_FOR_NEW_ENUM_147", - "RESERVED_FOR_NEW_ENUM_LARGE_PLEASE_ASK_ORBIT_97", "RESERVED_FOR_NEW_ENUM_LARGE_PLEASE_ASK_ORBIT_98", "RESERVED_FOR_NEW_ENUM_LARGE_PLEASE_ASK_ORBIT_99", "RESERVED_FOR_NEW_ENUM_LARGE_PLEASE_ASK_ORBIT_100", @@ -85553,7 +85731,38 @@ "RESERVED_FOR_NEW_ENUM_LARGE_PLEASE_ASK_ORBIT_124", "RESERVED_FOR_NEW_ENUM_LARGE_PLEASE_ASK_ORBIT_125", "RESERVED_FOR_NEW_ENUM_LARGE_PLEASE_ASK_ORBIT_126", - "RESERVED_FOR_NEW_ENUM_LARGE_PLEASE_ASK_ORBIT_127" + "RESERVED_FOR_NEW_ENUM_LARGE_PLEASE_ASK_ORBIT_127", + "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_2", + "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_5", + "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_8", + "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_10", + "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_17", + "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_18", + "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_21", + "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_23", + "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_24", + "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_28", + "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_29", + "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_31", + "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_34", + "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_36", + "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_38", + "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_39", + "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_40", + "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_46", + "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_50", + "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_52", + "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_54", + "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_56", + "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_57", + "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_59", + "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_60", + "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_63", + "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_67", + "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_71", + "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_75", + "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_78", + "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_81" ], "enumDescriptions": [ "", @@ -85610,37 +85819,6 @@ "", "", "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", "This is specifically for the buying guides carousel (go/oshop-buying-guides). Consider using PRODUCT_BUYING_GUIDE instead.", "", "", @@ -85653,6 +85831,7 @@ "Image intent representing whether there is a mugshot in the image (or if the image is itself a mugshot).", "Document intent representing whether a page is crime-related (go/crime-demotion-in-image-search-dd)", "Document intent representing whether a page is recommending best shopping products fulfilling certain application (e.g. \"best laptops for students\"). See go/shopping_topn_orbit.", + "AuthenticityScore for document. see go/astar-dd.", "========== Enums for new intents ========== Instructions: When adding a new intent, use the reserved enum number from the start of this list, and add a new reserved enum number to the end for the next person. There is a unit test that checks there are at least 20 reserved enums. See go/new-intentkeyenum for details.", "", "", @@ -85703,187 +85882,7 @@ "", "", "", - "" - ], - "type": "string" - }, - "type": "array" - }, - "scores": { - "description": "The intent scores, scaled to integers between 0 and 100 for compactness.", - "items": { - "format": "int32", - "type": "integer" - }, - "type": "array" - }, - "version": { - "description": "Version 0: Presence of an intent label in the 'intents' field represents our best-effort classification. The 'scores' field is not meaningful. Version 1: Values in the 'scores' field represent the estimated precision of the classifier for a threshold at that score.", - "format": "int32", - "type": "integer" - } - }, - "type": "object" - }, - "QualityOrbitAsteroidBeltImageIntentScores": { - "id": "QualityOrbitAsteroidBeltImageIntentScores", - "properties": { - "intents": { - "description": "The unique identifier for an Asteroid Belt document intent is being reused here", - "items": { - "enum": [ - "NONE", - "TUTORIAL", - "EXAMPLES", - "MAP", - "TRANSLATE", - "MEANING", - "LISTEN", - "PROMOTION", - "SOUNDTRACK", - "GIF", - "EPISODES", - "REGISTER", - "EVENT_LISTING", - "RANKING", - "DISCOGRAPHY", - "DIRECTIONS", - "NEWS", - "POPULATION", - "BEHIND_THE_SCENES", - "SOCIAL_MEDIA", - "FAN_FICTION", - "ADVICE", - "RECIPES", - "CAST", - "ONLINE_QUIZ", - "HOURS_OF_OPERATION", - "DEFINITION", - "REAL_ESTATE_LISTING", - "FOR_KIDS", - "BOOKS_BY_AUTHOR", - "PREVIEW", - "BIOGRAPHY", - "PURCHASE", - "MENU", - "BLOG", - "UNBOXING", - "IMAGES", - "NUTRITION_FACTS", - "SCIENTIFIC_EXPLANATION", - "ABOUT_PAGE", - "READ_BOOK", - "TRAVEL_GUIDE", - "SPECS", - "CALCULATOR", - "DOWNLOAD", - "SCORES", - "SUMMARY", - "QUOTES", - "SHOWTIMES", - "CATALOG", - "ONLINE_CLASS", - "CALENDAR", - "ANALYSIS", - "LOCATION_FINDER", - "COMIC", - "RENT", - "WATCH_MOVIE_TV_SHOW", - "CHARACTERS", - "STUDY_GUIDE", - "WATCH_VIDEO", - "APP", - "REVIEW", - "SHEET_MUSIC", - "SEARCH_RESULTS", - "LOGIN", - "TRIVIA", - "CONTACT_PAGE", - "TEMPLATE", - "RESERVATION", - "CUSTOMER_SUPPORT", - "INTERVIEW", - "USER_COMMENTS", - "COUPON", - "FLIGHT_TRACKER", - "COMPANY_FINANCIALS", - "WEATHER", - "FORUM", - "THESAURUS", - "ONLINE_GAMES", - "MANUAL", - "JOB_POSTING", - "MUSIC_VIDEO", - "LYRICS", - "SYMPTOMS", - "REPAIR", - "BUYING_GUIDE", - "PRODUCT_EDITORIAL_REVIEW", - "SHOPPING_MERCHANT_PRODUCT", - "SHOPPING_REVIEW_OR_BUYING_GUIDE", - "PRODUCT_REVIEW", - "PRODUCT_COMPARISON", - "PRODUCT_BUYING_GUIDE", - "SHOPAHOLIC", - "GOOGLE_SCREENSHOT", - "MUGSHOT", - "CRIME", - "SHOPPING_TOPN", - "RESERVED_FOR_NEW_ENUM_128", - "RESERVED_FOR_NEW_ENUM_129", - "RESERVED_FOR_NEW_ENUM_130", - "RESERVED_FOR_NEW_ENUM_131", - "RESERVED_FOR_NEW_ENUM_132", - "RESERVED_FOR_NEW_ENUM_133", - "RESERVED_FOR_NEW_ENUM_134", - "RESERVED_FOR_NEW_ENUM_135", - "RESERVED_FOR_NEW_ENUM_136", - "RESERVED_FOR_NEW_ENUM_137", - "RESERVED_FOR_NEW_ENUM_138", - "RESERVED_FOR_NEW_ENUM_139", - "RESERVED_FOR_NEW_ENUM_140", - "RESERVED_FOR_NEW_ENUM_141", - "RESERVED_FOR_NEW_ENUM_142", - "RESERVED_FOR_NEW_ENUM_143", - "RESERVED_FOR_NEW_ENUM_144", - "RESERVED_FOR_NEW_ENUM_145", - "RESERVED_FOR_NEW_ENUM_146", - "RESERVED_FOR_NEW_ENUM_147", - "RESERVED_FOR_NEW_ENUM_LARGE_PLEASE_ASK_ORBIT_97", - "RESERVED_FOR_NEW_ENUM_LARGE_PLEASE_ASK_ORBIT_98", - "RESERVED_FOR_NEW_ENUM_LARGE_PLEASE_ASK_ORBIT_99", - "RESERVED_FOR_NEW_ENUM_LARGE_PLEASE_ASK_ORBIT_100", - "RESERVED_FOR_NEW_ENUM_LARGE_PLEASE_ASK_ORBIT_101", - "RESERVED_FOR_NEW_ENUM_LARGE_PLEASE_ASK_ORBIT_102", - "RESERVED_FOR_NEW_ENUM_LARGE_PLEASE_ASK_ORBIT_103", - "RESERVED_FOR_NEW_ENUM_LARGE_PLEASE_ASK_ORBIT_104", - "RESERVED_FOR_NEW_ENUM_LARGE_PLEASE_ASK_ORBIT_105", - "RESERVED_FOR_NEW_ENUM_LARGE_PLEASE_ASK_ORBIT_106", - "RESERVED_FOR_NEW_ENUM_LARGE_PLEASE_ASK_ORBIT_107", - "RESERVED_FOR_NEW_ENUM_LARGE_PLEASE_ASK_ORBIT_108", - "RESERVED_FOR_NEW_ENUM_LARGE_PLEASE_ASK_ORBIT_109", - "RESERVED_FOR_NEW_ENUM_LARGE_PLEASE_ASK_ORBIT_110", - "RESERVED_FOR_NEW_ENUM_LARGE_PLEASE_ASK_ORBIT_111", - "RESERVED_FOR_NEW_ENUM_LARGE_PLEASE_ASK_ORBIT_112", - "RESERVED_FOR_NEW_ENUM_LARGE_PLEASE_ASK_ORBIT_113", - "RESERVED_FOR_NEW_ENUM_LARGE_PLEASE_ASK_ORBIT_114", - "RESERVED_FOR_NEW_ENUM_LARGE_PLEASE_ASK_ORBIT_115", - "RESERVED_FOR_NEW_ENUM_LARGE_PLEASE_ASK_ORBIT_116", - "RESERVED_FOR_NEW_ENUM_LARGE_PLEASE_ASK_ORBIT_117", - "RESERVED_FOR_NEW_ENUM_LARGE_PLEASE_ASK_ORBIT_118", - "RESERVED_FOR_NEW_ENUM_LARGE_PLEASE_ASK_ORBIT_119", - "RESERVED_FOR_NEW_ENUM_LARGE_PLEASE_ASK_ORBIT_120", - "RESERVED_FOR_NEW_ENUM_LARGE_PLEASE_ASK_ORBIT_121", - "RESERVED_FOR_NEW_ENUM_LARGE_PLEASE_ASK_ORBIT_122", - "RESERVED_FOR_NEW_ENUM_LARGE_PLEASE_ASK_ORBIT_123", - "RESERVED_FOR_NEW_ENUM_LARGE_PLEASE_ASK_ORBIT_124", - "RESERVED_FOR_NEW_ENUM_LARGE_PLEASE_ASK_ORBIT_125", - "RESERVED_FOR_NEW_ENUM_LARGE_PLEASE_ASK_ORBIT_126", - "RESERVED_FOR_NEW_ENUM_LARGE_PLEASE_ASK_ORBIT_127" - ], - "enumDescriptions": [ - "", - "", + "========== Enums for deleted intents ==========", "", "", "", @@ -85913,6 +85912,185 @@ "", "", "", + "" + ], + "type": "string" + }, + "type": "array" + }, + "scores": { + "description": "The intent scores, scaled to integers between 0 and 100 for compactness.", + "items": { + "format": "int32", + "type": "integer" + }, + "type": "array" + }, + "version": { + "description": "Version 0: Presence of an intent label in the 'intents' field represents our best-effort classification. The 'scores' field is not meaningful. Version 1: Values in the 'scores' field represent the estimated precision of the classifier for a threshold at that score.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "QualityOrbitAsteroidBeltImageIntentScores": { + "id": "QualityOrbitAsteroidBeltImageIntentScores", + "properties": { + "intents": { + "description": "The unique identifier for an Asteroid Belt document intent is being reused here", + "items": { + "enum": [ + "NONE", + "TUTORIAL", + "MAP", + "TRANSLATE", + "LISTEN", + "PROMOTION", + "GIF", + "REGISTER", + "EVENT_LISTING", + "RANKING", + "DISCOGRAPHY", + "DIRECTIONS", + "NEWS", + "SOCIAL_MEDIA", + "FAN_FICTION", + "RECIPES", + "HOURS_OF_OPERATION", + "DEFINITION", + "REAL_ESTATE_LISTING", + "PREVIEW", + "PURCHASE", + "MENU", + "UNBOXING", + "NUTRITION_FACTS", + "TRAVEL_GUIDE", + "SPECS", + "CALCULATOR", + "DOWNLOAD", + "SCORES", + "QUOTES", + "SHOWTIMES", + "CATALOG", + "CALENDAR", + "LOCATION_FINDER", + "RENT", + "STUDY_GUIDE", + "REVIEW", + "SHEET_MUSIC", + "LOGIN", + "TRIVIA", + "CONTACT_PAGE", + "RESERVATION", + "CUSTOMER_SUPPORT", + "INTERVIEW", + "COUPON", + "FLIGHT_TRACKER", + "COMPANY_FINANCIALS", + "FORUM", + "THESAURUS", + "MANUAL", + "JOB_POSTING", + "LYRICS", + "SYMPTOMS", + "REPAIR", + "BUYING_GUIDE", + "PRODUCT_EDITORIAL_REVIEW", + "SHOPPING_MERCHANT_PRODUCT", + "SHOPPING_REVIEW_OR_BUYING_GUIDE", + "PRODUCT_REVIEW", + "PRODUCT_COMPARISON", + "PRODUCT_BUYING_GUIDE", + "SHOPAHOLIC", + "GOOGLE_SCREENSHOT", + "MUGSHOT", + "CRIME", + "SHOPPING_TOPN", + "AUTHENTIC", + "RESERVED_FOR_NEW_ENUM_128", + "RESERVED_FOR_NEW_ENUM_129", + "RESERVED_FOR_NEW_ENUM_130", + "RESERVED_FOR_NEW_ENUM_131", + "RESERVED_FOR_NEW_ENUM_132", + "RESERVED_FOR_NEW_ENUM_133", + "RESERVED_FOR_NEW_ENUM_134", + "RESERVED_FOR_NEW_ENUM_135", + "RESERVED_FOR_NEW_ENUM_136", + "RESERVED_FOR_NEW_ENUM_137", + "RESERVED_FOR_NEW_ENUM_138", + "RESERVED_FOR_NEW_ENUM_139", + "RESERVED_FOR_NEW_ENUM_140", + "RESERVED_FOR_NEW_ENUM_141", + "RESERVED_FOR_NEW_ENUM_142", + "RESERVED_FOR_NEW_ENUM_143", + "RESERVED_FOR_NEW_ENUM_144", + "RESERVED_FOR_NEW_ENUM_145", + "RESERVED_FOR_NEW_ENUM_146", + "RESERVED_FOR_NEW_ENUM_147", + "RESERVED_FOR_NEW_ENUM_LARGE_PLEASE_ASK_ORBIT_98", + "RESERVED_FOR_NEW_ENUM_LARGE_PLEASE_ASK_ORBIT_99", + "RESERVED_FOR_NEW_ENUM_LARGE_PLEASE_ASK_ORBIT_100", + "RESERVED_FOR_NEW_ENUM_LARGE_PLEASE_ASK_ORBIT_101", + "RESERVED_FOR_NEW_ENUM_LARGE_PLEASE_ASK_ORBIT_102", + "RESERVED_FOR_NEW_ENUM_LARGE_PLEASE_ASK_ORBIT_103", + "RESERVED_FOR_NEW_ENUM_LARGE_PLEASE_ASK_ORBIT_104", + "RESERVED_FOR_NEW_ENUM_LARGE_PLEASE_ASK_ORBIT_105", + "RESERVED_FOR_NEW_ENUM_LARGE_PLEASE_ASK_ORBIT_106", + "RESERVED_FOR_NEW_ENUM_LARGE_PLEASE_ASK_ORBIT_107", + "RESERVED_FOR_NEW_ENUM_LARGE_PLEASE_ASK_ORBIT_108", + "RESERVED_FOR_NEW_ENUM_LARGE_PLEASE_ASK_ORBIT_109", + "RESERVED_FOR_NEW_ENUM_LARGE_PLEASE_ASK_ORBIT_110", + "RESERVED_FOR_NEW_ENUM_LARGE_PLEASE_ASK_ORBIT_111", + "RESERVED_FOR_NEW_ENUM_LARGE_PLEASE_ASK_ORBIT_112", + "RESERVED_FOR_NEW_ENUM_LARGE_PLEASE_ASK_ORBIT_113", + "RESERVED_FOR_NEW_ENUM_LARGE_PLEASE_ASK_ORBIT_114", + "RESERVED_FOR_NEW_ENUM_LARGE_PLEASE_ASK_ORBIT_115", + "RESERVED_FOR_NEW_ENUM_LARGE_PLEASE_ASK_ORBIT_116", + "RESERVED_FOR_NEW_ENUM_LARGE_PLEASE_ASK_ORBIT_117", + "RESERVED_FOR_NEW_ENUM_LARGE_PLEASE_ASK_ORBIT_118", + "RESERVED_FOR_NEW_ENUM_LARGE_PLEASE_ASK_ORBIT_119", + "RESERVED_FOR_NEW_ENUM_LARGE_PLEASE_ASK_ORBIT_120", + "RESERVED_FOR_NEW_ENUM_LARGE_PLEASE_ASK_ORBIT_121", + "RESERVED_FOR_NEW_ENUM_LARGE_PLEASE_ASK_ORBIT_122", + "RESERVED_FOR_NEW_ENUM_LARGE_PLEASE_ASK_ORBIT_123", + "RESERVED_FOR_NEW_ENUM_LARGE_PLEASE_ASK_ORBIT_124", + "RESERVED_FOR_NEW_ENUM_LARGE_PLEASE_ASK_ORBIT_125", + "RESERVED_FOR_NEW_ENUM_LARGE_PLEASE_ASK_ORBIT_126", + "RESERVED_FOR_NEW_ENUM_LARGE_PLEASE_ASK_ORBIT_127", + "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_2", + "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_5", + "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_8", + "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_10", + "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_17", + "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_18", + "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_21", + "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_23", + "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_24", + "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_28", + "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_29", + "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_31", + "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_34", + "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_36", + "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_38", + "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_39", + "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_40", + "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_46", + "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_50", + "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_52", + "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_54", + "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_56", + "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_57", + "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_59", + "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_60", + "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_63", + "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_67", + "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_71", + "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_75", + "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_78", + "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_81" + ], + "enumDescriptions": [ "", "", "", @@ -85979,6 +86157,7 @@ "Image intent representing whether there is a mugshot in the image (or if the image is itself a mugshot).", "Document intent representing whether a page is crime-related (go/crime-demotion-in-image-search-dd)", "Document intent representing whether a page is recommending best shopping products fulfilling certain application (e.g. \"best laptops for students\"). See go/shopping_topn_orbit.", + "AuthenticityScore for document. see go/astar-dd.", "========== Enums for new intents ========== Instructions: When adding a new intent, use the reserved enum number from the start of this list, and add a new reserved enum number to the end for the next person. There is a unit test that checks there are at least 20 reserved enums. See go/new-intentkeyenum for details.", "", "", @@ -86029,6 +86208,36 @@ "", "", "", + "========== Enums for deleted intents ==========", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", "" ], "type": "string" @@ -87264,7 +87473,8 @@ "CONTEXT_AWARE_SPEECH_RECOGNITION_REWRITE", "MAST", "FUZZY_MATCHER_REWRITE", - "SHOPPING_PREFERENCES_REWRITE" + "SHOPPING_PREFERENCES_REWRITE", + "MAGI_CONTEXT_ENGINE_REWRITE" ], "enumDescriptions": [ "", @@ -87282,7 +87492,8 @@ "", "go/mast-query", "go/afm", - "Rewrite with user explicit shopping preferences." + "Rewrite with user explicit shopping preferences.", + "Rewrite with context from chat conversation with Magi." ], "type": "string" } @@ -89245,12 +89456,14 @@ "TYPE_UNSPECIFIED", "QUERY_TERM_MATCH", "RADISH", - "BRAIN" + "BRAIN", + "QUOTED_TERM" ], "enumDescriptions": [ "", "", "", + "", "" ], "type": "string" @@ -89423,16 +89636,6 @@ }, "type": "object" }, - "QualityTimebasedOldnessInfo": { - "id": "QualityTimebasedOldnessInfo", - "properties": { - "isOldPage": { - "description": "Set to true if this page is considered old.", - "type": "boolean" - } - }, - "type": "object" - }, "QualityTimebasedPageType": { "id": "QualityTimebasedPageType", "properties": { @@ -93258,7 +93461,8 @@ "TEMPERATURE", "THEME", "TVM_ATTRIBUTE", - "WEIGHT" + "WEIGHT", + "EXCLUSION" ], "enumDescriptions": [ "", @@ -93312,6 +93516,7 @@ "", "", "", + "", "End of facets. This line marks where to generate new values for facets." ], "type": "string" @@ -93433,6 +93638,7 @@ "SUPERLATIVE", "FACET_AUDIENCE", "FACET_PURPOSE", + "FACET_EXCLUSION", "FACET_SETTING_BY_LOCATION", "FACET_DECORATIVE_PATTERN", "FACET_ELECTRONIC_DEVICE_CONNECTIVITY", @@ -93528,7 +93734,7 @@ "Masculine Honorific markers.", "Feminine Honorific markers.", "Non-specific Honorifc markers.", - "", + "Superlatives", "", "Facets.", "", @@ -93575,6 +93781,7 @@ "", "", "", + "", "End of facets. This line marks where to generate new values for facets." ], "type": "string" @@ -95766,9 +95973,6 @@ "$ref": "RepositoryWebrefPreprocessingUrlMatchingMetadata", "description": "Metadata related to why this doc was matched to its owning entity." }, - "obsoleteAnchorsWithoutInterwiki": { - "$ref": "RepositoryWebrefSimplifiedAnchors" - }, "refconDocumentMetadata": { "$ref": "RepositoryWebrefRefconRefconDocumentMetadata", "description": "Additional document metadata needed by Refcon." @@ -99083,6 +99287,419 @@ }, "type": "object" }, + "S3AudioLanguageS3AudioLanguage": { + "description": "S3 based Audio language information about a Watch Page.", + "id": "S3AudioLanguageS3AudioLanguage", + "properties": { + "language": { + "description": "Audio language of video classified by Automatic Language Identification. It corresponds to the langid_result in S3LangIdSignals.", + "enum": [ + "ENGLISH", + "DANISH", + "DUTCH", + "FINNISH", + "FRENCH", + "GERMAN", + "HEBREW", + "ITALIAN", + "JAPANESE", + "KOREAN", + "NORWEGIAN", + "POLISH", + "PORTUGUESE", + "RUSSIAN", + "SPANISH", + "SWEDISH", + "CHINESE", + "CZECH", + "GREEK", + "ICELANDIC", + "LATVIAN", + "LITHUANIAN", + "ROMANIAN", + "HUNGARIAN", + "ESTONIAN", + "TG_UNKNOWN_LANGUAGE", + "UNKNOWN_LANGUAGE", + "BULGARIAN", + "CROATIAN", + "SERBIAN", + "IRISH", + "GALICIAN", + "TAGALOG", + "TURKISH", + "UKRAINIAN", + "HINDI", + "MACEDONIAN", + "BENGALI", + "INDONESIAN", + "LATIN", + "MALAY", + "MALAYALAM", + "WELSH", + "NEPALI", + "TELUGU", + "ALBANIAN", + "TAMIL", + "BELARUSIAN", + "JAVANESE", + "OCCITAN", + "URDU", + "BIHARI", + "GUJARATI", + "THAI", + "ARABIC", + "CATALAN", + "ESPERANTO", + "BASQUE", + "INTERLINGUA", + "KANNADA", + "PUNJABI", + "SCOTS_GAELIC", + "SWAHILI", + "SLOVENIAN", + "MARATHI", + "MALTESE", + "VIETNAMESE", + "FRISIAN", + "SLOVAK", + "CHINESE_T", + "FAROESE", + "SUNDANESE", + "UZBEK", + "AMHARIC", + "AZERBAIJANI", + "GEORGIAN", + "TIGRINYA", + "PERSIAN", + "BOSNIAN", + "SINHALESE", + "NORWEGIAN_N", + "PORTUGUESE_P", + "PORTUGUESE_B", + "XHOSA", + "ZULU", + "GUARANI", + "SESOTHO", + "TURKMEN", + "KYRGYZ", + "BRETON", + "TWI", + "YIDDISH", + "SERBO_CROATIAN", + "SOMALI", + "UIGHUR", + "KURDISH", + "MONGOLIAN", + "ARMENIAN", + "LAOTHIAN", + "SINDHI", + "RHAETO_ROMANCE", + "AFRIKAANS", + "LUXEMBOURGISH", + "BURMESE", + "KHMER", + "TIBETAN", + "DHIVEHI", + "CHEROKEE", + "SYRIAC", + "LIMBU", + "ORIYA", + "ASSAMESE", + "CORSICAN", + "INTERLINGUE", + "KAZAKH", + "LINGALA", + "MOLDAVIAN", + "PASHTO", + "QUECHUA", + "SHONA", + "TAJIK", + "TATAR", + "TONGA", + "YORUBA", + "CREOLES_AND_PIDGINS_ENGLISH_BASED", + "CREOLES_AND_PIDGINS_FRENCH_BASED", + "CREOLES_AND_PIDGINS_PORTUGUESE_BASED", + "CREOLES_AND_PIDGINS_OTHER", + "MAORI", + "WOLOF", + "ABKHAZIAN", + "AFAR", + "AYMARA", + "BASHKIR", + "BISLAMA", + "DZONGKHA", + "FIJIAN", + "GREENLANDIC", + "HAUSA", + "HAITIAN_CREOLE", + "INUPIAK", + "INUKTITUT", + "KASHMIRI", + "KINYARWANDA", + "MALAGASY", + "NAURU", + "OROMO", + "RUNDI", + "SAMOAN", + "SANGO", + "SANSKRIT", + "SISWANT", + "TSONGA", + "TSWANA", + "VOLAPUK", + "ZHUANG", + "KHASI", + "SCOTS", + "GANDA", + "MANX", + "MONTENEGRIN", + "AKAN", + "IGBO", + "MAURITIAN_CREOLE", + "HAWAIIAN", + "CEBUANO", + "EWE", + "GA", + "HMONG", + "KRIO", + "LOZI", + "LUBA_LULUA", + "LUO_KENYA_AND_TANZANIA", + "NEWARI", + "NYANJA", + "OSSETIAN", + "PAMPANGA", + "PEDI", + "RAJASTHANI", + "SESELWA_CREOLE_FRENCH", + "TUMBUKA", + "VENDA", + "WARAY_PHILIPPINES", + "NUM_LANGUAGES" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "\"Norwegian\" = \"no\" normally implies Bokmål (\"nb\"). See also NORWEGIAN_N. Consider using IsNorwegianLanguage().", + "", + "WARNING: \"Portuguese\" in the enum Language implies the Iberian variant, while Google and industry standard practice is for \"pt\" to imply Brazilian, for the much larger population. The old LanguageCode() function returns \"pt\" for legacy reasons. The III LanguageEnumLanguageCodeConverter converts it to \"pt-PT\" to preserve the semantics. Converting between this legacy enum and industry-standard language tags cannot preserve the distinction between PORTUGUESE and PORTUGUESE_P. Relying on it is a bug. Consider using IsPortugueseLanguage().", + "", + "", + "", + "\"Chinese\" normally implies simplified Han characters (\"zh-Hans\"). See also CHINESE_T. Consider using IsChineseLanguage().", + "", + "", + "", + "", + "", + "Avoid making a distinction between ROMANIAN and MOLDAVIAN. Consider using IsRomanianLanguage().", + "", + "", + "", + "", + "", + "", + "Serbian is commonly written in two scripts. The default is Cyrillic (\"sr\" = \"sr-Cyrl\"). It is also often written with Latin letters (\"sr-Latn\"). This enum does not convey that distinction.", + "", + "", + "TAGALOG is used to mean both Tagalog (tl) and Filipino (fil). These are nearly the same; Filipino is the official language, and \"fil\" is normally used for UI settings etc. The old LanguageCode() function returns \"tl\".", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "\"Bihari\" is not a language: There are several different languages spoken in and around the Indian state of Bihar. This is like saying \"Swiss\" to mean German+French+Italian+Romansh.", + "", + "", + "", + "", + "", + "", + "UI only.", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "Chinese written in traditional Han characters (\"zh-Hant\"). See also CHINESE. Consider using IsChineseLanguage().", + "", + "", + "", + "", + "", + "", + "UI only.", + "", + "UI only. LangId language: CROATIAN (28)", + "", + "Norwegian Nynorsk (\"nn\"). See also NORWEGIAN. Consider using IsNorwegianLanguage(). UI only. LangId language: NORWEGIAN (10)", + "Portuguese in Portugal (\"pt-PT\"). See the WARNING at PORTUGUESE. Avoid a distinction between PORTUGUESE and PORTUGUESE_P. Relying on it is a bug. Consider using IsPortugueseLanguage(). UI only. LangId language: PORTUGUESE (12)", + "Portuguese in Brazil (\"pt-BR\"). Consider using IsPortugueseLanguage(). UI only. LangId language: PORTUGUESE (12)", + "UI only.", + "UI only.", + "UI only.", + "UI only.", + "UI only.", + "", + "", + "UI only.", + "UI only.", + "UI only. LangId language: SERBIAN (29)", + "UI only.", + "", + "This has been documented as \"Kurmanji (kmr) + Sorani (ckb) + Kurdish (ku)\". There are several kinds of Kurdish languages. \"ku\" normally implies Northern Kurdish = Kurmanji (kmr) which is normally written in Latin letters. \"ckb\" is Central Kurdish (largely in Iraq) which is normally written in Arabic letters (thus right-to-left).", + "", + "", + "", + "", + "UI only.", + "", + "", + "", + "", + "", + "sometimes spelled Divehi; lang of Maldives", + "", + "", + "UI only.", + "", + "UI only.", + "", + "UI only.", + "", + "UI only.", + "\"Moldavian\" is the same language as Romanian. In language tags, \"ro-MD\" can be used but is not normally necessary. Avoid making a distinction between ROMANIAN and MOLDAVIAN. Consider using IsRomanianLanguage(). UI only. LangId language: ROMANIAN (22)", + "", + "", + "UI only.", + "", + "", + "", + "", + "This is a vague group of languages, not one language. UI only.", + "This is a vague group of languages, not one language. UI only.", + "This is a vague group of languages, not one language. UI only.", + "This is a vague group of languages, not one language. UI only.", + "", + "UI only.", + "UI only.", + "UI only.", + "UI only.", + "UI only.", + "UI only.", + "UI only.", + "UI only.", + "UI only.", + "UI only.", + "", + "UI only.", + "", + "UI only.", + "UI only.", + "UI only.", + "UI only.", + "UI only.", + "UI only.", + "UI only.", + "UI only.", + "", + "UI only.", + "UI only.", + "UI only.", + "UI only.", + "UI only.", + "UI only.", + "UI only.", + "UI only. More commonly called Luganda.", + "UI only.", + "UI only. LangId language: SERBIAN (29)", + "UI only.", + "UI only.", + "UI only.", + "UI only.", + "Translate only.", + "CLD only.", + "CLD only.", + "Translate only.", + "CLD only.", + "CLD only.", + "CLD only.", + "CLD only.", + "Translate only.", + "CLD only.", + "Translate only.", + "Translate only.", + "CLD only.", + "Translate only.", + "CLD only.", + "CLD only.", + "CLD only.", + "Translate only.", + "Always keep this at the end. It is not a" + ], + "type": "string" + }, + "languageConfidence": { + "description": "Confidence interval of the recognized language.", + "enum": [ + "UNKNOWN_CONFIDENCE", + "NOT_CONFIDENT", + "CONFIDENT", + "HIGHLY_CONFIDENT" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + }, + "speechClass": { + "description": "Type of detected speech.", + "enum": [ + "UNKNOWN", + "NO_SPEECH", + "HAS_SPEECH_FOR_ASR" + ], + "enumDescriptions": [ + "Unspecified, or string label not recognized.", + "", + "Currently corresponds to simple speech" + ], + "type": "string" + } + }, + "type": "object" + }, "SafesearchInternalImageSignals": { "description": "A proto that stores SafeSearch internal signals that are not exported to clients.", "id": "SafesearchInternalImageSignals", @@ -101461,6 +102078,21 @@ "format": "uint64", "type": "string" }, + "inferredImageSource": { + "enum": [ + "INFERRED_IMAGE_SOURCE_UNKNOWN", + "INFERRED_IMAGE_SOURCE_WEB_INDEX", + "INFERRED_IMAGE_SOURCE_OVERLAY", + "INFERRED_IMAGE_SOURCE_SCARAB" + ], + "enumDescriptions": [ + "", + "Web Index images are extracted from WebIndex docjoins. It has a tendency to be less precise due to docjoin canonicalization combining data from different crawled webpages.", + "Each offer should have a dedicated docjoin which reduces the chances of mistakes, either when matching an offer with a web document or due to docjoin canonicalization. But image selection for overlay could be slightly different to the WEB_INDEX source, and overlay coverage could affect the source as well.", + "Scarab crawls HTML landing pages of the offers and extract images using three types of extractors: Crawzall, schema_dot_org, and open_graph. It extracts only image URLs (without image docid). Images crawled by scarab might not be WEB_INDEX or OVERLAY because scarab retrieves the data directly from the landing page and is not connected with index or overlays." + ], + "type": "string" + }, "inferredImageType": { "enum": [ "INFERRED_IMAGE_TYPE_UNKNOWN", @@ -101647,7 +102279,7 @@ "type": "string" }, "adsDensityInterstitialViolationStrength": { - "description": "Indicates if the page is violating mobile ads density interstitial policy and the voilation strength. See go/interstitials-for-ads and http://ariane/268642 for details. To save indexing space, we convert the double values in [0.0, 1.0] to intergers in range [0, 1000] by using floor(value * 1000).", + "description": "Indicates if the page is violating mobile ads density interstitial policy and the violation strength. See go/interstitials-for-ads and http://ariane/268642 for details. To save indexing space, we convert the double values in [0.0, 1.0] to intergers in range [0, 1000] by using floor(value * 1000).", "format": "int32", "type": "integer" }, @@ -102676,9 +103308,14 @@ "type": "object" }, "SocialGraphApiProtoImageReference": { - "description": "A reference to a photo in either Photos Backend or SGI storage. This message should be treated as an opaque blob to avoid a dependency on a specific storage backend.", + "description": "A reference to a photo in either Photos Backend or SGI storage. This message should be treated as an opaque blob to avoid a dependency on a specific storage backend. This version of ImageReference is visible outside of SGBE. Do not add fields that should not be exposed outside of Profile Service and Image Service.", "id": "SocialGraphApiProtoImageReference", "properties": { + "contentVersion": { + "description": "Identifies the most recent version of this photo. Use this as a FIFE param (ie -iv12) to prevent reads of a stale version.", + "format": "int64", + "type": "string" + }, "mediaId": { "description": "Unique identifier for the photo. For now, this will always be a Photos Backend media key.", "type": "string" @@ -104340,9 +104977,16 @@ "type": "object" }, "StorageGraphBfgLivegraphProvenanceMetadata": { - "description": "Metadata on source assertions that isn't part of the user-visible Triple payload, and that doesn't really represent data provenance, but that's used to affect the way Livegraph and possibly other horizontal KG infra systems *process* the triple. Read: fields below really shouldn't be part of the cross-system Triple proto at all. But because Triple is used both as an internal and an external KG API, we at least want to \"hide\" those fields that ought to be purely part of the internal source \u003c-\u003e LG contract. Next id: 5", + "description": "Metadata on source assertions that isn't part of the user-visible Triple payload, and that doesn't really represent data provenance, but that's used to affect the way Livegraph and possibly other horizontal KG infra systems *process* the triple. Read: fields below really shouldn't be part of the cross-system Triple proto at all. But because Triple is used both as an internal and an external KG API, we at least want to \"hide\" those fields that ought to be purely part of the internal source \u003c-\u003e LG contract. Next id: 6", "id": "StorageGraphBfgLivegraphProvenanceMetadata", "properties": { + "directWriteRecordIds": { + "description": "If one triple is directly-written after recon by LG without going through Composer, we add the record id it's from. Otherwise, it's empty. Note: 1) LG will dedup record ids before updating it. So this field shouldn't see duplicated record ids. 2) This is used internally by LG only. So if set by clients, they will be dropped by LG.", + "items": { + "type": "string" + }, + "type": "array" + }, "lgInternalWriterId": { "description": "Identifies the LG internal writers that asserted the triple. This is the same as 'origin_id' in LG. This will only be populated by the LG writers to FactStore", "format": "uint64", @@ -107932,7 +108576,6 @@ "QUERY_HAS_SELECTED_BOOTS_CHIP", "QUERY_HAS_ONLY_UNSELECTED_BOOTS_CHIPS", "SPONSORED_ADS_CLUSTER", - "BOOKS_QUERY_HAS_LANGUAGE_INTENT", "IRON_THRONE_QUERY", "GUIDED_DISCOVERY", "BOOKS_AUTHOR_QUERY", @@ -107946,25 +108589,13 @@ "ENTERTAINMENT_CLUSTER_CONTAINER_SEARCH_ENABLED", "SEARCH_NAV_SPONSORED_ADS_CLUSTER", "TOP_CHART_RANKING_INFO", - "CLIENT_TEST_CODE_VERIFICATION", "APPS_PUB_QUERY", "ABUSIVE_QUERY_SQUASHING_EVENT", - "HOME_SPONSORED_ADS_RE_ENGAGEMENT_CLUSTER_EVENT_LEVEL", - "SEARCH_LIVE_OP_QUERY_EVENT", - "BOOTS_ES_PT", - "BOOTS_URUC", - "BOOTS_URUC_PER_INSTALL", - "GEARHEAD_VANAGON_ESCAPE_HATCH_CANDIDATE", - "BOOTS_JP_KR_V2", - "BOOTS_FILTERS_AT_END", "APP_SUPPORTS_INSTANT_LAUNCH", - "SEARCH_MDP_LIVE_OP_QUERY_EVENT", - "BOOTS_I18N", "LOW_RESULT_CLUSTER", "PERSONALIZED_CLUSTER", "GAME_SEEKING_PERSONALIZED_CLUSTER_AT_EVENT_LEVEL", "VX_CLUSTER", - "LOW_RESULT_LATENCY", "MOVIES_GROOT_20", "MOVIES_GROOT_10", "MOVIES_GROOT_5", @@ -107974,53 +108605,25 @@ "MOVIES_MDP_SEARCH", "MOVIES_ORGANIC_SEARCH", "FULL_PAGE_REPLACEMENT", - "ENTERTAINMENT_CLUSTER_TRIGGERING_UNDER_FPR", - "ENTERTAINMENT_CLUSTER_TRIGGERING_WHEN_FPR_ENABLED", - "ENTERTAINMENT_CLUSTER_TRIGGERING_WHEN_FPR_TRIGGERED", - "BOOTS_I18N_V2", - "BOOTS_I18N_V2_VS_V1", "AUDIOBOOKS_KIDS_CATEGORICAL_SEARCH", "ZERO_RESULT", "BOOTS_I18N_100_THRESH", - "BOOTS_I18N_150_THRESH", "DISPLAY_ADS_RESPONSE_RECEIVED_EVENT_LEVEL", "BEST_SELLER_CART_TAG_FOR_MENDEL_AT_EVENT_LEVEL", "ABUSIVE_QUERY", - "PARTNER_VIOLENCE_TRIGGERING", - "BOOTS_V3", "HOME_SPONSORED_ADS_CLUSTER_NO_ADS", "BOOKS_XSELL_ELIGIBLE_APP", "NAV_EXT_EVENT", - "PGS_TEST_CODE_LOGGING_VERIFICATION", - "ADS_CUSTOM_DETAILS_PAGE_ASSETS_PRESENT_EVENT_LEVEL", "ADS_CUSTOM_DETAILS_PAGE_ASSETS_SERVED_EVENT_LEVEL", "BOOKS_DETAILS_PAGE_KEYWORD_CLUSTER_EVENT_LEVEL", - "DETAILS_PAGE_LIVE_OPS", "BOOKS_DETAILS_PAGE_SIMILAR_CLUSTER", "BOOKS_DETAILS_PAGE_POST_ACQUIRE_SIMILAR_CLUSTER", - "CDP_PROMOTIONAL_DESCRIPTION_LOCALE_MISMATCH", - "CDP_PROMOTIONAL_DESCRIPTION_LOCALE_MATCH", - "APPS_ST_PRICE_INTENT", - "APPS_ST_AUDIENCE_INTENT", "APPS_PERSONALIZED_TOPIC_QUERY_EVENT_LEVEL", "APPS_PERSONALIZED_TG_QUERY_EVENT_LEVEL", "APPS_PERSONALIZED_ALL_GAME_QUERIES_EVENT_LEVEL", "APPS_PERSONALIZED_CATEGORICAL_GAME_SEEKING_QUERIES_EVENT_LEVEL", "APPS_PERSONALIZED_CATEGORICAL_NON_TG_QUERIES_EVENT_LEVEL", - "APPS_PERSONALIZED_VERTICAL_RFY_CLUSTER_EVENT_LEVEL", - "APPS_PERSONALIZED_NAVIGATIONAL_EVENT_LEVEL", - "APPS_PERSONALIZED_NAVIGATIONAL_GAME_EVENT_LEVEL", - "APPS_PERSONALIZED_MDP_EVENT_LEVEL", - "APPS_PERSONALIZED_MDP_GAME_EVENT_LEVEL", - "CDP_PROMOTIONAL_IMAGE_LOCALE_MATCH", - "CDP_PROMOTIONAL_IMAGE_LOCALE_MISMATCH", - "CDP_SCREENSHOT_LOCALE_MISMATCH", - "CDP_SCREENSHOT_LOCALE_MATCH", - "CDP_PROMOTIONAL_VIDEO_LOCALE_MISMATCH", - "CDP_PROMOTIONAL_VIDEO_LOCALE_MATCH", "BOOKS_ELIGIBLE_FOR_BUNDLE_EVENT_LEVEL", - "BOOKS_QUERY_ELIGIBLE_FOR_APPS_CLUSTER", - "TEST_CODE_BUILD_VERIFICATION", "GAMES_PROFILE_CREATION_EVENT", "MOVIES_QUERY_ELIGIBLE_FOR_APPS_CLUSTER", "MOVIES_WALLE_SEARCH", @@ -108029,9 +108632,6 @@ "BUNDLE_SERIES_DISCOUNT", "APPS_SEARCH_TOPIC_RFY_CLUSTER_AT_EVENT_LEVEL", "APPS_SEARCH_MINI_TOP_CHARTS_CLUSTER_AT_EVENT_LEVEL", - "PLAY_STORE_SHOW_CART_EVENT_LEVEL", - "HAS_BOOK_FREQUENTLY_BOUGHT_TOGETHER_BUNDLE_EVENT_LEVEL", - "HAS_BOOK_SERIES_BUNDLE_EVENT_LEVEL", "APPS_SEARCH_TOPIC_RFY_CLUSTER_COUNTERFACTUAL", "APPS_SEARCH_MINI_TOP_CHARTS_CLUSTER_COUNTERFACTUAL", "GEARHEAD_TOOLTIP_ASSISTANT_FIRST_RUN", @@ -108042,17 +108642,9 @@ "GEARHEAD_TOOLTIP_NOTIFICATION_FIRST_RUN", "GEARHEAD_TOOLTIP_NOTIFICATION_NEW", "GEARHEAD_TOOLTIP_NOTIFICATION_NTH_NEW", - "BUNDLE_DISCOUNT_SHOWN_ON_DETAIL_PAGE", "KIDS_AGE_SCORE_BONUS_AT_EVENT_LEVEL", "KIDS_QUALITY_TAG_SCORE_BONUS_AT_EVENT_LEVEL", - "TEST_FOR_LEVELS_FLAG_AT_EVENT_LEVEL", "LB_TARGETED_AT_EVENT_LEVEL", - "LB_ABOVE_AT_EVENT_LEVEL", - "LB_BELOW_AT_EVENT_LEVEL", - "GEARHEAD_TOOLTIP_CONTEXTUAL_ASSISTANT_DIALER_CONTACT", - "LB_PAGINATED_AT_EVENT_LEVEL", - "RECS_USER_INTENT_HP_LOW_INTENT_EVENT_LEVEL", - "RECS_USER_INTENT_HP_HIGH_INTENT_EVENT_LEVEL", "LB_IMPRESSED_AT_EVENT_LEVEL", "GEARHEAD_INPUT_TOUCH_PRESENT", "GEARHEAD_INPUT_ROTARY_PRESENT", @@ -108061,65 +108653,41 @@ "GEARHEAD_INPUT_ROTARY_ABSENT", "GEARHEAD_INPUT_TOUCHPAD_ABSENT", "CANCEL_SUBSCRIPTION_CONFIRMATION_DIALOG_SHOWN_WHEN_ELIGIBLE_FOR_ENTITLEMENT_BENEFITS_EVENT_LEVEL_AT_EVENT_LEVEL", - "SMART_FOP_EVENT_LEVEL_AT_EVENT_LEVEL", "SMART_FOP_AT_EVENT_LEVEL", "VX_CLUSTER_IN_APPS_SERP_IMPRESSION", "KIDS_CONTENT_SEEKING_QUERY", "KIDS_CONTENT_SEEKING_QUERY_TREATMENT_APPLIED", - "VX_QREF_TRIGGERED_AT_EVENT_LEVEL_AT_EVENT_LEVEL", - "VX_NAVBOOST_SUPPRESSED_AT_EVENT_LEVEL_AT_EVENT_LEVEL", - "VX_QREF_TRIGGERED_AT_EVENT_LEVEL", - "VX_NAVBOOST_SUPPRESSED_AT_EVENT_LEVEL", "PREFERRED_FOP", "REDEEM_NOT_ENROLLED_TO_LOYALTY", "GEARHEAD_TOOLTIP_SETTINGS", - "GEARHEAD_TOOLTIP_CALENDAR", - "POST_RESPONSE_MDP_BUT_QCM_IS_UNKNOWN", - "POST_RESPONSE_MDP_BUT_QCM_IS_NAVEXT", - "POST_RESPONSE_MDP_BUT_QCM_IS_NAVIGATIONAL", - "POST_RESPONSE_MDP_BUT_QCM_IS_MULTINAV", - "POST_RESPONSE_MDP_BUT_QCM_IS_CATEGORITCAL", - "ONETREE_MDP_BUT_POST_RESPONSE_NOT_MDP", "SEARCH_MDP_TRIGGERED_EVENT_LEVEL", - "IN_APP_MESSAGING_APP_1", "DEVELOPER_PAGE_AT_EVENT_LEVEL", "BOOKS_FREE_FIXED_DURATION_RENTAL_EVENT_LEVEL", "BOOKS_FREE_FIXED_DATE_RENTAL_EVENT_LEVEL", "BOOKS_PRICE_DROP_EVENT_LEVEL", "TG_VALIDATED_CRISPR_TAG_AT_EVENT_LEVEL", - "HAS_PLAY_CONSOLE_CUSTOM_STORE_LISTING", "GEARHEAD_TOOLTIP_ASSISTANT_DIALER_FIRST_OPEN", "GEARHEAD_TOOLTIP_ASSISTANT_MEDIA_OPEN", "GEARHEAD_WIDESCREEN_DISPLAY", - "GEARHEAD_MULTI_DISPLAY", "GEARHEAD_TOOLTIP_ASSISTANT_PHONE_CALL_ENDED", "SERIES_BUNDLE_MULTI_TIER_DISCOUNT_EVENT_LEVEL", - "DIALER_ASSISTANT_CALL_ACTION_SHOWN", - "DIALER_ASSISTANT_CALL_ACTION_CLICKED", "GEARHEAD_TOOLTIP_FEEDBACK", - "GEARHEAD_TOOLTIP_ASSISTANT_THREE_RUNS", "GEARHEAD_TOOLTIP_ASSISTANT_MEDIA_REC_FIRST_RUN", "GEARHEAD_WORK_PROFILE_DETECTED", "GEARHEAD_WORK_PROFILE_DETECTED_AND_COMPATIBLE", "GEARHEAD_WORK_PROFILE_QUERYING_ALLOWED", "PLAY_ADS_REENGAGEMENT_COUNTERFACTUAL", - "PLAY_ADS_THIRD_LIST_VIEW_ADS_COUNTERFACTUAL", - "MISMATCH_BETWEEN_FINSKY_TARGETING_AND_SKELETON", "GEARHEAD_TOOLTIP_ASSISTANT_LAUNCHER_OPEN", "GEARHEAD_MULTIPLE_CALLABLE_PHONE_ACCOUNTS_DETECTED", "GEARHEAD_USER_HAS_SELECTED_OUTGOING_PHONE_ACCOUNT", "GEARHEAD_TOOLTIP_ASSISTANT_LONG_DRIVE_START", "GEARHEAD_TOOLTIP_DIALER_MULTI_SIM", "GEARHEAD_AUDIO_SERVICE_MIGRATION", - "GEARHEAD_MEDIA_APP_DOWNLOAD_LEAVE_BEHIND_NOTIFICATION", "GEARHEAD_TOOLTIP_ASSISTANT_MEDIA_REC_MEDIA_IDLE", - "GEARHEAD_USER_DEVICE_UNPLUGGED", "GEARHEAD_DO_NOT_DISTURB_CALLS_ENABLED", - "GEARHEAD_DEFAULT_MEDIA_APP_SET_FROM_MULTIPLE_OPTIONS", "REGIONAL_NAV_EXT_EVENT_LEVEL", "GEARHEAD_TOOLTIP_BUGREPORT", "GENERAL_QUERY_PAGINATION_EVENT_LEVEL", - "MULTINAV_PAGINATION_EVENT_LEVEL", "GEARHEAD_SESSION_ELIGIBLE_FOR_MEDIA_AUTOPLAY", "GEARHEAD_AUDIO_FLOW_CONTROL_PERMIT_UNAVAILABLE", "SHOULD_SEE_SEARCH_MEDIA_RESULT_CLUSTER", @@ -108134,37 +108702,26 @@ "NAV_TG_RELATED_QUERY_EVENT", "PROMOTABLE_APPS_EVENT", "PROMOTABLE_APPS_STRONG_CAT_EVENT", - "PROMOTABLE_APPS_CAT_EVENT", "INLINE_DETAILS_TQUALITY_CHECK_PASS", "INLINE_DETAILS_TQUALITY_CHECK_FAIL", "INLINE_DETAILS_IS_INLINE_URL", - "EXPANDER_NEXT_TO_METADATA_BAR", - "EXPANDER_NEXT_TO_PROMOTIONAL_TEXT", - "EXPANDABLE_CLUSTER_EXPANDED", - "EXPANDABLE_CLUSTER_COLLAPSED", - "CLUSTER_REQUEST_LATENCY_EVENT_LEVEL", "EDITORS_CHOICE_CLUSTER_SERP_EVENT_LEVEL", "BESTK_CLUSTER_SERP_EVENT_LEVEL", "LIVEOPS_CLUSTER_SERP_EVENT_LEVEL", "QUICKPICKS_CLUSTER_SERP_EVENT_LEVEL", "INLINE_DETAILS_AQUALITY_CHECK_PASS", "INLINE_DETAILS_AQUALITY_CHECK_FAIL", - "INLINE_DETAILS_IS_INLINE_URL_FRONTEND", - "INLINE_DETAILS_TQUALITY_CHECK_PASS_FRONTEND", - "INLINE_DETAILS_TQUALITY_CHECK_FAIL_FRONTEND", - "INLINE_DETAILS_AQUALITY_CHECK_PASS_FRONTEND", - "INLINE_DETAILS_AQUALITY_CHECK_FAIL_FRONTEND", - "INLINE_DETAILS_CALLER_AQUALITY_CHECK_PASS_FRONTEND", - "INLINE_DETAILS_CALLER_AQUALITY_CHECK_FAIL_FRONTEND", "FRESH_RESULTS_SEEKING_CURRENT_YEAR_EVENT_LEVEL", "FILTER_TQ_FAILURE_APP", "EDITORIAL_CONTENT_CLUSTER_FHR_SERP_EVENT_LEVEL", - "DETAILS_PAGE_TQUALITY_UNKNOWN_EVENT_LEVEL", - "DETAILS_PAGE_TQUALITY_FAILED_EVENT_LEVEL", - "DETAILS_PAGE_TQUALITY_PASSED_EVENT_LEVEL", - "DETAILS_PAGE_AQUALITY_UNKNOWN_EVENT_LEVEL", "DETAILS_PAGE_AQUALITY_FAILED_EVENT_LEVEL", "DETAILS_PAGE_AQUALITY_PASSED_EVENT_LEVEL", + "PGSS_DETAILS_PAGE_TQUALITY_UNKNOWN_EVENT_LEVEL", + "PGSS_DETAILS_PAGE_TQUALITY_FAILED_EVENT_LEVEL", + "PGSS_DETAILS_PAGE_TQUALITY_PASSED_EVENT_LEVEL", + "PGSS_DETAILS_PAGE_AQUALITY_UNKNOWN_EVENT_LEVEL", + "PGSS_DETAILS_PAGE_AQUALITY_FAILED_EVENT_LEVEL", + "PGSS_DETAILS_PAGE_AQUALITY_PASSED_EVENT_LEVEL", "INLINE_DETAILS_CALLER_AQUALITY_CHECK_PASS", "INLINE_DETAILS_CALLER_AQUALITY_CHECK_FAIL", "HSDP_AD_NETWORK_CALLER_TABLET_AQUALITY_CHECK_UNKNOWN", @@ -108180,6 +108737,9 @@ "TRUSTED_ENTITY_L2_L3_SEARCH_QUERY_EVENT", "EXPANDED_DEV_SUCCESS_CLUSTER_EVENT_LEVEL", "COLLAPSED_DEV_SUCCESS_CLUSTER_EVENT_LEVEL", + "TRIGGERED_DEV_SUCCESS_CLUSTER_EVENT_LEVEL", + "GAME_DEV_SUCCESS_CLUSTER_EVENT_LEVEL", + "APP_DEV_SUCCESS_CLUSTER_EVENT_LEVEL", "BROAD_INTENT_GAMES_TIMESPENT_EVENT_LEVEL", "PLAY_STORE_IAP_SALES_MINI_DETAILS_PAGE_EAP_PARTNER_APPS_EVENT_LEVEL", "GEARHEAD_ATTEMPT_USB_RECOVERY", @@ -108205,6 +108765,8 @@ "GEARHEAD_TOOLTIP_COOLWALK_RAIL_WIDGET", "INLINE_DETAILS_TQUALITY_CHECK_UNKNOWN", "INLINE_DETAILS_TQUALITY_CHECK_UNKNOWN_FRONTEND", + "SUPERROOT_PDS_SHORT_DESCRIPTION_EVENT_LEVEL", + "PGSS_SHORT_DESCRIPTION_DIFF_EVENT_LEVEL", "EVENT_LEVEL_TEST_CODE_LIMIT", "RESERVED_4", "RESERVED_5", @@ -108783,7 +109345,6 @@ "FIRST_PARTY_PROMOTION_LIVE_OP_SESSION_LEVEL", "CART_ABANDONMENT_SUBSCRIPTION_ONE_TIME_PASS_SESSION_LEVEL", "LEGOLAND_INSTANT_FOP_SCREEN_SESSION_LEVEL", - "LEGOLAND_INSTANT_FOP_SCREEN_WITH_PROMOTION_SESSION_LEVEL", "MY_REVIEWS_PAGE_VISIT_USER_LEVEL", "SERIES_BUNDLE_MULTI_TIER_DISCOUNT_SESSION_LEVEL", "DEVELOPER_PROMOTIONS_ELIGIBLE_SESSION_LEVEL", @@ -108984,7 +109545,6 @@ "FRESH_RESULTS_SEEKING_CURRENT_YEAR_SESSION_LEVEL", "FILTER_TQ_FAILURE_APP_SESSION_LEVEL", "EDITORIAL_CONTENT_CLUSTER_FHR_SERP_SESSION_LEVEL", - "CONNECTED_WITH_WIFI", "CONNECTED_WITH_DATA", "AUTOPLAY_VIDEOS_AT_ANY_TIME", "AUTOPLAY_VIDEOS_OVER_WIFI_ONLY", @@ -108997,6 +109557,12 @@ "DETAILS_PAGE_AQUALITY_UNKNOWN_SESSION_LEVEL", "DETAILS_PAGE_AQUALITY_FAILED_SESSION_LEVEL", "DETAILS_PAGE_AQUALITY_PASSED_SESSION_LEVEL", + "PGSS_DETAILS_PAGE_TQUALITY_UNKNOWN_SESSION_LEVEL", + "PGSS_DETAILS_PAGE_TQUALITY_FAILED_SESSION_LEVEL", + "PGSS_DETAILS_PAGE_TQUALITY_PASSED_SESSION_LEVEL", + "PGSS_DETAILS_PAGE_AQUALITY_UNKNOWN_SESSION_LEVEL", + "PGSS_DETAILS_PAGE_AQUALITY_FAILED_SESSION_LEVEL", + "PGSS_DETAILS_PAGE_AQUALITY_PASSED_SESSION_LEVEL", "QUERY_DEPENDENT_SNIPPET_SESSION_LEVEL", "FOP_STEERING_PROMOTION_INITIAL_BILLING_PROFILE_SESSION_LEVEL", "FOP_STEERING_PROMOTION_CART_ADD_FOP_SESSION_LEVEL", @@ -109121,6 +109687,9 @@ "TRUSTED_ENTITY_L2_L3_SEARCH_QUERY_SESSION", "EXPANDED_DEV_SUCCESS_CLUSTER_SESSION_LEVEL", "COLLAPSED_DEV_SUCCESS_CLUSTER_SESSION_LEVEL", + "TRIGGERED_DEV_SUCCESS_CLUSTER_SESSION_LEVEL", + "GAME_QUERY_DEV_SUCCESS_CLUSTER_SESSION_LEVEL", + "APP_QUERY_DEV_SUCCESS_CLUSTER_SESSION_LEVEL", "DOWNLOAD_COUNT_ELIGIBLE", "PLANOGRAM_MERCH_AMERICAS_GAMES_PAYPAL_SESSION_LEVEL", "BROAD_INTENT_GAMES_TIMESPENT_SESSION_LEVEL", @@ -109157,87 +109726,44 @@ "INLINE_DETAILS_TQUALITY_CHECK_UNKNOWN_SESSION_LEVEL", "INLINE_DETAILS_TQUALITY_CHECK_UNKNOWN_FRONTEND_SESSION_LEVEL", "APPS_LAUNCHER_CLUSTER_AT_SESSION_LEVEL", + "SUPERROOT_PDS_SHORT_DESCRIPTION_SESSION_LEVEL", + "PGSS_SHORT_DESCRIPTION_DIFF_SESSION_LEVEL", + "WEAR_AQ_SEARCH_PHONE_DEVICE_WITH_WEAR_FILTER", + "WEAR_AQ_SEARCH_WEAR_DEVICE", + "NAV_ADS_DUPLICATE_SERVED_SESSION_LEVEL", + "NAV_ADS_NON_DUPLICATE_SERVED_SESSION_LEVEL", + "NAV_ADS_NO_AD_SERVED_SESSION_LEVEL", "SESSION_LEVEL_TEST_CODE_LIMIT", "SHOULD_SEE_LIVE_OP_CLUSTER_USER_LEVEL", "CART_ABANDONMENT_USER_LEVEL", "PURCHASABLE_SUBSCRIPTIONS_IN_DETAILS_PAGE_USER_LEVEL", "CART_ABANDONMENT_SUB_DOLLAR_USER_LEVEL", - "CART_ABANDONMENT_V2_EXP1_USER_LEVEL", "IN_APP_PRODUCTS_IN_DETAILS_PAGE_USER_LEVEL", - "APPS_DETAILS_PAGE_PROMOTION_USER_LEVEL", "BOOKS_DETAILS_PAGE_PROMOTION_USER_LEVEL", - "CART_ABANDONMENT_BOOK_NEVER_USER_LEVEL", - "CART_ABANDONMENT_BOOK_VX_NEVER_USER_LEVEL", - "CART_ABANDONMENT_MOVIE_NEVER_USER_LEVEL", - "CART_ABANDONMENT_MOVIE_VX_NEVER_USER_LEVEL", - "QUICK_FIX_EXPIRED_CREDIT_CARD_USER_LEVEL", - "DETAILS_PAGE_PROMOTION_USER_LEVEL", "BURNSIE_ADD_FOP_PROMOTION_USER_LEVEL", - "CART_ABANDONMENT_HIGH_CART_USER_LEVEL", - "WELLNET_CASH_USER_LEVEL", - "BURNSIE_FOR_EXPIRED_CARDS_USER_LEVEL", - "APPS_DETAILS_PAGE_EXISTING_PROMOTION_USER_LEVEL", "BOOKS_DETAILS_PAGE_EXISTING_PROMOTION_USER_LEVEL", "SWOOP_CAMPAIGN_10P_OFF_USER_LEVEL", "SWOOP_CAMPAIGN_25P_OFF_USER_LEVEL", "SWOOP_CAMPAIGN_50P_OFF_USER_LEVEL", "SWOOP_CAMPAIGN_75P_OFF_USER_LEVEL", - "SWOOP_CAMPAIGN_90P_OFF_USER_LEVEL", "PURCHASABLE_SUBSCRIPTIONS_IN_DETAILS_PAGE_WAVE_2_USER_LEVEL", - "SUBSCRIBE_AND_INSTALL_AVAILABLE_CLIENT_USER_LEVEL", "CART_ABANDONMENT_ELIGIBLE_USER_LEVEL", - "ACQUIRE_REQUEST_EXISTING_SESSION_WITHOUT_ACTION_TOKENS", "APPS_DETAILS_PAGE_PROMOTION_EXP_2_USER_LEVEL", "APPS_DETAILS_PAGE_EXISTING_PROMOTION_EXP_2_USER_LEVEL", "APPS_DETAILS_PAGE_PROMOTION_EXP_2_IN_APP_ITEM_NEVERS_USER_LEVEL", - "APPS_DETAILS_PAGE_PROMOTION_EXP_2_IN_APP_ITEM_BUYERS_USER_LEVEL", - "APPS_DETAILS_PAGE_PROMOTION_EXP_2_PREMIUM_APP_NEVERS_USER_LEVEL", - "APPS_DETAILS_PAGE_PROMOTION_EXP_3_PREMIUM_APP_NEVERS_USER_LEVEL", - "APPS_DETAILS_PAGE_PROMOTION_EXP_3_IN_APP_ITEM_BUYERS_USER_LEVEL", "APPS_PERSONALIZED_TOPIC_QUERY_USER_LEVEL", "APPS_PERSONALIZED_TG_QUERY_USER_LEVEL", "APPS_PERSONALIZED_ALL_GAME_QUERIES_USER_LEVEL", "APPS_PERSONALIZED_CATEGORICAL_GAME_SEEKING_QUERIES_USER_LEVEL", "APPS_PERSONALIZED_CATEGORICAL_NON_TG_QUERIES_USER_LEVEL", - "APPS_PERSONALIZED_VERTICAL_RFY_CLUSTER_USER_LEVEL", - "APPS_PERSONALIZED_NAVIGATIONAL_USER_LEVEL", - "APPS_PERSONALIZED_NAVIGATIONAL_GAME_USER_LEVEL", - "APPS_PERSONALIZED_MDP_USER_LEVEL", - "APPS_PERSONALIZED_MDP_GAME_USER_LEVEL", "SUBSCRIPTION_CANCELLATION_PROMOTION_USER_LEVEL", "SUBSCRIPTION_UPDATE_FOP_FOR_DCB_AS_PRIMARY_SIGNUP_USER_LEVEL", "SUBSCRIPTION_UPDATE_FOP_FOR_DCB_AS_PRIMARY_USER_LEVEL", "SUBSCRIPTION_RETRY_FOP_FOR_DCB_AS_PRIMARY_USER_LEVEL", - "SUBSCRIPTION_DCB_AS_DEFAULT_FOP_WITH_BETTER_FOPS_USER_LEVEL", "SUBSCRIPTION_DCB_AS_ADD_FOP_OPTION_USER_LEVEL", - "LOYALTY_HOME_FIRST_TAB_USER_LEVEL", - "LOYALTY_HOME_SECOND_TAB_USER_LEVEL", - "LOYALTY_HOME_THIRD_TAB_USER_LEVEL", - "CART_ABANDONMENT_RETAIL_EXCELLENCE_TEXT_USER_LEVEL", "PURCHASABLE_SUBSCRIPTIONS_IN_DETAILS_PAGE_APP_1_AT_USER_LEVEL", - "PURCHASABLE_SUBSCRIPTIONS_IN_DETAILS_PAGE_APP_2_AT_USER_LEVEL", "PURCHASABLE_SUBSCRIPTIONS_IN_DETAILS_PAGE_APP_3_AT_USER_LEVEL", - "PURCHASABLE_SUBSCRIPTIONS_IN_DETAILS_PAGE_APP_4_AT_USER_LEVEL", - "PURCHASABLE_SUBSCRIPTIONS_IN_DETAILS_PAGE_APP_5_AT_USER_LEVEL", - "PURCHASABLE_SUBSCRIPTIONS_IN_DETAILS_PAGE_APP_6_AT_USER_LEVEL", - "PURCHASABLE_SUBSCRIPTIONS_IN_DETAILS_PAGE_APP_7_AT_USER_LEVEL", - "PURCHASABLE_SUBSCRIPTIONS_IN_DETAILS_PAGE_APP_8_AT_USER_LEVEL", - "PURCHASABLE_SUBSCRIPTIONS_IN_DETAILS_PAGE_APP_9_AT_USER_LEVEL", - "PURCHASABLE_SUBSCRIPTIONS_IN_DETAILS_PAGE_APP_10_AT_USER_LEVEL", - "PURCHASABLE_SUBSCRIPTIONS_IN_DETAILS_PAGE_APP_11_AT_USER_LEVEL", - "PURCHASABLE_SUBSCRIPTIONS_IN_DETAILS_PAGE_APP_12_AT_USER_LEVEL", - "PURCHASABLE_SUBSCRIPTIONS_IN_DETAILS_PAGE_APP_13_AT_USER_LEVEL", - "PURCHASABLE_SUBSCRIPTIONS_IN_DETAILS_PAGE_APP_14_AT_USER_LEVEL", - "PURCHASABLE_SUBSCRIPTIONS_IN_DETAILS_PAGE_APP_15_AT_USER_LEVEL", - "PURCHASABLE_SUBSCRIPTIONS_IN_DETAILS_PAGE_APP_16_AT_USER_LEVEL", - "PURCHASABLE_SUBSCRIPTIONS_IN_DETAILS_PAGE_APP_17_AT_USER_LEVEL", - "PURCHASABLE_SUBSCRIPTIONS_IN_DETAILS_PAGE_APP_18_AT_USER_LEVEL", - "PURCHASABLE_SUBSCRIPTIONS_IN_DETAILS_PAGE_APP_19_AT_USER_LEVEL", - "PURCHASABLE_SUBSCRIPTIONS_IN_DETAILS_PAGE_APP_20_AT_USER_LEVEL", - "GLUE_SCORE_INTEGRATION_DETAILS_PAGE_USER_LEVEL", "DETAILS_PAGE_PROMOTION_HOLDBACK_USER_LEVEL", - "RECS_STALENESS_DEMOTION_1_USER_LEVEL", - "RECS_STALENESS_DEMOTION_2_USER_LEVEL", "RECS_STALENESS_DEMOTION_3_USER_LEVEL", "RECS_STALENESS_DEMOTION_4_USER_LEVEL", "RECS_STALENESS_DEMOTION_5_USER_LEVEL", @@ -109297,7 +109823,6 @@ "LOYALTY_SIGNUP_INTERSTITIAL_AT_USER_LEVEL", "LOYALTY_SIGNUP_SUCCESS_AT_USER_LEVEL", "PLAY_SUBMANAGEMENT_LOG_HOOK_USER_EXAMPLE", - "FOP_OPTION_OR_EXISTING_INSTRUMENTS_MATCHED_PROMOTION_AT_USER_LEVEL", "FOP_OPTION_MATCHED_PROMOTION_ONLY_AT_USER_LEVEL", "PROMOTION_P13N_BANNER_ELIGIBLE_AT_USER_LEVEL", "NEW_USER_FOP_PROMOTION_SEEN", @@ -109316,8 +109841,6 @@ "PROMOLINK_CDP_TITLE_PAGE_USER_LEVEL", "PROMOLINK_CDP_TOPIC_PAGE_USER_LEVEL", "PROMOLINK_CDP_GENERIC_PAGE_USER_LEVEL", - "IN_APP_MESSAGING_APP_1_AT_USER_LEVEL", - "POINTS_PROMOTION_CONTENT_HOME_AT_USER_LEVEL", "POINTS_PROMOTION_CONTENT_PAGE_AT_USER_LEVEL", "IN_APP_MESSAGING_APP_2_AT_USER_LEVEL", "IN_APP_MESSAGING_APP_3_AT_USER_LEVEL", @@ -109350,47 +109873,15 @@ "IN_APP_OFFER_SAVED_APP_2_AT_USER_LEVEL", "IN_APP_OFFER_SAVED_APP_3_AT_USER_LEVEL", "IN_APP_OFFER_SAVED_APP_4_AT_USER_LEVEL", - "PROMOLINK_CDP_CLUSTER_USER_LEVEL", - "PROMOLINK_CDP_CLUSTER_TITLE_PAGE_USER_LEVEL", - "PROMOLINK_CDP_CLUSTER_TOPIC_PAGE_USER_LEVEL", - "PROMOLINK_CDP_CLUSTER_GENERIC_PAGE_USER_LEVEL", - "PROMOLINK_CDP_CLUSTER_R2_USER_LEVEL", - "PROMOLINK_CDP_CLUSTER_TITLE_PAGE_R2_USER_LEVEL", - "PROMOLINK_CDP_CLUSTER_TOPIC_PAGE_R2_USER_LEVEL", - "PROMOLINK_CDP_CLUSTER_GENERIC_PAGE_R2_USER_LEVEL", - "FIRST_PARTY_PROMOTION_LIVE_OP_USER_LEVEL", - "FIRST_PARTY_PROMOTION_LIVE_OP_PRE_REDEMPTION_USER_LEVEL", - "FIRST_PARTY_PROMOTION_LIVE_OP_PRE_REDEMPTION_ABOVE_DEV_EVENTS_USER_LEVEL", - "SHOULD_SEE_FIRST_PARTY_PROMO_LIVE_OP_CTA_USER_LEVEL", "SHOULD_SEE_FIRST_PARTY_PROMO_LIVE_OP_ON_SERP_MDP_USER_LEVEL", - "SHOULD_SEE_FIRST_PARTY_PROMO_LIVE_OP_ON_APP_DETAILS_PAGE_USER_LEVEL", "SHOULD_SEE_FIRST_PARTY_PROMO_LIVE_OP_ON_APP_DP_USER_LEVEL", "CART_ABANDONMENT_SUBSCRIPTION_ONE_TIME_PASS_USER_LEVEL", - "LEGOLAND_INSTANT_FOP_SCREEN_USER_LEVEL", - "LEGOLAND_INSTANT_FOP_SCREEN_WITH_PROMOTION_USER_LEVEL", - "DEVELOPER_PROMOTIONS_ELIGIBLE_USER_LEVEL", "GOOGLE_PROMOTIONS_ELIGIBLE_USER_LEVEL", "USER_TRIGGERED_IAP_PROMOTION_RETRIEVAL_USER_LEVEL", "LOYALTY_IAP_UPSELL_USER_LEVEL", "IAP_HAS_UNREDEEMED_PROMOTIONS_CLIENT_USER_LEVEL", - "PROMOLINK_CDP_CLUSTER_R3_USER_LEVEL", - "PROMOLINK_CDP_CLUSTER_TITLE_PAGE_R3_USER_LEVEL", - "PROMOLINK_CDP_CLUSTER_TOPIC_PAGE_R3_USER_LEVEL", - "PROMOLINK_CDP_CLUSTER_GENERIC_PAGE_R3_USER_LEVEL", - "PROMOLINK_CDP_CLUSTER_R4_USER_LEVEL", - "PROMOLINK_CDP_CLUSTER_TITLE_PAGE_R4_USER_LEVEL", - "PROMOLINK_CDP_CLUSTER_TOPIC_PAGE_R4_USER_LEVEL", - "PROMOLINK_CDP_CLUSTER_GENERIC_PAGE_R4_USER_LEVEL", - "G1_PLAY_PASS_BUNDLE_ELIGIBLE_IN_PLAY_STORE_USER_LEVEL", - "G1_PLAY_PASS_BUNDLE_ELIGIBLE_IN_PLAY_STORE_COMBINED_CHANNEL_USER_LEVEL", "PLAY_STORE_IAP_SALES_USER_LEVEL", "PLAY_STORE_IAP_SALES_APP_1_USER_LEVEL", - "PLAY_STORE_IAP_SALES_APP_2_USER_LEVEL", - "PLAY_STORE_IAP_SALES_APP_3_USER_LEVEL", - "PLAY_STORE_IAP_SALES_APP_4_USER_LEVEL", - "PLAY_STORE_IAP_SALES_APP_5_USER_LEVEL", - "PLAY_STORE_IAP_SALES_APP_6_USER_LEVEL", - "PLAY_STORE_IAP_SALES_APP_7_USER_LEVEL", "PLAY_STORE_IAP_SALES_APP_8_USER_LEVEL", "PLAY_STORE_IAP_SALES_APP_9_USER_LEVEL", "PLAY_STORE_IAP_SALES_APP_10_USER_LEVEL", @@ -109522,15 +110013,20 @@ "EDITORIAL_FCC_AT_USER_LEVEL", "QUEST_CONTENT_CARD_IN_DEALS_HOME_USER_LEVEL", "FOP_STEERING_PROMOTION_INITIAL_BILLING_PROFILE_USER_LEVEL", + "FOP_STEERING_PROMOTION_INITIAL_BILLING_PROFILE_USER_LEVEL_V2", "FOP_STEERING_PROMOTION_CART_ADD_FOP_USER_LEVEL", + "FOP_STEERING_PROMOTION_CART_ADD_FOP_USER_LEVEL_V2", "FOP_STEERING_PROMOTION_CART_CHANGE_FOP_USER_LEVEL", + "FOP_STEERING_PROMOTION_CART_CHANGE_FOP_USER_LEVEL_V2", "FOP_STEERING_PROMOTION_CART_APPLY_PROMOTION_USER_LEVEL", + "FOP_STEERING_PROMOTION_CART_APPLY_PROMOTION_USER_LEVEL_V2", "LOYALTY_STAMP_CARD_IN_PURCHASE_FLOW_USER_LEVEL", "HAS_MONETIZATION_BEHAVIOR_USER_LEVEL", "HAS_MONETIZATION_BEHAVIOR_LAST_180D_USER_LEVEL", "HAS_LAST_28D_CART_ABANDONMENT_USER_LEVEL", "HAS_LAST_7D_CART_ABANDONMENT_USER_LEVEL", "LINK_BIOMETRICS_USER_LEVEL", + "LINK_BIOMETRICS_NEW_SETUP_USER_LEVEL", "POST_SUCCESS_ADD_BACKUP_FLOW_USER_LEVEL", "SKIP_CHECK_MARK_SCREEN_WITH_BACKUP_FLOW_USER_LEVEL", "IS_ELIGIBLE_FOR_ONE_CLICK_BACKUP_FOP_USER_LEVEL", @@ -109617,6 +110113,12 @@ "PLAY_ONBOARDING_QUEST_PLATFORM_SERVING_USER_LEVEL", "APPS_LAUNCHER_CLUSTER_AT_USER_LEVEL", "PBUY_V1_SEQUENCE_MODEL_LAUNCH_USER_LEVEL", + "NOTIFICATION_SPEND_UPLIFT_MODEL_LAUNCH_USER_LEVEL", + "EXPANDED_DEV_SUCCESS_CLUSTER_USER_LEVEL", + "COLLAPSED_DEV_SUCCESS_CLUSTER_USER_LEVEL", + "TRIGGERED_DEV_SUCCESS_CLUSTER_USER_LEVEL", + "GAME_DEV_SUCCESS_CLUSTER_USER_LEVEL", + "APP_DEV_SUCCESS_CLUSTER_USER_LEVEL", "USER_LEVEL_TEST_CODE_LIMIT" ], "enumDescriptions": [ @@ -109634,7 +110136,6 @@ "", "", "", - "go/books-language-handling for details", "Create test code for go/it-design experiment", "go/guided-discovery-design for details.", "", @@ -109648,15 +110149,11 @@ "", "", "", - "For verify the client test code logging flow.", - "", - "", "", "", "", "", "", - "Candidate for Vanagon Escape hatch experiment", "", "", "", @@ -109675,22 +110172,6 @@ "", "", "", - "", - "Track entertainment cluster when FPR is enabled.", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", "Details page of an app eligible for Books XSell", "", "", @@ -109709,33 +110190,10 @@ "", "", "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", "Indicates triggering of Topic RFY cluster", "Triggered Mini Topcharts in apps search.", "", "", - "", - "", - "", "User eligible for Assistant first-run tooltip", "User eligible for Assistant nth-run tooltip", "User eligible for Assistant nth-run button tooltip", @@ -109746,16 +110204,8 @@ "User eligible for Notification nth new tooltip", "", "", - "", - "", "leon banner is targeted at event level.", "", - "", - "User eligible for dialer contact tooltip", - "", - "", - "", - "", "User input has touch hardware", "User input has rotary hardware", "User input has touchpad hardware", @@ -109775,13 +110225,6 @@ "", "", "", - "Add test code for calendar tooltip", - "", - "", - "", - "", - "", - "", "", "", "", @@ -109790,24 +110233,11 @@ "", "", "", - "", - "", - "", - "", - "", - "", - "", - "DEPRECATED. Unnecessary test code", - "", - "", - "", "Indicates a work profile was detected while running Android Auto", "Indicates Android Auto has detected a work profile, and could query for work data, but might (or might not) need to prompt for permissions first. Also indicates Android Auto has permission to post any needed permission prompts.", "Indicates Android Auto has permission to query work data, and show it to the user", "", "", - "The mismatch for target id 12609441 in finsky targeting and skeleton framework.", - "", "Indicates that Android Auto has detected multiple phone accounts, which are capable of placing/receiving calls. VOIP accounts are not included.", "Indicates that a phone with multiple callable accounts has a default account specified for placing outgoing calls. This means account disambiguation generally won't be needed when placing a call from Android Auto.", "", @@ -109817,10 +110247,6 @@ "", "", "", - "Indicates that default media app was set from \u003e 1 available media apps at startup.", - "", - "", - "", "", "Indicates that the Android Auto session is eligible to receive media autoplay (i.e. system requesting playback automatically)", "", @@ -109836,32 +110262,21 @@ "Event level test code that indicates that tg related queries could be inserted to related query cluster for navigational search.", "Event level testcode for promotable apps in search. STRONG_CAT and CAT are for strong CAT and general CAT query slices.", "", - "", "Event level test codes containing result of tquality lookup during market details url matching. A failed tquality result suppresses inline details.", "", "Event level test code indicating external details URL is an inline URL.", - "Event level test codes for expandable cluster.", - "", - "", - "", - "Event level test code for Clusters in SERP", "", "", "", "", "Event level test codes containing result of aQuality lookup during market details url matching. A failed aQuality result suppresses inline details.", "", - "Event level test code for Aquality/Tquality filtering in LMD project. This is a duplicated testcode created for logging in frontend.", - "", - "", - "", - "", - "", - "", "Event level test code for tracking fresh results seeking within the current year search queries.", "Event level test code for when we filtered \u003e=1 apps due to tq failure.", "Event level test code for Editorial Content/Articles in SERP (FHR)", - "Event level test codes containing results for aQuality and tQuality in the details page. See go/low-quality-dp-experiment-config for details.", + "", + "", + "The following are used by the server side.", "", "", "", @@ -109882,6 +110297,9 @@ "Event level test code for SERP L2,L3 TG2 category queries.", "Event level test code for dev success cluster.", "", + "", + "", + "", "TestCode for Broad Intent Games TimeSpent Event Level.", "Test codes for the feature and each early-access partners for the Play Store IAP sales project at event-level. go/play-store-iap-sales-dd", "USB connection recovery.", @@ -109907,6 +110325,8 @@ "Tooltip for notifying user of the rail widget setting.", "Event level test codes containing result of tquality lookup during market details url matching. An unknown result means the lookup found nothing.", "", + "Event level test code when Short Description is populated in Superroot.", + "Event level test code when Short Description fetched in PGSS is different from that fetched in Superroot.", "", "", "", @@ -110491,7 +110911,6 @@ "", "", "", - "", "Subscription update fop flow at signup when the primary fop", "is dcb. Subscription update fop flow at sub center when the primary", "fop is dcb.", @@ -110686,14 +111105,19 @@ "Session level test code for tracking fresh results seeking within the current year search queries.", "Event level test code for when we filtered \u003e=1 apps due to tq failure.", "Session level test code for Editorial Content/Articles in SERP (FHR)", - "Information about user's data connection.", "", "Information about user's video auto-play settings.", "", "", "Session level test code that indicates the decline reason is populated to payment decline email.", "Session level test code for Quest Content Card launch on Deals Home, for tracking users who made eligible purchases and are eligible for the QCC.", - "Session level test code for low quality app in details page. See go/low-quality-dp-experiment-config for details.", + "Session level test code for low quality app in details page. See go/low-quality-dp-experiment-config for details. The following are used by the client side.", + "", + "", + "", + "", + "", + "The following are used by the server side.", "", "", "", @@ -110823,6 +111247,9 @@ "Session level test code for SERP L2,L3 TG2 category queries.", "Session level test code for dev success cluster.", "", + "", + "", + "", "Session level test code for 1.5x ad format. See here for details: http://shortn/_04Q1LMyoTe.", "Session level test code for merch run planogram experiment", "TestCode for Broad Intent Games TimeSpent Session Level.", @@ -110859,84 +111286,43 @@ "Session level test code containing result of tQuality lookup during market details url matching. Unknown means the lookup found nothing.", "", "Session-level test code that indicates a user was served an Apps Launcher Cluster.", + "Session level test code when Short Description is populated in Superroot.", + "Session level test code when Short Description fetched in PGSS is different from that fetched in Superroot.", + "Session level test code for queries from phone device with wear filter", + "Session level test code for queries from wear device", + "Session-level test code indicating that the user was served a Nav Ad with a app or game that is the same as the MDP on stream.", + "Session-level test code indicating that the user was served a Nav Ad with an app or game that differs from the MDP on stream.", + "Session-level test code indicating that the user was not served a Nav Ad.", "", "User should see the live op cluster.", "Cart abandonment flow for purchase flow.", "User saw/should have seen purchasable subscription card in", "App Details Page. Cart abandonment sub dollar experiment.", - "Cart abandonment V2 experiment1.", "User saw/would have seen the in app products section in App", - "Details Page. User saw/would have seen the details page promotion in App", "Details Page. User saw/would have seen the details page promotion in Books", - "Details Page. go/cart-abandon-vx-rollout", - "go/cart-abandon-vx-rollout", - "go/cart-abandon-vx-rollout", - "go/cart-abandon-vx-rollout", - "Quick fix expired credit card flow for purchase flow.", - "Details page promotion global holdback", "Suer saw/should have seem promotion for Burnsie(Prompt for", - "fop) in free purchase. Cart abandonment exp for high-value carts (v3)", - "Cash top up experiment. go/cash-top-up-one-pager", - "go/burnsie-for-expired-cards", - "User saw/would have seen the promotion that was redeemd from", "non details page in App Details Page. User saw/would have seen the promotion that was redeemd from", "non details page in Books Details Page. User saw/would have seen the 10% off swoop campaign.", "go/subs-swoop-experiment User saw/would have seen the 25% off swoop campaign.", "go/subs-swoop-experiment User saw/would have seen the 50% off swoop campaign.", "go/subs-swoop-experiment User saw/would have seen the 75% off swoop campaign.", - "go/subs-swoop-experiment User saw/would have seen the 90% off swoop campaign.", "User saw/would have seen the \"wave 2\" purchasable", - "subscription card in App Details Page. Subscribe \u0026 Install metadata comes from the server is", "available to the app for the current user. It helps us to slice metrics for the S\u0026I UDPR migration (a client change). Context: https://screenshot.googleplex.com/APAqqLFYpXjfmWQ. User is eligible for some campaign, and passes surface", - "matching and snooze check. go/p3-ge-cart-abandonment-dd Users who have ever sent acquire requests with existing", "DEPRECATED. Use campaign-specific test codes (20034-20036).", "User saw/would have seen the promotion that was redeemd from", "non details page in App Details Page. User saw/would have seen the details page in-app item", - "promotion for Nevers in App Details Page. User saw/would have seen the details page in-app item", - "promotion for Lapsed Buyers in App Details Page. User saw/would have seen the details page premium app", - "promotion for Nevers in App Details Page. User saw/would have seen the details page premium app", - "promotion for Nevers in App Details Page. User saw/would have seen the details page in-app item", "promotion for Lapsed Buyers in App Details Page.", "", "", "", "", - "", - "", - "", - "", - "", "Subscription cancellation flow for purchase flow per user.", "Subscription update fop flow at signup when the primary fop", "is dcb. Subscription update fop flow when the primary fop is dcb.", "Subscription retry fop flow when the primary fop is dcb.", "", "", - "User visited the first tab of Loyalty Home.", - "User visited the second tab of Loyalty Home.", - "User visited the third tab of Loyalty Home.", - "Cart abandonment exp for retail excellence text experiment.", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", "", - "", - "", - "", - "", - "", - "", - "", - "", - "Glue score integration in Details Page.", "User level test code for Details Page Global Holdback.", "", "", @@ -110949,8 +111335,6 @@ "", "", "", - "", - "", "leon banner is targeted at user level.", "", "", @@ -111034,9 +111418,6 @@ "", "", "", - "", - "", - "", "Test codes for in-app offers at user level.", "", "", @@ -111054,33 +111435,7 @@ "", "", "", - "", - "", - "", - "", - "", - "", - "First Party Promotion LiveOps", - "", - "", - "", - "", - "", - "", "User saw/would have seen the subscription one time pass offer", - "when abandonments the cart.", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", "", "", "", @@ -111107,12 +111462,6 @@ "", "", "", - "", - "", - "", - "", - "", - "", "Test code for hype panel features on details page: go/vip-hype-panel-passport, go/vip-hype-panel2dot1-passport", "", "", @@ -111224,15 +111573,20 @@ "User level test code that indicates that a user was served an editorial FCC (Flexible Content Cluster).", "User level test code for Quest Content Card launch on Deals Home, for tracking users who made eligible purchases and are eligible for the QCC.", "User level test code for Fop Steering Promotion with initial billing profile.", + "", "User level test code for Fop Steering Promotion displayed in cart with add fop action.", + "", "User level test code for Fop Steering Promotion displayed in cart with change fop action.", + "", "User level test code for Fop Steering Promotion displayed in cart with apply promotion action.", + "", "User level test code for Quest Platform Loyalty Stamp Card in Purchase flow.", "User level test code for users who have made any monetization behavior(sub, iap) before (controlled by fsUlyssesBuyerState), used for AH/GH monetization experiments.", "User level test code for users who have made any monetization behavior(sub, iap) for the last 180 days (controlled by ULYSSES_OOP_SPEND_PER_PURCHASE_180D), used for AH/GH monetization experiments.", "User level test code for users who have any purchase card abandon behavior in the last 28 day (controlled by LAST_28D_CART_ABANDONMENT_BACKEND), used for AH/GH monetization experiments.", "User level test code for users who have any purchase card abandon behavior in the last 7 day (controlled by LAST_7D_CART_ABANDONMENT_BACKEND), used for AH/GH monetization experiments.", "User level test code for link biometrics for free app acquisitions.", + "User level test code for link biometrics for free app acquisitions new setup.", "User level test code for post success add backup flow.", "User level test code for skipping ckechmark screen with backup flow.", "User level test code for users who are eligible for one-click backup fop.", @@ -111319,6 +111673,12 @@ "User level test code for Play Onboarding quest, tracking users who are eligible in any serving flow via Quest Platform.", "User-level test code that indicates a user was served an Apps Launcher Cluster.", "User level test code for v1 sequence model launch layer, tracking users who actually get different experience between control and treatment.", + "User level test code for notification spend optimization study, tracking users who actually get different experience between control and treatment.", + "", + "", + "", + "", + "", "" ], "type": "string" @@ -111630,7 +111990,8 @@ "OBJECTIVE_CRAWL_ASSETS_DONE", "OBJECTIVE_VITAL_ASSETS_DONE", "OBJECTIVE_SAM_FEATURES_DONE", - "OBJECTIVE_SPEECH_RECOGNITION_DONE" + "OBJECTIVE_SPEECH_RECOGNITION_DONE", + "OBJECTIVE_MULTI_TRACK_AUDIO_DONE" ], "enumDescriptions": [ "Should not happen.", @@ -111654,7 +112015,8 @@ "All requested crawl assets for Amarna are complete. This is only needed for genus which is shared by Amarna and other clients. As of 10/2020, YT UGC is the only genus, and crawl assets include MOVING_THUMBNAIL_{8K, 30K, 90K, 300K_24FPS} and ASSET_TIMED_ANCHOR_THUMBNAIL_SPORTS_MOMENT.", "A super set of OBJECTIVE_PRIMARY_ASSETS_DONE and a few other assets that are important for tracking the health of a video. Note: This is for internal health tracking and *not* intended for clients.", "The set of features that Smart Auto Midrolls depends on for generating midroll ad breaks.", - "" + "", + "All assets requested for multi-track audio content." ], "type": "string" }, @@ -114778,7 +115140,8 @@ "GENERATIVE_ASR_V2", "SUMMARY_SEGMENT", "OCR_EDU", - "ASR_SPAN_EDU" + "ASR_SPAN_EDU", + "GENERATIVE_ASR_I18N" ], "enumDescriptions": [ "", @@ -114807,7 +115170,8 @@ "Generative ASR anchors V2.", "Anchors pointing to the conclusion/summary part of the video. (go/vs-find-summary-segment)", "OCR and ASR anchors generated for educational videos in edu Raffia Overlay.", - "" + "", + "Anchors for i18n languages" ], "type": "string" }, @@ -115176,7 +115540,8 @@ "GENERATIVE_ASR_V2", "SUMMARY_SEGMENT", "OCR_EDU", - "ASR_SPAN_EDU" + "ASR_SPAN_EDU", + "GENERATIVE_ASR_I18N" ], "enumDescriptions": [ "", @@ -115205,7 +115570,8 @@ "Generative ASR anchors V2.", "Anchors pointing to the conclusion/summary part of the video. (go/vs-find-summary-segment)", "OCR and ASR anchors generated for educational videos in edu Raffia Overlay.", - "" + "", + "Anchors for i18n languages" ], "type": "string" }, @@ -115295,7 +115661,8 @@ "GENERATIVE_ASR_V2", "SUMMARY_SEGMENT", "OCR_EDU", - "ASR_SPAN_EDU" + "ASR_SPAN_EDU", + "GENERATIVE_ASR_I18N" ], "enumDescriptions": [ "", @@ -115324,7 +115691,8 @@ "Generative ASR anchors V2.", "Anchors pointing to the conclusion/summary part of the video. (go/vs-find-summary-segment)", "OCR and ASR anchors generated for educational videos in edu Raffia Overlay.", - "" + "", + "Anchors for i18n languages" ], "type": "string" }, @@ -117199,12 +117567,12 @@ "Flagged racy watchpage score v6 using racy watchpage model v3 calibrated for watchnext.", "Racy watchpage model v4 (go/racy-watchpage-v4).", "Racy watchpage release version.", - "Racy shorts watchpage model v1.", + "LINT.IfChange Racy shorts watchpage model v1.", "", "Racy shorts watchpage model v2.", "", "Racy shorts watchpage release version.", - "Racy thumb model which corresponds to https://mldash.corp.google.com/experiments/156747527161891342", + "LINT.ThenChange(//depot/google3/video/thumbnails/features/util/consts.h) Racy thumb model which corresponds to https://mldash.corp.google.com/experiments/156747527161891342", "Racy thumb model V3 based on cotraining. https://mldash.corp.google.com/experiments/2626243069925683800", "Historical: Used before 05/06/2020. Racy thumb model V3 based on cotraining. Variant 1. https://mldash.corp.google.com/experiments/2626243069925683800", "Historical: Used before 05/06/2020. Racy thumb model V3 based on cotraining. Variant 2. https://mldash.corp.google.com/experiments/2626243069925683800", diff --git a/contentwarehouse/v1/contentwarehouse-gen.go b/contentwarehouse/v1/contentwarehouse-gen.go index 98c293f22af..fccc4ae53aa 100644 --- a/contentwarehouse/v1/contentwarehouse-gen.go +++ b/contentwarehouse/v1/contentwarehouse-gen.go @@ -3136,6 +3136,8 @@ type AppsPeopleOzExternalMergedpeopleapiAffinity struct { // "MONOSPACE_AFFINITY" // "MY_ACCOUNT_AFFINITY" // "NUDGEIT_CAMPAIGN_MANAGER_AFFINITY" + // "LEGAL_CONTRACTS_EXTERNAL_AFFINITY" + // "CONTACTS_TO_STAR_AFFINITY" AffinityType string `json:"affinityType,omitempty"` // ContainerId: The ID of the container @@ -11064,6 +11066,46 @@ func (s *AssistantApiCameraReceiverCapabilities) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// AssistantApiCapabilitiesHomeAppCapabilities: Information about the +// readiness of Home app features on the device. As of January 2023, +// this is only populated by Assistant on Android. +type AssistantApiCapabilitiesHomeAppCapabilities struct { + // SetupState: The app's installation and setup state. This is most + // pertinent for Tangor, where lock screen Smart Home queries are + // fulfilled by a Home app activity that may be blocked if this value is + // not `SETUP_STATE_COMPLETE`. + // + // Possible values: + // "SETUP_STATE_UNKNOWN" - Setup state is not known, potentially + // because the installed version of the app does not have the app state + // service. + // "SETUP_STATE_INCOMPLETE" - First-time setup has not been completed. + // "SETUP_STATE_COMPLETE" - First-time setup is known to be complete. + SetupState string `json:"setupState,omitempty"` + + // ForceSendFields is a list of field names (e.g. "SetupState") 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. "SetupState") 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 *AssistantApiCapabilitiesHomeAppCapabilities) MarshalJSON() ([]byte, error) { + type NoMethod AssistantApiCapabilitiesHomeAppCapabilities + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // AssistantApiCarAssistantCapabilities: Capabilities that are // associated with Assistants on auto surfaces. This is different from // other capabilities such as CarSettingsCapabilities, @@ -13850,7 +13892,6 @@ type AssistantApiCoreTypesSurfaceIdentity struct { // surfaces-infra-core@ // "CROS" - Assistant on native Chrome OS (go/croissant). OWNERS: // croissant@ - // "FITBIT_OS" - Fitbit OS. OWNERS: surfaces-infra-core@ // "FITBIT_OS_WATCH" - Assistant on Fitbit OS Watch. OWNERS: // assistant-wearable-team@ // "FITBIT_OS_WATCH_ANDROID" - Assistant on Fitbit Watch paired with @@ -13884,6 +13925,12 @@ type AssistantApiCoreTypesSurfaceIdentity struct { // "PIXEL7" - Pixel 7. OWNERS: surfaces-infra-core@ // "PIXEL_BUDS" - Assistant on Pixel Buds. OWNERS: // assistant-wearable-team@ + // "PIXEL_TABLET" - Assistant on Pixel Tablet/Tangor (a.k.a, TK). + // OWNERS: assistant-display-eng@ + // "PIXEL_TABLET_HUB_MODE" - Assistant on Tangor running in Hub mode. + // OWNERS: assistant-display-eng@ + // "PIXEL_TABLET_PERSONAL_MODE" - Assistant on Tangor running in + // Personal mode. OWNERS: assistant-display-eng@ // "PIXEL_WATCH" - Assistant on Pixel Watch (a.k.a., Rohan). OWNERS: // assistant-wearable-team@ // "SCREENLESS" - Devices with screen off or locked (go/bisto). @@ -19075,7 +19122,7 @@ func (s *AssistantApiSodaCapabilities) MarshalJSON() ([]byte, error) { // AssistantApiSoftwareCapabilities: These capabilities represent what // software features the client supports. This should be determined // based on the client's various software versions (OS, GSA version, -// etc). Next ID: 26 +// etc). Next ID: 27 type AssistantApiSoftwareCapabilities struct { // AppCapabilities: IMPORTANT: Only one of AppCapabilities and // AppCapabilitiesDelta should be in the SoftwareCapabilities. In the @@ -19112,6 +19159,9 @@ type AssistantApiSoftwareCapabilities struct { GcmCapabilities *AssistantApiGcmCapabilities `json:"gcmCapabilities,omitempty"` + // HomeAppCapabilities: Google Home app features. + HomeAppCapabilities *AssistantApiCapabilitiesHomeAppCapabilities `json:"homeAppCapabilities,omitempty"` + // LiveTvChannelCapabilities: Capabilities related to live TV channels. LiveTvChannelCapabilities *AssistantApiLiveTvChannelCapabilities `json:"liveTvChannelCapabilities,omitempty"` @@ -19556,7 +19606,7 @@ func (s *AssistantApiSupportedConversationVersion) MarshalJSON() ([]byte, error) // AssistantApiSupportedFeatures: These are the set of features that are // supported by the device. It's a part of the SoftwareCapabilities of -// the device. Next ID: 62 +// the device. Next ID: 63 type AssistantApiSupportedFeatures struct { // AaeNotificationSourceSupported: Whether the client supports the // alternative message notification sources on AAE, in which case @@ -19607,6 +19657,12 @@ type AssistantApiSupportedFeatures struct { // op results before sending them to the server. ClientOpResultBatchingSupported bool `json:"clientOpResultBatchingSupported,omitempty"` + // ConfirmationBeforeReadingMultipleMessagesSupported: Whether the + // client supports confirmation flow before announcement of multiple + // messages. If set to true the user will be prompted once and + // confirmation will be taken before all the messages are announced. + ConfirmationBeforeReadingMultipleMessagesSupported bool `json:"confirmationBeforeReadingMultipleMessagesSupported,omitempty"` + // CrossDeviceBroadcastSupported: Whether the client supports // cross-device broadcast (i.e. on Torus). CrossDeviceBroadcastSupported bool `json:"crossDeviceBroadcastSupported,omitempty"` @@ -24203,11 +24259,18 @@ func (s *AssistantLogsNearbyDevicesLog) MarshalJSON() ([]byte, error) { } // AssistantLogsProviderAnnotationLog: Provider annotation annotated -// from the query. +// from the query. These fields contain the detailed information for the +// provider. (e.g. for Youtube, package_names contains +// "com.google.android.youtube", localized_names contains "youtube", and +// lang contains "en" from "en-US" which depends on user's setting.) type AssistantLogsProviderAnnotationLog struct { + Lang string `json:"lang,omitempty"` + + LocalizedNames []string `json:"localizedNames,omitempty"` + PackageNames []string `json:"packageNames,omitempty"` - // ForceSendFields is a list of field names (e.g. "PackageNames") to + // ForceSendFields is a list of field names (e.g. "Lang") 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 @@ -24215,10 +24278,10 @@ type AssistantLogsProviderAnnotationLog struct { // This may be used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "PackageNames") 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 + // NullFields is a list of field names (e.g. "Lang") 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:"-"` @@ -24483,6 +24546,8 @@ type AssistantLogsTargetDeviceLog struct { // "MANUAL_DEFINED_REASON" // "SINGLE_NEARBY_DEVICE" // "PERSONAL_RESPONSE_BIT_OPTOUT_ON_LOCKED_PHONE" + // "FURTHER_LOCAL_DEVICE" - Lumos result from a FURTHER hearing device + // will be marked as low confidence. LowConfidenceReason string `json:"lowConfidenceReason,omitempty"` // Possible values: @@ -24517,7 +24582,7 @@ func (s *AssistantLogsTargetDeviceLog) MarshalJSON() ([]byte, error) { // AssistantPrefulfillmentRankerPrefulfillmentSignals: Signals to be // used by the Prefulfillment Ranker. Derived from the ParsingSignals // and GroundingSignals carried by the FunctionCall. LINT.IfChange Next -// ID: 39 +// ID: 41 type AssistantPrefulfillmentRankerPrefulfillmentSignals struct { // BindingSetAuis: Assistant User Interaction Score for binding set. BindingSetAuis float64 `json:"bindingSetAuis,omitempty"` @@ -24581,6 +24646,13 @@ type AssistantPrefulfillmentRankerPrefulfillmentSignals struct { // go/hgr-feasibility-feature. IsFeasible bool `json:"isFeasible,omitempty"` + // IsFullyGrounded: Whether the intent is fully grounded. + IsFullyGrounded bool `json:"isFullyGrounded,omitempty"` + + // IsPlayGenericMusic: Whether the intent is a PlayGenericMusic-type + // intent. + IsPlayGenericMusic bool `json:"isPlayGenericMusic,omitempty"` + // KscorerRank: The rank order of the interpretation as determined by // kscorer. The kscorer-determined dominant interpretation, if any, gets // a rank of 0. The remaining N interpretations get a rank of 1 through @@ -25359,7 +25431,6 @@ type AssistantVerticalsHomeautomationProtoCommonStructureBasedRoutine struct { // "CURATED" // "ALARM" // "CUSTOM" - // "CUSTOM_SCRIPT" - SCHEDULED = 3 [deprecated = true]; Type string `json:"type,omitempty"` // UiPayload: UI format payload primarily for external team use. @@ -28680,8 +28751,6 @@ type CompositeDocQualitySignals struct { // contentage.last_significant_update field. LastSignificantUpdate *QualityTimebasedLastSignificantUpdate `json:"lastSignificantUpdate,omitempty"` - OldnessInfo *QualityTimebasedOldnessInfo `json:"oldnessInfo,omitempty"` - Pagetype *QualityTimebasedPageType `json:"pagetype,omitempty"` // ForceSendFields is a list of field names (e.g. @@ -28743,7 +28812,7 @@ func (s *CompositeDocRobotsInfoList) MarshalJSON() ([]byte, error) { // TeraGoogle, this message is included in perdocdata which means it can // be used in preliminary scoring. CAREFUL: For TeraGoogle, this data // resides in very limited serving memory (Flash storage) for a huge -// number of documents. Next id: 40 +// number of documents. Next id: 42 type CompressedQualitySignals struct { // AnchorMismatchDemotion: anchor_mismatch_demotion: converted from // QualityBoost.mismatched.boost. @@ -28883,6 +28952,16 @@ type CompressedQualitySignals struct { ProductReviewPPromoteSite int64 `json:"productReviewPPromoteSite,omitempty"` + // ProductReviewPReviewPage: Fields product_review_p_review_page and + // product_review_p_uhq_page are for promoting/demoting HQ/LQ review + // pages in NGS. See go/pr-boosts for details. The possibility of a page + // being a review page. + ProductReviewPReviewPage int64 `json:"productReviewPReviewPage,omitempty"` + + // ProductReviewPUhqPage: The possibility of a page being a high quality + // review page. + ProductReviewPUhqPage int64 `json:"productReviewPUhqPage,omitempty"` + // Scamness: Scam model score. Used as one of the web page quality qstar // signals. Value range from 0 to 1023. Scamness int64 `json:"scamness,omitempty"` @@ -34656,6 +34735,11 @@ type FreebaseValue struct { // "TYPE_PROTO" - raw_value contains a raw proto. // "TYPE_EXTENSION" - This proto has extensions set. // "TYPE_NESTED_STRUCT" - nested_struct field is populated. + // "TYPE_SEMANTIC_REFERENCE" - string_value contains a Meaning + // Schema(go/life-of-a-meaning-schema) type name which needs to be a + // valid ValueType or SemanticType. This is currently used by semantic + // type based answer value formatting(go/semantic-type-format) before + // Search Response Meaning(go/srm-design) is ready for use // "TYPE_LAT_LONG" - lat_long_value contains a geopoint. // "TYPE_MEASUREMENT" - measurement_value contains a measurement. // "TYPE_HAS_VALUE" - No longer used; pending downstream code cleanup. @@ -37147,6 +37231,7 @@ type GeostoreDataSourceProto struct { // "PROVIDER_GOOGLE_MAPFACTS_PRIVACY" // "PROVIDER_GOOGLE_GT_ALF" // "PROVIDER_GOOGLE_GT_OPERATOR_PROVENANCE" + // "PROVIDER_GOOGLE_LOCAL_SERVICES_ADS" // "PROVIDER_GOOGLE_LOCALSEARCH" - The next new "Google" provider // entries should be placed above. // "PROVIDER_GOOGLE_TRANSIT" - UMBRELLA @@ -37695,7 +37780,8 @@ type GeostoreDataSourceProto struct { // "PROVIDER_NEOGY" // "PROVIDER_AMPUP" // "PROVIDER_LOOP" - // "PROVIDER_ZEST" - Note: Next available value is 0x1270B. + // "PROVIDER_ZEST" + // "PROVIDER_EZVOLT" - Note: Next available value is 0x1270C. Provider string `json:"provider,omitempty"` // RawMetadata: For every key that is used in raw_data from this source, @@ -37742,6 +37828,16 @@ func (s *GeostoreDataSourceProto) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// GeostoreDateTimeProto: WARNING: Outside of FeatureProto, please avoid +// in favor of a standard civil time type. Direct usage is error-prone +// due to the conflation of physical time and civil time (go/httat). In +// a protocol buffer, please use google.type.Date, with an additional +// google.type.TimeOfDay for precision finer-grained than a day. (For +// google.type.DateTime, go/prototime#types cites +// go/httat#zoned_datetime as a caveat). In a programming language, see +// go/time-devguide/languages. Additionally in C++, +// google3/geostore/base/public/datetime.h has conversion functions +// between DateTimeProto and Abseil's civil time types. type GeostoreDateTimeProto struct { // Precision: This attribute describes the precision of the date and // time. It would be unusual for a data provider to provide a precision @@ -41594,6 +41690,7 @@ type GeostoreInternalSourceSummaryProto struct { // "PROVIDER_GOOGLE_MAPFACTS_PRIVACY" // "PROVIDER_GOOGLE_GT_ALF" // "PROVIDER_GOOGLE_GT_OPERATOR_PROVENANCE" + // "PROVIDER_GOOGLE_LOCAL_SERVICES_ADS" // "PROVIDER_GOOGLE_LOCALSEARCH" - The next new "Google" provider // entries should be placed above. // "PROVIDER_GOOGLE_TRANSIT" - UMBRELLA @@ -42142,7 +42239,8 @@ type GeostoreInternalSourceSummaryProto struct { // "PROVIDER_NEOGY" // "PROVIDER_AMPUP" // "PROVIDER_LOOP" - // "PROVIDER_ZEST" - Note: Next available value is 0x1270B. + // "PROVIDER_ZEST" + // "PROVIDER_EZVOLT" - Note: Next available value is 0x1270C. Provider string `json:"provider,omitempty"` // ForceSendFields is a list of field names (e.g. "Dataset") to @@ -43765,6 +43863,7 @@ type GeostoreOntologyRawGConceptInstanceProto struct { // "PROVIDER_GOOGLE_MAPFACTS_PRIVACY" // "PROVIDER_GOOGLE_GT_ALF" // "PROVIDER_GOOGLE_GT_OPERATOR_PROVENANCE" + // "PROVIDER_GOOGLE_LOCAL_SERVICES_ADS" // "PROVIDER_GOOGLE_LOCALSEARCH" - The next new "Google" provider // entries should be placed above. // "PROVIDER_GOOGLE_TRANSIT" - UMBRELLA @@ -44313,7 +44412,8 @@ type GeostoreOntologyRawGConceptInstanceProto struct { // "PROVIDER_NEOGY" // "PROVIDER_AMPUP" // "PROVIDER_LOOP" - // "PROVIDER_ZEST" - Note: Next available value is 0x1270B. + // "PROVIDER_ZEST" + // "PROVIDER_EZVOLT" - Note: Next available value is 0x1270C. Provider string `json:"provider,omitempty"` SourceDataset string `json:"sourceDataset,omitempty"` @@ -45384,8 +45484,8 @@ func (s *GeostorePolygonProto) UnmarshalJSON(data []byte) error { // libraries: //geostore/base/public/pose.h // //java/com/google/geostore/base/Pose.java type GeostorePoseProto struct { - // Altitude: The height of the poses above the WGS-84 ellipsoid in - // meters. + // Altitude: The height of the pose. A positive height is above the + // WGS-84 ellipsoid in meters; negative is below. Altitude float64 `json:"altitude,omitempty"` // Index: The index of the PoseProto in a list of PoseProtos. @@ -46249,6 +46349,7 @@ type GeostoreProvenanceProto struct { // "PROVIDER_GOOGLE_MAPFACTS_PRIVACY" // "PROVIDER_GOOGLE_GT_ALF" // "PROVIDER_GOOGLE_GT_OPERATOR_PROVENANCE" + // "PROVIDER_GOOGLE_LOCAL_SERVICES_ADS" // "PROVIDER_GOOGLE_LOCALSEARCH" - The next new "Google" provider // entries should be placed above. // "PROVIDER_GOOGLE_TRANSIT" - UMBRELLA @@ -46797,7 +46898,8 @@ type GeostoreProvenanceProto struct { // "PROVIDER_NEOGY" // "PROVIDER_AMPUP" // "PROVIDER_LOOP" - // "PROVIDER_ZEST" - Note: Next available value is 0x1270B. + // "PROVIDER_ZEST" + // "PROVIDER_EZVOLT" - Note: Next available value is 0x1270C. Provider string `json:"provider,omitempty"` // ForceSendFields is a list of field names (e.g. "Dataset") to @@ -54147,6 +54249,9 @@ type GoogleCloudContentwarehouseV1CreateDocumentResponse struct { // Document: Document created after executing create request. Document *GoogleCloudContentwarehouseV1Document `json:"document,omitempty"` + // LongRunningOperations: post-processing LROs + LongRunningOperations []*GoogleLongrunningOperation `json:"longRunningOperations,omitempty"` + // Metadata: Additional information for the API invocation, such as the // request tracking id. Metadata *GoogleCloudContentwarehouseV1ResponseMetadata `json:"metadata,omitempty"` @@ -54932,17 +55037,26 @@ func (s *GoogleCloudContentwarehouseV1EnumValue) MarshalJSON() ([]byte, error) { // GoogleCloudContentwarehouseV1ExportToCdwPipeline: The configuration // of exporting documents from the Document Warehouse to CDW pipeline. type GoogleCloudContentwarehouseV1ExportToCdwPipeline struct { - // DocumentIds: The list of all the documents to be processed. - DocumentIds []string `json:"documentIds,omitempty"` + // DocAiDataset: The CDW dataset resource name. Format: + // projects/{project}/locations/{location}/processors/{processor}/dataset + DocAiDataset string `json:"docAiDataset,omitempty"` + + // Documents: The list of all the resource names of the documents to be + // processed. Format: + // projects/{project_number}/locations/{location}/documents/{document_id} + // . + Documents []string `json:"documents,omitempty"` // ExportFolderPath: The Cloud Storage folder path used to store the // exported documents before being sent to CDW. Format: gs:///. ExportFolderPath string `json:"exportFolderPath,omitempty"` - // ProcessorInfo: The CDW processor information. - ProcessorInfo *GoogleCloudContentwarehouseV1ProcessorInfo `json:"processorInfo,omitempty"` + // TrainingSplitRatio: Ratio of training dataset split. When importing + // into Document AI Workbench, documents will be automatically split + // into training and test split category with the specified ratio. + TrainingSplitRatio float64 `json:"trainingSplitRatio,omitempty"` - // ForceSendFields is a list of field names (e.g. "DocumentIds") to + // ForceSendFields is a list of field names (e.g. "DocAiDataset") 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 @@ -54950,7 +55064,7 @@ type GoogleCloudContentwarehouseV1ExportToCdwPipeline struct { // This may be used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "DocumentIds") to include + // NullFields is a list of field names (e.g. "DocAiDataset") 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 @@ -54965,6 +55079,20 @@ func (s *GoogleCloudContentwarehouseV1ExportToCdwPipeline) MarshalJSON() ([]byte return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +func (s *GoogleCloudContentwarehouseV1ExportToCdwPipeline) UnmarshalJSON(data []byte) error { + type NoMethod GoogleCloudContentwarehouseV1ExportToCdwPipeline + var s1 struct { + TrainingSplitRatio gensupport.JSONFloat64 `json:"trainingSplitRatio"` + *NoMethod + } + s1.NoMethod = (*NoMethod)(s) + if err := json.Unmarshal(data, &s1); err != nil { + return err + } + s.TrainingSplitRatio = float64(s1.TrainingSplitRatio) + return nil +} + // GoogleCloudContentwarehouseV1FetchAclRequest: Request message for // DocumentService.FetchAcl type GoogleCloudContentwarehouseV1FetchAclRequest struct { @@ -55112,6 +55240,10 @@ type GoogleCloudContentwarehouseV1GcsIngestPipeline struct { // folder will be imported to Document Warehouse. Format: gs:///. InputPath string `json:"inputPath,omitempty"` + // ProcessorResultsFolderPath: The Cloud Storage folder path used to + // store the raw results from processors. Format: gs:///. + ProcessorResultsFolderPath string `json:"processorResultsFolderPath,omitempty"` + // SchemaName: The Document Warehouse schema resource name. All // documents processed by this pipeline will use this schema. Format: // projects/{project_number}/locations/{location}/documentSchemas/{docume @@ -55145,12 +55277,10 @@ func (s *GoogleCloudContentwarehouseV1GcsIngestPipeline) MarshalJSON() ([]byte, // The configuration of the document classify/split and entity/kvp // extraction pipeline. type GoogleCloudContentwarehouseV1GcsIngestWithDocAiProcessorsPipeline struct { - // ClassifySplitProcessorInfos: The classify or split processor - // information. - ClassifySplitProcessorInfos *GoogleCloudContentwarehouseV1ProcessorInfo `json:"classifySplitProcessorInfos,omitempty"` - - // ExtractProcessorInfos: The entity or key-value pair extracting - // processor information. + // ExtractProcessorInfos: The extract processors information. One + // matched extract processor will be used to process documents based on + // the classify processor result. If no classify processor is + // specificied, the first extract processor will be used. ExtractProcessorInfos []*GoogleCloudContentwarehouseV1ProcessorInfo `json:"extractProcessorInfos,omitempty"` // InputPath: The input Cloud Storage folder. All files under this @@ -55161,22 +55291,27 @@ type GoogleCloudContentwarehouseV1GcsIngestWithDocAiProcessorsPipeline struct { // store the raw results from processors. Format: gs:///. ProcessorResultsFolderPath string `json:"processorResultsFolderPath,omitempty"` + // SplitClassifyProcessorInfo: The split and classify processor + // information. The split and classify result will be used to find a + // matched extract processor. + SplitClassifyProcessorInfo *GoogleCloudContentwarehouseV1ProcessorInfo `json:"splitClassifyProcessorInfo,omitempty"` + // ForceSendFields is a list of field names (e.g. - // "ClassifySplitProcessorInfos") 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. + // "ExtractProcessorInfos") 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. - // "ClassifySplitProcessorInfos") 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. "ExtractProcessorInfos") 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:"-"` } @@ -55865,6 +56000,50 @@ func (s *GoogleCloudContentwarehouseV1MergeFieldsOptions) MarshalJSON() ([]byte, return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// GoogleCloudContentwarehouseV1ProcessWithDocAi: The configuration of +// processing documents in Document Warehouse with DocAi processors +// pipeline. +type GoogleCloudContentwarehouseV1ProcessWithDocAi struct { + // Documents: The list of all the resource names of the documents to be + // processed. Format: + // projects/{project_number}/locations/{location}/documents/{document_id} + // . + Documents []string `json:"documents,omitempty"` + + // ExportFolderPath: The Cloud Storage folder path used to store the + // exported documents before being sent to CDW. Format: gs:///. + ExportFolderPath string `json:"exportFolderPath,omitempty"` + + // ProcessorInfo: The CDW processor information. + ProcessorInfo *GoogleCloudContentwarehouseV1ProcessorInfo `json:"processorInfo,omitempty"` + + // ProcessorResultsFolderPath: The Cloud Storage folder path used to + // store the raw results from processors. Format: gs:///. + ProcessorResultsFolderPath string `json:"processorResultsFolderPath,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Documents") 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. "Documents") 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 *GoogleCloudContentwarehouseV1ProcessWithDocAi) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudContentwarehouseV1ProcessWithDocAi + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // GoogleCloudContentwarehouseV1ProcessorInfo: The DocAI processor // information. type GoogleCloudContentwarehouseV1ProcessorInfo struct { @@ -56633,7 +56812,7 @@ func (s *GoogleCloudContentwarehouseV1RuleSet) MarshalJSON() ([]byte, error) { // GoogleCloudContentwarehouseV1RunPipelineRequest: Request message for // DocumentService.RunPipeline. type GoogleCloudContentwarehouseV1RunPipelineRequest struct { - // ExportCdwPipeline: Export docuemnts from Document Warehouseing to CDW + // ExportCdwPipeline: Export docuemnts from Document Warehouse to CDW // for training purpose. ExportCdwPipeline *GoogleCloudContentwarehouseV1ExportToCdwPipeline `json:"exportCdwPipeline,omitempty"` @@ -56644,6 +56823,11 @@ type GoogleCloudContentwarehouseV1RunPipelineRequest struct { // documents in Cloud Storage and ingest them to Document Warehouse. GcsIngestWithDocAiProcessorsPipeline *GoogleCloudContentwarehouseV1GcsIngestWithDocAiProcessorsPipeline `json:"gcsIngestWithDocAiProcessorsPipeline,omitempty"` + // ProcessWithDocAiPipeline: Use a DocAI processor to process documents + // in Document Warehouse, and re-ingest the updated results into + // Document Warehouse. + ProcessWithDocAiPipeline *GoogleCloudContentwarehouseV1ProcessWithDocAi `json:"processWithDocAiPipeline,omitempty"` + // ForceSendFields is a list of field names (e.g. "ExportCdwPipeline") // to unconditionally include in API requests. By default, fields with // empty or default values are omitted from API requests. However, any @@ -59759,8 +59943,7 @@ type GoogleInternalAppsWaldoV1alphaCalendarBusy struct { // user (see also http://shortn/_wXYXtZScgh). CommittedUntil string `json:"committedUntil,omitempty"` - // CommittedUntilIsMixed: TODO(b/265939748) To be removed, always false - // from User Status Service. + // CommittedUntilIsMixed: TODO(b/265939748) To be removed, always false. CommittedUntilIsMixed bool `json:"committedUntilIsMixed,omitempty"` // EventSummary: The summary of the corresponding event in Calendar. @@ -59846,8 +60029,7 @@ type GoogleInternalAppsWaldoV1alphaDoNotDisturb struct { // user (see also http://shortn/_wXYXtZScgh). CommittedUntil string `json:"committedUntil,omitempty"` - // CommittedUntilIsMixed: TODO(b/265939748) To be removed, always false - // from User Status Service. + // CommittedUntilIsMixed: TODO(b/265939748) To be removed, always false. CommittedUntilIsMixed bool `json:"committedUntilIsMixed,omitempty"` // NextAvailable: The next time when the user will be available, i.e., @@ -59897,8 +60079,7 @@ type GoogleInternalAppsWaldoV1alphaInMeeting struct { // user (see also http://shortn/_wXYXtZScgh). CommittedUntil string `json:"committedUntil,omitempty"` - // CommittedUntilIsMixed: TODO(b/265939748) To be removed, always false - // from User Status Service. + // CommittedUntilIsMixed: TODO(b/265939748) To be removed, always false. CommittedUntilIsMixed bool `json:"committedUntilIsMixed,omitempty"` // EventSummary: The summary of the corresponding event in Calendar. @@ -60034,8 +60215,7 @@ type GoogleInternalAppsWaldoV1alphaOutOfOffice struct { // block is large (>=Xh), committed_until is not set. CommittedUntil string `json:"committedUntil,omitempty"` - // CommittedUntilIsMixed: TODO(b/265939748) To be removed, always false - // from User Status Service. + // CommittedUntilIsMixed: TODO(b/265939748) To be removed, always false. CommittedUntilIsMixed bool `json:"committedUntilIsMixed,omitempty"` // EventSummary: The summary of the corresponding OOO block in Calendar. @@ -60582,6 +60762,7 @@ type GoogleInternalCommunicationsInstantmessagingV1Id struct { // WebRtc // "FITBIT_P11_ID" - signaling. go/cases-media-channel-dd. used by // Fitbit Project 11 for messaging. + // "SHORT_PHONE_NUMBER" - Short phone number: go/shortnumbers Type string `json:"type,omitempty"` // ForceSendFields is a list of field names (e.g. "App") to @@ -66527,7 +66708,7 @@ func (s *ImageRepositoryApiXtagList) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// ImageRepositoryContentBasedVideoMetadata: Next Tag: 48 +// ImageRepositoryContentBasedVideoMetadata: Next Tag: 49 type ImageRepositoryContentBasedVideoMetadata struct { // AmarnaDocid: A hash of the video bytes used as a key to Amarna's // video_metadata table. @@ -66586,6 +66767,12 @@ type ImageRepositoryContentBasedVideoMetadata struct { RepresentativeFrameData *ImageData `json:"representativeFrameData,omitempty"` + // S3Asr: Trnascript generated through AMARNA_CLOUD_SPEECH asset in + // Venom. Note that AMARNA_CLOUD_SPEECH uses S3 as the speech engine + // backend, similar to YT caption's SPEECH_RECOGNIZER asset. However, + // they may use different S3 models. + S3Asr *ImageRepositoryAmarnaCloudSpeechSignals `json:"s3Asr,omitempty"` + S3LanguageIdentification *ImageRepositoryS3LangIdSignals `json:"s3LanguageIdentification,omitempty"` // SafesearchVideoContentSignals: Contains SafeSearch video @@ -66615,7 +66802,8 @@ type ImageRepositoryContentBasedVideoMetadata struct { // TranscodeMetadata: Metadata about each transcode requested. TranscodeMetadata []*ImageRepositoryApiItagSpecificMetadata `json:"transcodeMetadata,omitempty"` - // TranscriptAsr: Speech related metadata + // TranscriptAsr: Speech related metadata The transcript_asr field is + // generated from the YT caption's SPEECH_RECOGNIZER asset. TranscriptAsr *PseudoVideoData `json:"transcriptAsr,omitempty"` // TruncationInfo: Data about whether or not the video was truncated. @@ -68162,7 +68350,13 @@ func (s *ImageSafesearchContentBrainPornAnnotation) UnmarshalJSON(data []byte) e return nil } +// ImageSafesearchContentOCRAnnotation: A protocol buffer to store the +// OCR annotation. Next available tag id: 10. type ImageSafesearchContentOCRAnnotation struct { + // OcrAnnotationVersion: A string that indicates the version of + // SafeSearch OCR annotation. + OcrAnnotationVersion string `json:"ocrAnnotationVersion,omitempty"` + // OcrProminenceScore: The score produced by Aksara geometry and spoof // score. Describes the 'visibility' or 'importance' of the text on the // image [0, 1] @@ -68191,15 +68385,16 @@ type ImageSafesearchContentOCRAnnotation struct { // classifier. VulgarScore float64 `json:"vulgarScore,omitempty"` - // ForceSendFields is a list of field names (e.g. "OcrProminenceScore") - // 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. + // "OcrAnnotationVersion") 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. "OcrProminenceScore") to + // NullFields is a list of field names (e.g. "OcrAnnotationVersion") 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 @@ -76097,7 +76292,7 @@ func (s *KnowledgeAnswersIntentQueryFunctionCall) MarshalJSON() ([]byte, error) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// KnowledgeAnswersIntentQueryFunctionCallSignals: Next ID: 35 +// KnowledgeAnswersIntentQueryFunctionCallSignals: Next ID: 36 type KnowledgeAnswersIntentQueryFunctionCallSignals struct { // ArgumentComposingMid: The argument mid that was used to compose the // entity for a concept interpretation, along with the @@ -76231,6 +76426,10 @@ type KnowledgeAnswersIntentQueryFunctionCallSignals struct { // represents an mdvc interpretation RefxSummaryNodeId string `json:"refxSummaryNodeId,omitempty"` + // ResponseMeaningSignals: Signal data from SRM generation. Solely used + // internally. See: go/srm-design. + ResponseMeaningSignals *KnowledgeAnswersIntentQueryResponseMeaningSignalsResponseMeaningSignals `json:"responseMeaningSignals,omitempty"` + // ResultSupport: The list of result supports for this FunctionCall. ResultSupport []*UniversalsearchNewPackerKnowledgeResultSupport `json:"resultSupport,omitempty"` @@ -76422,8 +76621,10 @@ type KnowledgeAnswersIntentQueryIdentifier struct { // "UNKNOWN_ID_TYPE" // "ALARM" // "CALENDAR" + // "CALENDAR_EVENT" - Calendar Event Id, see go/acal-portable-id. // "KG" // "LIST" + // "LIST_ITEM" // "NOTE" // "PROVIDER" // "STOPWATCH" @@ -76451,6 +76652,8 @@ type KnowledgeAnswersIntentQueryIdentifier struct { // "RECIPE" // "PERSON" - Comms specific id types. go/call-object-iff // "COMM_ENDPOINT" + // "CALL_LOG" - Redial/Callback specific id to identify call log + // entry. // "NEWS" // "MEDIA" - Media specific id types. go/media-gb-data // "CONCEPT" - Concept and relation identifiers @@ -76461,6 +76664,8 @@ type KnowledgeAnswersIntentQueryIdentifier struct { // Message Metadata go/audio-message-gp. // "BROADCAST" - Broadcast feature identifier // go/routines-broadcast-device-gp + // "MESSAGE_CONTENT" - Message content identifier for send/reply + // message go/message-content-grounding IdType string `json:"idType,omitempty"` // ForceSendFields is a list of field names (e.g. "Id") to @@ -77166,6 +77371,35 @@ func (s *KnowledgeAnswersIntentQueryRelatednessSignals) UnmarshalJSON(data []byt return nil } +// KnowledgeAnswersIntentQueryResponseMeaningSignalsResponseMeaningSignal +// s: SRM signal data. Properties here should be nonsemantic. Semantic +// properties should be modeled directly in the SRM. +type KnowledgeAnswersIntentQueryResponseMeaningSignalsResponseMeaningSignals struct { + PropertyValue []*FreebasePropertyValue `json:"propertyValue,omitempty"` + + // ForceSendFields is a list of field names (e.g. "PropertyValue") 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. "PropertyValue") 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 *KnowledgeAnswersIntentQueryResponseMeaningSignalsResponseMeaningSignals) MarshalJSON() ([]byte, error) { + type NoMethod KnowledgeAnswersIntentQueryResponseMeaningSignalsResponseMeaningSignals + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // KnowledgeAnswersIntentQuerySaftSignals: Signals derived from // overlapping saft annotations. type KnowledgeAnswersIntentQuerySaftSignals struct { @@ -89148,6 +89382,47 @@ func (s *NlpSemanticParsingLocalCuisineConstraint) MarshalJSON() ([]byte, error) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +type NlpSemanticParsingLocalEvChargingStationConnectorConstraint struct { + // Possible values: + // "OTHER" + // "J_1772" + // "MENNEKES" - IEC 62196 Type 2 connector + // "CHADEMO" + // "CCS_COMBO_1" - Combined Charging System (AC and DC). Based on SAE + // "CCS_COMBO_2" - Type-1 J-1772 connector Combined Charging System + // (AC and DC). Based on Type-2 + // "TESLA_ROADSTER" - Mennekes connector Tesla connectors (#7-8) are + // being deprecated and will soon be removed and reserved. Please use + // the generic TESLA connector #9 below. + // "TESLA_S_HPWC" + // "TESLA" + // "GB_T" - GB/T + // "WALL_OUTLET" + ConnectorType string `json:"connectorType,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ConnectorType") 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. "ConnectorType") 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 *NlpSemanticParsingLocalEvChargingStationConnectorConstraint) MarshalJSON() ([]byte, error) { + type NoMethod NlpSemanticParsingLocalEvChargingStationConnectorConstraint + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // NlpSemanticParsingLocalEvChargingStationSpeedConstraint: There is an // implicit AND relation if multiple EVCS constraint types are // specified. @@ -89790,7 +90065,7 @@ func (s *NlpSemanticParsingLocalLocation) MarshalJSON() ([]byte, error) { // nested accordingly. E.g., for a compound location the constraint may // be associated with the entire location or with either of the two // internal locations (loc_1 and loc_2). There is an implicit AND -// relation between the different constraints. Next ID: 24. +// relation between the different constraints. Next ID: 25. type NlpSemanticParsingLocalLocationConstraint struct { // Amenities: LINT.IfChange Amenities *NlpSemanticParsingLocalAmenities `json:"amenities,omitempty"` @@ -89799,6 +90074,10 @@ type NlpSemanticParsingLocalLocationConstraint struct { Cuisine *NlpSemanticParsingLocalCuisineConstraint `json:"cuisine,omitempty"` + // EvcsConnectorConstraint: Used for populating + // ElectricVehicleConnectorRefinement from QBF go/evcs-qbf-connector + EvcsConnectorConstraint *NlpSemanticParsingLocalEvChargingStationConnectorConstraint `json:"evcsConnectorConstraint,omitempty"` + EvcsSpeedConstraint *NlpSemanticParsingLocalEvChargingStationSpeedConstraint `json:"evcsSpeedConstraint,omitempty"` // GcidConstraint: Used for GCID filter. Unlike other grammar, for now @@ -99189,6 +99468,8 @@ type PeoplestackFlexorgsProtoInternalExternal struct { // contact: gsm-team@google.com // "SPORK" - Drive desktop Photos uploader go/spork-prd Team contact: // spork-eng@google.com + // "DASHER_SUSTAINABILITY" - Sustainability on Workspace Team: + // workspace-sustainability-eng@google.com Application string `json:"application,omitempty"` // StateStatus: * There can be multiple states based on the context: 1. @@ -99653,6 +99934,10 @@ type PerDocData struct { // RsApplication: Application information associated to the document. RsApplication *RepositoryAnnotationsRdfaRdfaRichSnippetsApplication `json:"rsApplication,omitempty"` + // S3AudioLanguage: Primary video's audio language classified by S3 + // based Automatic Language Identification (only for watch pages). + S3AudioLanguage *S3AudioLanguageS3AudioLanguage `json:"s3AudioLanguage,omitempty"` + // SaftLanguageInt: Top document language as generated by SAFT LangID. // For now we store bare minimum: just the top 1 language value, // converted to the language enum, and only when different from the @@ -103575,6 +103860,7 @@ type QualityActionsReminder struct { // "REMINDER_DRAGONGLASS_ARIS" // "REMINDER_PROACTIVE_API" // "REMINDER_POST_TASK_MIGRATION" + // "REMINDER_VOLUNTARY_TASK_MIGRATION" // "REMINDER_NOTIFICATION_ENABLE_NOTICE" // "CROSS_SURFACE" // "CROSS_SURFACE_MOVIE_SHOWTIMES" @@ -107563,86 +107849,55 @@ type QualityOrbitAsteroidBeltDocumentIntentScores struct { // Possible values: // "NONE" // "TUTORIAL" - // "EXAMPLES" // "MAP" // "TRANSLATE" - // "MEANING" // "LISTEN" // "PROMOTION" - // "SOUNDTRACK" // "GIF" - // "EPISODES" // "REGISTER" // "EVENT_LISTING" // "RANKING" // "DISCOGRAPHY" // "DIRECTIONS" // "NEWS" - // "POPULATION" - // "BEHIND_THE_SCENES" // "SOCIAL_MEDIA" // "FAN_FICTION" - // "ADVICE" // "RECIPES" - // "CAST" - // "ONLINE_QUIZ" // "HOURS_OF_OPERATION" // "DEFINITION" // "REAL_ESTATE_LISTING" - // "FOR_KIDS" - // "BOOKS_BY_AUTHOR" // "PREVIEW" - // "BIOGRAPHY" // "PURCHASE" // "MENU" - // "BLOG" // "UNBOXING" - // "IMAGES" // "NUTRITION_FACTS" - // "SCIENTIFIC_EXPLANATION" - // "ABOUT_PAGE" - // "READ_BOOK" // "TRAVEL_GUIDE" // "SPECS" // "CALCULATOR" // "DOWNLOAD" // "SCORES" - // "SUMMARY" // "QUOTES" // "SHOWTIMES" // "CATALOG" - // "ONLINE_CLASS" // "CALENDAR" - // "ANALYSIS" // "LOCATION_FINDER" - // "COMIC" // "RENT" - // "WATCH_MOVIE_TV_SHOW" - // "CHARACTERS" // "STUDY_GUIDE" - // "WATCH_VIDEO" - // "APP" // "REVIEW" // "SHEET_MUSIC" - // "SEARCH_RESULTS" // "LOGIN" // "TRIVIA" // "CONTACT_PAGE" - // "TEMPLATE" // "RESERVATION" // "CUSTOMER_SUPPORT" // "INTERVIEW" - // "USER_COMMENTS" // "COUPON" // "FLIGHT_TRACKER" // "COMPANY_FINANCIALS" - // "WEATHER" // "FORUM" // "THESAURUS" - // "ONLINE_GAMES" // "MANUAL" // "JOB_POSTING" - // "MUSIC_VIDEO" // "LYRICS" // "SYMPTOMS" // "REPAIR" @@ -107668,6 +107923,7 @@ type QualityOrbitAsteroidBeltDocumentIntentScores struct { // "SHOPPING_TOPN" - Document intent representing whether a page is // recommending best shopping products fulfilling certain application // (e.g. "best laptops for students"). See go/shopping_topn_orbit. + // "AUTHENTIC" - AuthenticityScore for document. see go/astar-dd. // "RESERVED_FOR_NEW_ENUM_128" - ========== Enums for new intents // ========== Instructions: When adding a new intent, use the reserved // enum number from the start of this list, and add a new reserved enum @@ -107693,10 +107949,9 @@ type QualityOrbitAsteroidBeltDocumentIntentScores struct { // "RESERVED_FOR_NEW_ENUM_145" // "RESERVED_FOR_NEW_ENUM_146" // "RESERVED_FOR_NEW_ENUM_147" - // "RESERVED_FOR_NEW_ENUM_LARGE_PLEASE_ASK_ORBIT_97" - ========== + // "RESERVED_FOR_NEW_ENUM_LARGE_PLEASE_ASK_ORBIT_98" - ========== // Enums for new large intents ========== Please ask orbit@ before using // these. - // "RESERVED_FOR_NEW_ENUM_LARGE_PLEASE_ASK_ORBIT_98" // "RESERVED_FOR_NEW_ENUM_LARGE_PLEASE_ASK_ORBIT_99" // "RESERVED_FOR_NEW_ENUM_LARGE_PLEASE_ASK_ORBIT_100" // "RESERVED_FOR_NEW_ENUM_LARGE_PLEASE_ASK_ORBIT_101" @@ -107726,6 +107981,38 @@ type QualityOrbitAsteroidBeltDocumentIntentScores struct { // "RESERVED_FOR_NEW_ENUM_LARGE_PLEASE_ASK_ORBIT_125" // "RESERVED_FOR_NEW_ENUM_LARGE_PLEASE_ASK_ORBIT_126" // "RESERVED_FOR_NEW_ENUM_LARGE_PLEASE_ASK_ORBIT_127" + // "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_2" - ========== Enums for + // deleted intents ========== + // "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_5" + // "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_8" + // "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_10" + // "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_17" + // "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_18" + // "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_21" + // "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_23" + // "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_24" + // "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_28" + // "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_29" + // "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_31" + // "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_34" + // "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_36" + // "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_38" + // "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_39" + // "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_40" + // "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_46" + // "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_50" + // "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_52" + // "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_54" + // "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_56" + // "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_57" + // "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_59" + // "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_60" + // "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_63" + // "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_67" + // "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_71" + // "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_75" + // "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_78" + // "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_81" Intents []string `json:"intents,omitempty"` // Scores: The intent scores, scaled to integers between 0 and 100 for @@ -107770,86 +108057,55 @@ type QualityOrbitAsteroidBeltImageIntentScores struct { // Possible values: // "NONE" // "TUTORIAL" - // "EXAMPLES" // "MAP" // "TRANSLATE" - // "MEANING" // "LISTEN" // "PROMOTION" - // "SOUNDTRACK" // "GIF" - // "EPISODES" // "REGISTER" // "EVENT_LISTING" // "RANKING" // "DISCOGRAPHY" // "DIRECTIONS" // "NEWS" - // "POPULATION" - // "BEHIND_THE_SCENES" // "SOCIAL_MEDIA" // "FAN_FICTION" - // "ADVICE" // "RECIPES" - // "CAST" - // "ONLINE_QUIZ" // "HOURS_OF_OPERATION" // "DEFINITION" // "REAL_ESTATE_LISTING" - // "FOR_KIDS" - // "BOOKS_BY_AUTHOR" // "PREVIEW" - // "BIOGRAPHY" // "PURCHASE" // "MENU" - // "BLOG" // "UNBOXING" - // "IMAGES" // "NUTRITION_FACTS" - // "SCIENTIFIC_EXPLANATION" - // "ABOUT_PAGE" - // "READ_BOOK" // "TRAVEL_GUIDE" // "SPECS" // "CALCULATOR" // "DOWNLOAD" // "SCORES" - // "SUMMARY" // "QUOTES" // "SHOWTIMES" // "CATALOG" - // "ONLINE_CLASS" // "CALENDAR" - // "ANALYSIS" // "LOCATION_FINDER" - // "COMIC" // "RENT" - // "WATCH_MOVIE_TV_SHOW" - // "CHARACTERS" // "STUDY_GUIDE" - // "WATCH_VIDEO" - // "APP" // "REVIEW" // "SHEET_MUSIC" - // "SEARCH_RESULTS" // "LOGIN" // "TRIVIA" // "CONTACT_PAGE" - // "TEMPLATE" // "RESERVATION" // "CUSTOMER_SUPPORT" // "INTERVIEW" - // "USER_COMMENTS" // "COUPON" // "FLIGHT_TRACKER" // "COMPANY_FINANCIALS" - // "WEATHER" // "FORUM" // "THESAURUS" - // "ONLINE_GAMES" // "MANUAL" // "JOB_POSTING" - // "MUSIC_VIDEO" // "LYRICS" // "SYMPTOMS" // "REPAIR" @@ -107875,6 +108131,7 @@ type QualityOrbitAsteroidBeltImageIntentScores struct { // "SHOPPING_TOPN" - Document intent representing whether a page is // recommending best shopping products fulfilling certain application // (e.g. "best laptops for students"). See go/shopping_topn_orbit. + // "AUTHENTIC" - AuthenticityScore for document. see go/astar-dd. // "RESERVED_FOR_NEW_ENUM_128" - ========== Enums for new intents // ========== Instructions: When adding a new intent, use the reserved // enum number from the start of this list, and add a new reserved enum @@ -107900,10 +108157,9 @@ type QualityOrbitAsteroidBeltImageIntentScores struct { // "RESERVED_FOR_NEW_ENUM_145" // "RESERVED_FOR_NEW_ENUM_146" // "RESERVED_FOR_NEW_ENUM_147" - // "RESERVED_FOR_NEW_ENUM_LARGE_PLEASE_ASK_ORBIT_97" - ========== + // "RESERVED_FOR_NEW_ENUM_LARGE_PLEASE_ASK_ORBIT_98" - ========== // Enums for new large intents ========== Please ask orbit@ before using // these. - // "RESERVED_FOR_NEW_ENUM_LARGE_PLEASE_ASK_ORBIT_98" // "RESERVED_FOR_NEW_ENUM_LARGE_PLEASE_ASK_ORBIT_99" // "RESERVED_FOR_NEW_ENUM_LARGE_PLEASE_ASK_ORBIT_100" // "RESERVED_FOR_NEW_ENUM_LARGE_PLEASE_ASK_ORBIT_101" @@ -107933,6 +108189,38 @@ type QualityOrbitAsteroidBeltImageIntentScores struct { // "RESERVED_FOR_NEW_ENUM_LARGE_PLEASE_ASK_ORBIT_125" // "RESERVED_FOR_NEW_ENUM_LARGE_PLEASE_ASK_ORBIT_126" // "RESERVED_FOR_NEW_ENUM_LARGE_PLEASE_ASK_ORBIT_127" + // "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_2" - ========== Enums for + // deleted intents ========== + // "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_5" + // "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_8" + // "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_10" + // "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_17" + // "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_18" + // "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_21" + // "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_23" + // "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_24" + // "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_28" + // "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_29" + // "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_31" + // "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_34" + // "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_36" + // "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_38" + // "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_39" + // "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_40" + // "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_46" + // "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_50" + // "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_52" + // "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_54" + // "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_56" + // "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_57" + // "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_59" + // "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_60" + // "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_63" + // "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_67" + // "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_71" + // "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_75" + // "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_78" + // "RESERVED_FOR_DELETED_ENUM_DO_NOT_REUSE_81" Intents []string `json:"intents,omitempty"` // Scores: The intent scores, scaled to integers between 0 and 100 for @@ -109457,6 +109745,8 @@ type QualityQrewriteCandidateIdField struct { // "FUZZY_MATCHER_REWRITE" - go/afm // "SHOPPING_PREFERENCES_REWRITE" - Rewrite with user explicit // shopping preferences. + // "MAGI_CONTEXT_ENGINE_REWRITE" - Rewrite with context from chat + // conversation with Magi. Type string `json:"type,omitempty"` // ForceSendFields is a list of field names (e.g. "Index") to @@ -111909,6 +112199,7 @@ type QualitySnippetsTruncationSnippetBoldedRange struct { // "QUERY_TERM_MATCH" // "RADISH" // "BRAIN" + // "QUOTED_TERM" Type string `json:"type,omitempty"` // ForceSendFields is a list of field names (e.g. "Begin") to @@ -112126,33 +112417,6 @@ func (s *QualityTimebasedLastSignificantUpdateAdjustments) MarshalJSON() ([]byte return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -type QualityTimebasedOldnessInfo struct { - // IsOldPage: Set to true if this page is considered old. - IsOldPage bool `json:"isOldPage,omitempty"` - - // ForceSendFields is a list of field names (e.g. "IsOldPage") 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. "IsOldPage") 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 *QualityTimebasedOldnessInfo) MarshalJSON() ([]byte, error) { - type NoMethod QualityTimebasedOldnessInfo - raw := NoMethod(*s) - return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) -} - type QualityTimebasedPageType struct { // IsForumPage: Set to true if this page is classified as a forum page. IsForumPage bool `json:"isForumPage,omitempty"` @@ -117503,7 +117767,8 @@ type RepositoryWebrefLexicalRange struct { // "TEMPERATURE" // "THEME" // "TVM_ATTRIBUTE" - // "WEIGHT" - End of facets. This line marks where to generate new + // "WEIGHT" + // "EXCLUSION" - End of facets. This line marks where to generate new // values for facets. Category string `json:"category,omitempty"` @@ -117704,10 +117969,11 @@ type RepositoryWebrefLightweightTokensMatchedLightweightToken struct { // "MASCULINE_HONORIFIC" - Masculine Honorific markers. // "FEMININE_HONORIFIC" - Feminine Honorific markers. // "GENERIC_HONORIFIC" - Non-specific Honorifc markers. - // "NEGATIVE_SUPERLATIVE" + // "NEGATIVE_SUPERLATIVE" - Superlatives // "SUPERLATIVE" // "FACET_AUDIENCE" - Facets. // "FACET_PURPOSE" + // "FACET_EXCLUSION" // "FACET_SETTING_BY_LOCATION" // "FACET_DECORATIVE_PATTERN" // "FACET_ELECTRONIC_DEVICE_CONNECTIVITY" @@ -120842,8 +121108,6 @@ type RepositoryWebrefSimplifiedCompositeDoc struct { // owning entity. MatchingMetadata *RepositoryWebrefPreprocessingUrlMatchingMetadata `json:"matchingMetadata,omitempty"` - ObsoleteAnchorsWithoutInterwiki *RepositoryWebrefSimplifiedAnchors `json:"obsoleteAnchorsWithoutInterwiki,omitempty"` - // RefconDocumentMetadata: Additional document metadata needed by // Refcon. RefconDocumentMetadata *RepositoryWebrefRefconRefconDocumentMetadata `json:"refconDocumentMetadata,omitempty"` @@ -125278,6 +125542,277 @@ func (s *RichsnippetsPageMapTemplateType) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// S3AudioLanguageS3AudioLanguage: S3 based Audio language information +// about a Watch Page. +type S3AudioLanguageS3AudioLanguage struct { + // Language: Audio language of video classified by Automatic Language + // Identification. It corresponds to the langid_result in + // S3LangIdSignals. + // + // Possible values: + // "ENGLISH" + // "DANISH" + // "DUTCH" + // "FINNISH" + // "FRENCH" + // "GERMAN" + // "HEBREW" + // "ITALIAN" + // "JAPANESE" + // "KOREAN" + // "NORWEGIAN" - "Norwegian" = "no" normally implies Bokmål ("nb"). + // See also NORWEGIAN_N. Consider using IsNorwegianLanguage(). + // "POLISH" + // "PORTUGUESE" - WARNING: "Portuguese" in the enum Language implies + // the Iberian variant, while Google and industry standard practice is + // for "pt" to imply Brazilian, for the much larger population. The old + // LanguageCode() function returns "pt" for legacy reasons. The III + // LanguageEnumLanguageCodeConverter converts it to "pt-PT" to preserve + // the semantics. Converting between this legacy enum and + // industry-standard language tags cannot preserve the distinction + // between PORTUGUESE and PORTUGUESE_P. Relying on it is a bug. Consider + // using IsPortugueseLanguage(). + // "RUSSIAN" + // "SPANISH" + // "SWEDISH" + // "CHINESE" - "Chinese" normally implies simplified Han characters + // ("zh-Hans"). See also CHINESE_T. Consider using IsChineseLanguage(). + // "CZECH" + // "GREEK" + // "ICELANDIC" + // "LATVIAN" + // "LITHUANIAN" + // "ROMANIAN" - Avoid making a distinction between ROMANIAN and + // MOLDAVIAN. Consider using IsRomanianLanguage(). + // "HUNGARIAN" + // "ESTONIAN" + // "TG_UNKNOWN_LANGUAGE" + // "UNKNOWN_LANGUAGE" + // "BULGARIAN" + // "CROATIAN" + // "SERBIAN" - Serbian is commonly written in two scripts. The default + // is Cyrillic ("sr" = "sr-Cyrl"). It is also often written with Latin + // letters ("sr-Latn"). This enum does not convey that distinction. + // "IRISH" + // "GALICIAN" + // "TAGALOG" - TAGALOG is used to mean both Tagalog (tl) and Filipino + // (fil). These are nearly the same; Filipino is the official language, + // and "fil" is normally used for UI settings etc. The old + // LanguageCode() function returns "tl". + // "TURKISH" + // "UKRAINIAN" + // "HINDI" + // "MACEDONIAN" + // "BENGALI" + // "INDONESIAN" + // "LATIN" + // "MALAY" + // "MALAYALAM" + // "WELSH" + // "NEPALI" + // "TELUGU" + // "ALBANIAN" + // "TAMIL" + // "BELARUSIAN" + // "JAVANESE" + // "OCCITAN" + // "URDU" + // "BIHARI" - "Bihari" is not a language: There are several different + // languages spoken in and around the Indian state of Bihar. This is + // like saying "Swiss" to mean German+French+Italian+Romansh. + // "GUJARATI" + // "THAI" + // "ARABIC" + // "CATALAN" + // "ESPERANTO" + // "BASQUE" + // "INTERLINGUA" - UI only. + // "KANNADA" + // "PUNJABI" + // "SCOTS_GAELIC" + // "SWAHILI" + // "SLOVENIAN" + // "MARATHI" + // "MALTESE" + // "VIETNAMESE" + // "FRISIAN" + // "SLOVAK" + // "CHINESE_T" - Chinese written in traditional Han characters + // ("zh-Hant"). See also CHINESE. Consider using IsChineseLanguage(). + // "FAROESE" + // "SUNDANESE" + // "UZBEK" + // "AMHARIC" + // "AZERBAIJANI" + // "GEORGIAN" + // "TIGRINYA" - UI only. + // "PERSIAN" + // "BOSNIAN" - UI only. LangId language: CROATIAN (28) + // "SINHALESE" + // "NORWEGIAN_N" - Norwegian Nynorsk ("nn"). See also NORWEGIAN. + // Consider using IsNorwegianLanguage(). UI only. LangId language: + // NORWEGIAN (10) + // "PORTUGUESE_P" - Portuguese in Portugal ("pt-PT"). See the WARNING + // at PORTUGUESE. Avoid a distinction between PORTUGUESE and + // PORTUGUESE_P. Relying on it is a bug. Consider using + // IsPortugueseLanguage(). UI only. LangId language: PORTUGUESE (12) + // "PORTUGUESE_B" - Portuguese in Brazil ("pt-BR"). Consider using + // IsPortugueseLanguage(). UI only. LangId language: PORTUGUESE (12) + // "XHOSA" - UI only. + // "ZULU" - UI only. + // "GUARANI" - UI only. + // "SESOTHO" - UI only. + // "TURKMEN" - UI only. + // "KYRGYZ" + // "BRETON" + // "TWI" - UI only. + // "YIDDISH" - UI only. + // "SERBO_CROATIAN" - UI only. LangId language: SERBIAN (29) + // "SOMALI" - UI only. + // "UIGHUR" + // "KURDISH" - This has been documented as "Kurmanji (kmr) + Sorani + // (ckb) + Kurdish (ku)". There are several kinds of Kurdish languages. + // "ku" normally implies Northern Kurdish = Kurmanji (kmr) which is + // normally written in Latin letters. "ckb" is Central Kurdish (largely + // in Iraq) which is normally written in Arabic letters (thus + // right-to-left). + // "MONGOLIAN" + // "ARMENIAN" + // "LAOTHIAN" + // "SINDHI" + // "RHAETO_ROMANCE" - UI only. + // "AFRIKAANS" + // "LUXEMBOURGISH" + // "BURMESE" + // "KHMER" + // "TIBETAN" + // "DHIVEHI" - sometimes spelled Divehi; lang of Maldives + // "CHEROKEE" + // "SYRIAC" + // "LIMBU" - UI only. + // "ORIYA" + // "ASSAMESE" - UI only. + // "CORSICAN" + // "INTERLINGUE" - UI only. + // "KAZAKH" + // "LINGALA" - UI only. + // "MOLDAVIAN" - "Moldavian" is the same language as Romanian. In + // language tags, "ro-MD" can be used but is not normally necessary. + // Avoid making a distinction between ROMANIAN and MOLDAVIAN. Consider + // using IsRomanianLanguage(). UI only. LangId language: ROMANIAN (22) + // "PASHTO" + // "QUECHUA" + // "SHONA" - UI only. + // "TAJIK" + // "TATAR" + // "TONGA" + // "YORUBA" + // "CREOLES_AND_PIDGINS_ENGLISH_BASED" - This is a vague group of + // languages, not one language. UI only. + // "CREOLES_AND_PIDGINS_FRENCH_BASED" - This is a vague group of + // languages, not one language. UI only. + // "CREOLES_AND_PIDGINS_PORTUGUESE_BASED" - This is a vague group of + // languages, not one language. UI only. + // "CREOLES_AND_PIDGINS_OTHER" - This is a vague group of languages, + // not one language. UI only. + // "MAORI" + // "WOLOF" - UI only. + // "ABKHAZIAN" - UI only. + // "AFAR" - UI only. + // "AYMARA" - UI only. + // "BASHKIR" - UI only. + // "BISLAMA" - UI only. + // "DZONGKHA" - UI only. + // "FIJIAN" - UI only. + // "GREENLANDIC" - UI only. + // "HAUSA" - UI only. + // "HAITIAN_CREOLE" + // "INUPIAK" - UI only. + // "INUKTITUT" + // "KASHMIRI" - UI only. + // "KINYARWANDA" - UI only. + // "MALAGASY" - UI only. + // "NAURU" - UI only. + // "OROMO" - UI only. + // "RUNDI" - UI only. + // "SAMOAN" - UI only. + // "SANGO" - UI only. + // "SANSKRIT" + // "SISWANT" - UI only. + // "TSONGA" - UI only. + // "TSWANA" - UI only. + // "VOLAPUK" - UI only. + // "ZHUANG" - UI only. + // "KHASI" - UI only. + // "SCOTS" - UI only. + // "GANDA" - UI only. More commonly called Luganda. + // "MANX" - UI only. + // "MONTENEGRIN" - UI only. LangId language: SERBIAN (29) + // "AKAN" - UI only. + // "IGBO" - UI only. + // "MAURITIAN_CREOLE" - UI only. + // "HAWAIIAN" - UI only. + // "CEBUANO" - Translate only. + // "EWE" - CLD only. + // "GA" - CLD only. + // "HMONG" - Translate only. + // "KRIO" - CLD only. + // "LOZI" - CLD only. + // "LUBA_LULUA" - CLD only. + // "LUO_KENYA_AND_TANZANIA" - CLD only. + // "NEWARI" - Translate only. + // "NYANJA" - CLD only. + // "OSSETIAN" - Translate only. + // "PAMPANGA" - Translate only. + // "PEDI" - CLD only. + // "RAJASTHANI" - Translate only. + // "SESELWA_CREOLE_FRENCH" - CLD only. + // "TUMBUKA" - CLD only. + // "VENDA" - CLD only. + // "WARAY_PHILIPPINES" - Translate only. + // "NUM_LANGUAGES" - Always keep this at the end. It is not a + Language string `json:"language,omitempty"` + + // LanguageConfidence: Confidence interval of the recognized language. + // + // Possible values: + // "UNKNOWN_CONFIDENCE" + // "NOT_CONFIDENT" + // "CONFIDENT" + // "HIGHLY_CONFIDENT" + LanguageConfidence string `json:"languageConfidence,omitempty"` + + // SpeechClass: Type of detected speech. + // + // Possible values: + // "UNKNOWN" - Unspecified, or string label not recognized. + // "NO_SPEECH" + // "HAS_SPEECH_FOR_ASR" - Currently corresponds to simple speech + SpeechClass string `json:"speechClass,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Language") 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. "Language") 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 *S3AudioLanguageS3AudioLanguage) MarshalJSON() ([]byte, error) { + type NoMethod S3AudioLanguageS3AudioLanguage + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // SafesearchInternalImageSignals: A proto that stores SafeSearch // internal signals that are not exported to clients. type SafesearchInternalImageSignals struct { @@ -128553,6 +129088,26 @@ func (s *ShingleSource) MarshalJSON() ([]byte, error) { type ShoppingWebentityShoppingAnnotationInferredImage struct { InferredImageId uint64 `json:"inferredImageId,omitempty,string"` + // Possible values: + // "INFERRED_IMAGE_SOURCE_UNKNOWN" + // "INFERRED_IMAGE_SOURCE_WEB_INDEX" - Web Index images are extracted + // from WebIndex docjoins. It has a tendency to be less precise due to + // docjoin canonicalization combining data from different crawled + // webpages. + // "INFERRED_IMAGE_SOURCE_OVERLAY" - Each offer should have a + // dedicated docjoin which reduces the chances of mistakes, either when + // matching an offer with a web document or due to docjoin + // canonicalization. But image selection for overlay could be slightly + // different to the WEB_INDEX source, and overlay coverage could affect + // the source as well. + // "INFERRED_IMAGE_SOURCE_SCARAB" - Scarab crawls HTML landing pages + // of the offers and extract images using three types of extractors: + // Crawzall, schema_dot_org, and open_graph. It extracts only image URLs + // (without image docid). Images crawled by scarab might not be + // WEB_INDEX or OVERLAY because scarab retrieves the data directly from + // the landing page and is not connected with index or overlays. + InferredImageSource string `json:"inferredImageSource,omitempty"` + // Possible values: // "INFERRED_IMAGE_TYPE_UNKNOWN" // "INFERRED_IMAGE_TYPE_NEARDUP_STARBURST_V3" @@ -128811,7 +129366,7 @@ type SmartphonePerDocData struct { DEPRECATEDMobileHomepageDocid uint64 `json:"DEPRECATEDMobileHomepageDocid,omitempty,string"` // AdsDensityInterstitialViolationStrength: Indicates if the page is - // violating mobile ads density interstitial policy and the voilation + // violating mobile ads density interstitial policy and the violation // strength. See go/interstitials-for-ads and http://ariane/268642 for // details. To save indexing space, we convert the double values in // [0.0, 1.0] to intergers in range [0, 1000] by using floor(value * @@ -130599,13 +131154,20 @@ func (s *SocialGraphApiProtoHostAppInfo) MarshalJSON() ([]byte, error) { // SocialGraphApiProtoImageReference: A reference to a photo in either // Photos Backend or SGI storage. This message should be treated as an -// opaque blob to avoid a dependency on a specific storage backend. +// opaque blob to avoid a dependency on a specific storage backend. This +// version of ImageReference is visible outside of SGBE. Do not add +// fields that should not be exposed outside of Profile Service and +// Image Service. type SocialGraphApiProtoImageReference struct { + // ContentVersion: Identifies the most recent version of this photo. Use + // this as a FIFE param (ie -iv12) to prevent reads of a stale version. + ContentVersion int64 `json:"contentVersion,omitempty,string"` + // MediaId: Unique identifier for the photo. For now, this will always // be a Photos Backend media key. MediaId string `json:"mediaId,omitempty"` - // ForceSendFields is a list of field names (e.g. "MediaId") to + // ForceSendFields is a list of field names (e.g. "ContentVersion") 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 @@ -130613,12 +131175,13 @@ type SocialGraphApiProtoImageReference struct { // This may be used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "MediaId") 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. "ContentVersion") 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:"-"` } @@ -133379,8 +133942,16 @@ func (s *StorageGraphBfgLegalRequestMetadata) MarshalJSON() ([]byte, error) { // part of the cross-system Triple proto at all. But because Triple is // used both as an internal and an external KG API, we at least want to // "hide" those fields that ought to be purely part of the internal -// source <-> LG contract. Next id: 5 +// source <-> LG contract. Next id: 6 type StorageGraphBfgLivegraphProvenanceMetadata struct { + // DirectWriteRecordIds: If one triple is directly-written after recon + // by LG without going through Composer, we add the record id it's from. + // Otherwise, it's empty. Note: 1) LG will dedup record ids before + // updating it. So this field shouldn't see duplicated record ids. 2) + // This is used internally by LG only. So if set by clients, they will + // be dropped by LG. + DirectWriteRecordIds []string `json:"directWriteRecordIds,omitempty"` + // LgInternalWriterId: Identifies the LG internal writers that asserted // the triple. This is the same as 'origin_id' in LG. This will only be // populated by the LG writers to FactStore @@ -133421,15 +133992,16 @@ type StorageGraphBfgLivegraphProvenanceMetadata struct { // need for this to change. See go/weak-data for more information. WeakData bool `json:"weakData,omitempty"` - // ForceSendFields is a list of field names (e.g. "LgInternalWriterId") - // 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. + // "DirectWriteRecordIds") 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. "LgInternalWriterId") to + // NullFields is a list of field names (e.g. "DirectWriteRecordIds") 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 @@ -138040,8 +138612,6 @@ type VendingConsumerProtoTrustedGenomeAnnotation struct { // "QUERY_HAS_SELECTED_BOOTS_CHIP" // "QUERY_HAS_ONLY_UNSELECTED_BOOTS_CHIPS" // "SPONSORED_ADS_CLUSTER" - // "BOOKS_QUERY_HAS_LANGUAGE_INTENT" - go/books-language-handling for - // details // "IRON_THRONE_QUERY" - Create test code for go/it-design experiment // "GUIDED_DISCOVERY" - go/guided-discovery-design for details. // "BOOKS_AUTHOR_QUERY" @@ -138056,27 +138626,13 @@ type VendingConsumerProtoTrustedGenomeAnnotation struct { // "ENTERTAINMENT_CLUSTER_CONTAINER_SEARCH_ENABLED" // "SEARCH_NAV_SPONSORED_ADS_CLUSTER" // "TOP_CHART_RANKING_INFO" - // "CLIENT_TEST_CODE_VERIFICATION" - For verify the client test code - // logging flow. // "APPS_PUB_QUERY" // "ABUSIVE_QUERY_SQUASHING_EVENT" - // "HOME_SPONSORED_ADS_RE_ENGAGEMENT_CLUSTER_EVENT_LEVEL" - // "SEARCH_LIVE_OP_QUERY_EVENT" - // "BOOTS_ES_PT" - // "BOOTS_URUC" - // "BOOTS_URUC_PER_INSTALL" - // "GEARHEAD_VANAGON_ESCAPE_HATCH_CANDIDATE" - Candidate for Vanagon - // Escape hatch experiment - // "BOOTS_JP_KR_V2" - // "BOOTS_FILTERS_AT_END" // "APP_SUPPORTS_INSTANT_LAUNCH" - // "SEARCH_MDP_LIVE_OP_QUERY_EVENT" - // "BOOTS_I18N" // "LOW_RESULT_CLUSTER" // "PERSONALIZED_CLUSTER" // "GAME_SEEKING_PERSONALIZED_CLUSTER_AT_EVENT_LEVEL" // "VX_CLUSTER" - // "LOW_RESULT_LATENCY" // "MOVIES_GROOT_20" // "MOVIES_GROOT_10" // "MOVIES_GROOT_5" @@ -138086,55 +138642,26 @@ type VendingConsumerProtoTrustedGenomeAnnotation struct { // "MOVIES_MDP_SEARCH" // "MOVIES_ORGANIC_SEARCH" // "FULL_PAGE_REPLACEMENT" - // "ENTERTAINMENT_CLUSTER_TRIGGERING_UNDER_FPR" - Track entertainment - // cluster when FPR is enabled. - // "ENTERTAINMENT_CLUSTER_TRIGGERING_WHEN_FPR_ENABLED" - // "ENTERTAINMENT_CLUSTER_TRIGGERING_WHEN_FPR_TRIGGERED" - // "BOOTS_I18N_V2" - // "BOOTS_I18N_V2_VS_V1" // "AUDIOBOOKS_KIDS_CATEGORICAL_SEARCH" // "ZERO_RESULT" // "BOOTS_I18N_100_THRESH" - // "BOOTS_I18N_150_THRESH" // "DISPLAY_ADS_RESPONSE_RECEIVED_EVENT_LEVEL" // "BEST_SELLER_CART_TAG_FOR_MENDEL_AT_EVENT_LEVEL" // "ABUSIVE_QUERY" - // "PARTNER_VIOLENCE_TRIGGERING" - // "BOOTS_V3" // "HOME_SPONSORED_ADS_CLUSTER_NO_ADS" // "BOOKS_XSELL_ELIGIBLE_APP" - Details page of an app eligible for // Books XSell // "NAV_EXT_EVENT" - // "PGS_TEST_CODE_LOGGING_VERIFICATION" - // "ADS_CUSTOM_DETAILS_PAGE_ASSETS_PRESENT_EVENT_LEVEL" // "ADS_CUSTOM_DETAILS_PAGE_ASSETS_SERVED_EVENT_LEVEL" // "BOOKS_DETAILS_PAGE_KEYWORD_CLUSTER_EVENT_LEVEL" - // "DETAILS_PAGE_LIVE_OPS" // "BOOKS_DETAILS_PAGE_SIMILAR_CLUSTER" // "BOOKS_DETAILS_PAGE_POST_ACQUIRE_SIMILAR_CLUSTER" - // "CDP_PROMOTIONAL_DESCRIPTION_LOCALE_MISMATCH" - // "CDP_PROMOTIONAL_DESCRIPTION_LOCALE_MATCH" - // "APPS_ST_PRICE_INTENT" - // "APPS_ST_AUDIENCE_INTENT" // "APPS_PERSONALIZED_TOPIC_QUERY_EVENT_LEVEL" // "APPS_PERSONALIZED_TG_QUERY_EVENT_LEVEL" // "APPS_PERSONALIZED_ALL_GAME_QUERIES_EVENT_LEVEL" // "APPS_PERSONALIZED_CATEGORICAL_GAME_SEEKING_QUERIES_EVENT_LEVEL" // "APPS_PERSONALIZED_CATEGORICAL_NON_TG_QUERIES_EVENT_LEVEL" - // "APPS_PERSONALIZED_VERTICAL_RFY_CLUSTER_EVENT_LEVEL" - // "APPS_PERSONALIZED_NAVIGATIONAL_EVENT_LEVEL" - // "APPS_PERSONALIZED_NAVIGATIONAL_GAME_EVENT_LEVEL" - // "APPS_PERSONALIZED_MDP_EVENT_LEVEL" - // "APPS_PERSONALIZED_MDP_GAME_EVENT_LEVEL" - // "CDP_PROMOTIONAL_IMAGE_LOCALE_MATCH" - // "CDP_PROMOTIONAL_IMAGE_LOCALE_MISMATCH" - // "CDP_SCREENSHOT_LOCALE_MISMATCH" - // "CDP_SCREENSHOT_LOCALE_MATCH" - // "CDP_PROMOTIONAL_VIDEO_LOCALE_MISMATCH" - // "CDP_PROMOTIONAL_VIDEO_LOCALE_MATCH" // "BOOKS_ELIGIBLE_FOR_BUNDLE_EVENT_LEVEL" - // "BOOKS_QUERY_ELIGIBLE_FOR_APPS_CLUSTER" - // "TEST_CODE_BUILD_VERIFICATION" // "GAMES_PROFILE_CREATION_EVENT" // "MOVIES_QUERY_ELIGIBLE_FOR_APPS_CLUSTER" // "MOVIES_WALLE_SEARCH" @@ -138145,9 +138672,6 @@ type VendingConsumerProtoTrustedGenomeAnnotation struct { // triggering of Topic RFY cluster // "APPS_SEARCH_MINI_TOP_CHARTS_CLUSTER_AT_EVENT_LEVEL" - Triggered // Mini Topcharts in apps search. - // "PLAY_STORE_SHOW_CART_EVENT_LEVEL" - // "HAS_BOOK_FREQUENTLY_BOUGHT_TOGETHER_BUNDLE_EVENT_LEVEL" - // "HAS_BOOK_SERIES_BUNDLE_EVENT_LEVEL" // "APPS_SEARCH_TOPIC_RFY_CLUSTER_COUNTERFACTUAL" // "APPS_SEARCH_MINI_TOP_CHARTS_CLUSTER_COUNTERFACTUAL" // "GEARHEAD_TOOLTIP_ASSISTANT_FIRST_RUN" - User eligible for @@ -138166,19 +138690,10 @@ type VendingConsumerProtoTrustedGenomeAnnotation struct { // Notification new tooltip // "GEARHEAD_TOOLTIP_NOTIFICATION_NTH_NEW" - User eligible for // Notification nth new tooltip - // "BUNDLE_DISCOUNT_SHOWN_ON_DETAIL_PAGE" // "KIDS_AGE_SCORE_BONUS_AT_EVENT_LEVEL" // "KIDS_QUALITY_TAG_SCORE_BONUS_AT_EVENT_LEVEL" - // "TEST_FOR_LEVELS_FLAG_AT_EVENT_LEVEL" // "LB_TARGETED_AT_EVENT_LEVEL" - leon banner is targeted at event // level. - // "LB_ABOVE_AT_EVENT_LEVEL" - // "LB_BELOW_AT_EVENT_LEVEL" - // "GEARHEAD_TOOLTIP_CONTEXTUAL_ASSISTANT_DIALER_CONTACT" - User - // eligible for dialer contact tooltip - // "LB_PAGINATED_AT_EVENT_LEVEL" - // "RECS_USER_INTENT_HP_LOW_INTENT_EVENT_LEVEL" - // "RECS_USER_INTENT_HP_HIGH_INTENT_EVENT_LEVEL" // "LB_IMPRESSED_AT_EVENT_LEVEL" // "GEARHEAD_INPUT_TOUCH_PRESENT" - User input has touch hardware // "GEARHEAD_INPUT_ROTARY_PRESENT" - User input has rotary hardware @@ -138191,44 +138706,25 @@ type VendingConsumerProtoTrustedGenomeAnnotation struct { // // "CANCEL_SUBSCRIPTION_CONFIRMATION_DIALOG_SHOWN_WHEN_ELIGIBLE_FOR_ENTIT // LEMENT_BENEFITS_EVENT_LEVEL_AT_EVENT_LEVEL" - // "SMART_FOP_EVENT_LEVEL_AT_EVENT_LEVEL" // "SMART_FOP_AT_EVENT_LEVEL" // "VX_CLUSTER_IN_APPS_SERP_IMPRESSION" // "KIDS_CONTENT_SEEKING_QUERY" // "KIDS_CONTENT_SEEKING_QUERY_TREATMENT_APPLIED" - // "VX_QREF_TRIGGERED_AT_EVENT_LEVEL_AT_EVENT_LEVEL" - // "VX_NAVBOOST_SUPPRESSED_AT_EVENT_LEVEL_AT_EVENT_LEVEL" - // "VX_QREF_TRIGGERED_AT_EVENT_LEVEL" - // "VX_NAVBOOST_SUPPRESSED_AT_EVENT_LEVEL" // "PREFERRED_FOP" // "REDEEM_NOT_ENROLLED_TO_LOYALTY" // "GEARHEAD_TOOLTIP_SETTINGS" - // "GEARHEAD_TOOLTIP_CALENDAR" - Add test code for calendar tooltip - // "POST_RESPONSE_MDP_BUT_QCM_IS_UNKNOWN" - // "POST_RESPONSE_MDP_BUT_QCM_IS_NAVEXT" - // "POST_RESPONSE_MDP_BUT_QCM_IS_NAVIGATIONAL" - // "POST_RESPONSE_MDP_BUT_QCM_IS_MULTINAV" - // "POST_RESPONSE_MDP_BUT_QCM_IS_CATEGORITCAL" - // "ONETREE_MDP_BUT_POST_RESPONSE_NOT_MDP" // "SEARCH_MDP_TRIGGERED_EVENT_LEVEL" - // "IN_APP_MESSAGING_APP_1" // "DEVELOPER_PAGE_AT_EVENT_LEVEL" // "BOOKS_FREE_FIXED_DURATION_RENTAL_EVENT_LEVEL" // "BOOKS_FREE_FIXED_DATE_RENTAL_EVENT_LEVEL" // "BOOKS_PRICE_DROP_EVENT_LEVEL" // "TG_VALIDATED_CRISPR_TAG_AT_EVENT_LEVEL" - // "HAS_PLAY_CONSOLE_CUSTOM_STORE_LISTING" // "GEARHEAD_TOOLTIP_ASSISTANT_DIALER_FIRST_OPEN" // "GEARHEAD_TOOLTIP_ASSISTANT_MEDIA_OPEN" // "GEARHEAD_WIDESCREEN_DISPLAY" - // "GEARHEAD_MULTI_DISPLAY" // "GEARHEAD_TOOLTIP_ASSISTANT_PHONE_CALL_ENDED" // "SERIES_BUNDLE_MULTI_TIER_DISCOUNT_EVENT_LEVEL" - // "DIALER_ASSISTANT_CALL_ACTION_SHOWN" - // "DIALER_ASSISTANT_CALL_ACTION_CLICKED" - DEPRECATED. Unnecessary - // test code // "GEARHEAD_TOOLTIP_FEEDBACK" - // "GEARHEAD_TOOLTIP_ASSISTANT_THREE_RUNS" // "GEARHEAD_TOOLTIP_ASSISTANT_MEDIA_REC_FIRST_RUN" // "GEARHEAD_WORK_PROFILE_DETECTED" - Indicates a work profile was // detected while running Android Auto @@ -138240,9 +138736,6 @@ type VendingConsumerProtoTrustedGenomeAnnotation struct { // "GEARHEAD_WORK_PROFILE_QUERYING_ALLOWED" - Indicates Android Auto // has permission to query work data, and show it to the user // "PLAY_ADS_REENGAGEMENT_COUNTERFACTUAL" - // "PLAY_ADS_THIRD_LIST_VIEW_ADS_COUNTERFACTUAL" - // "MISMATCH_BETWEEN_FINSKY_TARGETING_AND_SKELETON" - The mismatch for - // target id 12609441 in finsky targeting and skeleton framework. // "GEARHEAD_TOOLTIP_ASSISTANT_LAUNCHER_OPEN" // "GEARHEAD_MULTIPLE_CALLABLE_PHONE_ACCOUNTS_DETECTED" - Indicates // that Android Auto has detected multiple phone accounts, which are @@ -138256,17 +138749,11 @@ type VendingConsumerProtoTrustedGenomeAnnotation struct { // "GEARHEAD_TOOLTIP_DIALER_MULTI_SIM" - Indicates that Android Auto // has displayed a multi-SIM calling tooltip. // "GEARHEAD_AUDIO_SERVICE_MIGRATION" - // "GEARHEAD_MEDIA_APP_DOWNLOAD_LEAVE_BEHIND_NOTIFICATION" // "GEARHEAD_TOOLTIP_ASSISTANT_MEDIA_REC_MEDIA_IDLE" - // "GEARHEAD_USER_DEVICE_UNPLUGGED" // "GEARHEAD_DO_NOT_DISTURB_CALLS_ENABLED" - // "GEARHEAD_DEFAULT_MEDIA_APP_SET_FROM_MULTIPLE_OPTIONS" - Indicates - // that default media app was set from > 1 available media apps at - // startup. // "REGIONAL_NAV_EXT_EVENT_LEVEL" // "GEARHEAD_TOOLTIP_BUGREPORT" // "GENERAL_QUERY_PAGINATION_EVENT_LEVEL" - // "MULTINAV_PAGINATION_EVENT_LEVEL" // "GEARHEAD_SESSION_ELIGIBLE_FOR_MEDIA_AUTOPLAY" - Indicates that the // Android Auto session is eligible to receive media autoplay (i.e. // system requesting playback automatically) @@ -138293,20 +138780,12 @@ type VendingConsumerProtoTrustedGenomeAnnotation struct { // in search. STRONG_CAT and CAT are for strong CAT and general CAT // query slices. // "PROMOTABLE_APPS_STRONG_CAT_EVENT" - // "PROMOTABLE_APPS_CAT_EVENT" // "INLINE_DETAILS_TQUALITY_CHECK_PASS" - Event level test codes // containing result of tquality lookup during market details url // matching. A failed tquality result suppresses inline details. // "INLINE_DETAILS_TQUALITY_CHECK_FAIL" // "INLINE_DETAILS_IS_INLINE_URL" - Event level test code indicating // external details URL is an inline URL. - // "EXPANDER_NEXT_TO_METADATA_BAR" - Event level test codes for - // expandable cluster. - // "EXPANDER_NEXT_TO_PROMOTIONAL_TEXT" - // "EXPANDABLE_CLUSTER_EXPANDED" - // "EXPANDABLE_CLUSTER_COLLAPSED" - // "CLUSTER_REQUEST_LATENCY_EVENT_LEVEL" - Event level test code for - // Clusters in SERP // "EDITORS_CHOICE_CLUSTER_SERP_EVENT_LEVEL" // "BESTK_CLUSTER_SERP_EVENT_LEVEL" // "LIVEOPS_CLUSTER_SERP_EVENT_LEVEL" @@ -138315,15 +138794,6 @@ type VendingConsumerProtoTrustedGenomeAnnotation struct { // containing result of aQuality lookup during market details url // matching. A failed aQuality result suppresses inline details. // "INLINE_DETAILS_AQUALITY_CHECK_FAIL" - // "INLINE_DETAILS_IS_INLINE_URL_FRONTEND" - Event level test code for - // Aquality/Tquality filtering in LMD project. This is a duplicated - // testcode created for logging in frontend. - // "INLINE_DETAILS_TQUALITY_CHECK_PASS_FRONTEND" - // "INLINE_DETAILS_TQUALITY_CHECK_FAIL_FRONTEND" - // "INLINE_DETAILS_AQUALITY_CHECK_PASS_FRONTEND" - // "INLINE_DETAILS_AQUALITY_CHECK_FAIL_FRONTEND" - // "INLINE_DETAILS_CALLER_AQUALITY_CHECK_PASS_FRONTEND" - // "INLINE_DETAILS_CALLER_AQUALITY_CHECK_FAIL_FRONTEND" // "FRESH_RESULTS_SEEKING_CURRENT_YEAR_EVENT_LEVEL" - Event level test // code for tracking fresh results seeking within the current year // search queries. @@ -138331,14 +138801,15 @@ type VendingConsumerProtoTrustedGenomeAnnotation struct { // filtered >=1 apps due to tq failure. // "EDITORIAL_CONTENT_CLUSTER_FHR_SERP_EVENT_LEVEL" - Event level test // code for Editorial Content/Articles in SERP (FHR) - // "DETAILS_PAGE_TQUALITY_UNKNOWN_EVENT_LEVEL" - Event level test - // codes containing results for aQuality and tQuality in the details - // page. See go/low-quality-dp-experiment-config for details. - // "DETAILS_PAGE_TQUALITY_FAILED_EVENT_LEVEL" - // "DETAILS_PAGE_TQUALITY_PASSED_EVENT_LEVEL" - // "DETAILS_PAGE_AQUALITY_UNKNOWN_EVENT_LEVEL" // "DETAILS_PAGE_AQUALITY_FAILED_EVENT_LEVEL" // "DETAILS_PAGE_AQUALITY_PASSED_EVENT_LEVEL" + // "PGSS_DETAILS_PAGE_TQUALITY_UNKNOWN_EVENT_LEVEL" - The following + // are used by the server side. + // "PGSS_DETAILS_PAGE_TQUALITY_FAILED_EVENT_LEVEL" + // "PGSS_DETAILS_PAGE_TQUALITY_PASSED_EVENT_LEVEL" + // "PGSS_DETAILS_PAGE_AQUALITY_UNKNOWN_EVENT_LEVEL" + // "PGSS_DETAILS_PAGE_AQUALITY_FAILED_EVENT_LEVEL" + // "PGSS_DETAILS_PAGE_AQUALITY_PASSED_EVENT_LEVEL" // "INLINE_DETAILS_CALLER_AQUALITY_CHECK_PASS" // "INLINE_DETAILS_CALLER_AQUALITY_CHECK_FAIL" // "HSDP_AD_NETWORK_CALLER_TABLET_AQUALITY_CHECK_UNKNOWN" - Event @@ -138362,6 +138833,9 @@ type VendingConsumerProtoTrustedGenomeAnnotation struct { // "EXPANDED_DEV_SUCCESS_CLUSTER_EVENT_LEVEL" - Event level test code // for dev success cluster. // "COLLAPSED_DEV_SUCCESS_CLUSTER_EVENT_LEVEL" + // "TRIGGERED_DEV_SUCCESS_CLUSTER_EVENT_LEVEL" + // "GAME_DEV_SUCCESS_CLUSTER_EVENT_LEVEL" + // "APP_DEV_SUCCESS_CLUSTER_EVENT_LEVEL" // "BROAD_INTENT_GAMES_TIMESPENT_EVENT_LEVEL" - TestCode for Broad // Intent Games TimeSpent Event Level. // @@ -138407,6 +138881,11 @@ type VendingConsumerProtoTrustedGenomeAnnotation struct { // containing result of tquality lookup during market details url // matching. An unknown result means the lookup found nothing. // "INLINE_DETAILS_TQUALITY_CHECK_UNKNOWN_FRONTEND" + // "SUPERROOT_PDS_SHORT_DESCRIPTION_EVENT_LEVEL" - Event level test + // code when Short Description is populated in Superroot. + // "PGSS_SHORT_DESCRIPTION_DIFF_EVENT_LEVEL" - Event level test code + // when Short Description fetched in PGSS is different from that fetched + // in Superroot. // "EVENT_LEVEL_TEST_CODE_LIMIT" // "RESERVED_4" // "RESERVED_5" @@ -139064,7 +139543,6 @@ type VendingConsumerProtoTrustedGenomeAnnotation struct { // saw/would have seen the subscription one time pass offer // "LEGOLAND_INSTANT_FOP_SCREEN_SESSION_LEVEL" - when abandonments the // cart. - // "LEGOLAND_INSTANT_FOP_SCREEN_WITH_PROMOTION_SESSION_LEVEL" // "MY_REVIEWS_PAGE_VISIT_USER_LEVEL" // "SERIES_BUNDLE_MULTI_TIER_DISCOUNT_SESSION_LEVEL" // "DEVELOPER_PROMOTIONS_ELIGIBLE_SESSION_LEVEL" @@ -139416,7 +139894,6 @@ type VendingConsumerProtoTrustedGenomeAnnotation struct { // when we filtered >=1 apps due to tq failure. // "EDITORIAL_CONTENT_CLUSTER_FHR_SERP_SESSION_LEVEL" - Session level // test code for Editorial Content/Articles in SERP (FHR) - // "CONNECTED_WITH_WIFI" - Information about user's data connection. // "CONNECTED_WITH_DATA" // "AUTOPLAY_VIDEOS_AT_ANY_TIME" - Information about user's video // auto-play settings. @@ -139430,12 +139907,20 @@ type VendingConsumerProtoTrustedGenomeAnnotation struct { // users who made eligible purchases and are eligible for the QCC. // "DETAILS_PAGE_TQUALITY_UNKNOWN_SESSION_LEVEL" - Session level test // code for low quality app in details page. See - // go/low-quality-dp-experiment-config for details. + // go/low-quality-dp-experiment-config for details. The following are + // used by the client side. // "DETAILS_PAGE_TQUALITY_FAILED_SESSION_LEVEL" // "DETAILS_PAGE_TQUALITY_PASSED_SESSION_LEVEL" // "DETAILS_PAGE_AQUALITY_UNKNOWN_SESSION_LEVEL" // "DETAILS_PAGE_AQUALITY_FAILED_SESSION_LEVEL" // "DETAILS_PAGE_AQUALITY_PASSED_SESSION_LEVEL" + // "PGSS_DETAILS_PAGE_TQUALITY_UNKNOWN_SESSION_LEVEL" - The following + // are used by the server side. + // "PGSS_DETAILS_PAGE_TQUALITY_FAILED_SESSION_LEVEL" + // "PGSS_DETAILS_PAGE_TQUALITY_PASSED_SESSION_LEVEL" + // "PGSS_DETAILS_PAGE_AQUALITY_UNKNOWN_SESSION_LEVEL" + // "PGSS_DETAILS_PAGE_AQUALITY_FAILED_SESSION_LEVEL" + // "PGSS_DETAILS_PAGE_AQUALITY_PASSED_SESSION_LEVEL" // "QUERY_DEPENDENT_SNIPPET_SESSION_LEVEL" - Session level test code // for query dependent snippet. // "FOP_STEERING_PROMOTION_INITIAL_BILLING_PROFILE_SESSION_LEVEL" - @@ -139632,6 +140117,9 @@ type VendingConsumerProtoTrustedGenomeAnnotation struct { // "EXPANDED_DEV_SUCCESS_CLUSTER_SESSION_LEVEL" - Session level test // code for dev success cluster. // "COLLAPSED_DEV_SUCCESS_CLUSTER_SESSION_LEVEL" + // "TRIGGERED_DEV_SUCCESS_CLUSTER_SESSION_LEVEL" + // "GAME_QUERY_DEV_SUCCESS_CLUSTER_SESSION_LEVEL" + // "APP_QUERY_DEV_SUCCESS_CLUSTER_SESSION_LEVEL" // "DOWNLOAD_COUNT_ELIGIBLE" - Session level test code for 1.5x ad // format. See here for details: http://shortn/_04Q1LMyoTe. // "PLANOGRAM_MERCH_AMERICAS_GAMES_PAYPAL_SESSION_LEVEL" - Session @@ -139693,6 +140181,23 @@ type VendingConsumerProtoTrustedGenomeAnnotation struct { // "INLINE_DETAILS_TQUALITY_CHECK_UNKNOWN_FRONTEND_SESSION_LEVEL" // "APPS_LAUNCHER_CLUSTER_AT_SESSION_LEVEL" - Session-level test code // that indicates a user was served an Apps Launcher Cluster. + // "SUPERROOT_PDS_SHORT_DESCRIPTION_SESSION_LEVEL" - Session level + // test code when Short Description is populated in Superroot. + // "PGSS_SHORT_DESCRIPTION_DIFF_SESSION_LEVEL" - Session level test + // code when Short Description fetched in PGSS is different from that + // fetched in Superroot. + // "WEAR_AQ_SEARCH_PHONE_DEVICE_WITH_WEAR_FILTER" - Session level test + // code for queries from phone device with wear filter + // "WEAR_AQ_SEARCH_WEAR_DEVICE" - Session level test code for queries + // from wear device + // "NAV_ADS_DUPLICATE_SERVED_SESSION_LEVEL" - Session-level test code + // indicating that the user was served a Nav Ad with a app or game that + // is the same as the MDP on stream. + // "NAV_ADS_NON_DUPLICATE_SERVED_SESSION_LEVEL" - Session-level test + // code indicating that the user was served a Nav Ad with an app or game + // that differs from the MDP on stream. + // "NAV_ADS_NO_AD_SERVED_SESSION_LEVEL" - Session-level test code + // indicating that the user was not served a Nav Ad. // "SESSION_LEVEL_TEST_CODE_LIMIT" // "SHOULD_SEE_LIVE_OP_CLUSTER_USER_LEVEL" - User should see the live // op cluster. @@ -139702,36 +140207,12 @@ type VendingConsumerProtoTrustedGenomeAnnotation struct { // saw/should have seen purchasable subscription card in // "CART_ABANDONMENT_SUB_DOLLAR_USER_LEVEL" - App Details Page. Cart // abandonment sub dollar experiment. - // "CART_ABANDONMENT_V2_EXP1_USER_LEVEL" - Cart abandonment V2 - // experiment1. // "IN_APP_PRODUCTS_IN_DETAILS_PAGE_USER_LEVEL" - User saw/would have // seen the in app products section in App - // "APPS_DETAILS_PAGE_PROMOTION_USER_LEVEL" - Details Page. User - // saw/would have seen the details page promotion in App // "BOOKS_DETAILS_PAGE_PROMOTION_USER_LEVEL" - Details Page. User // saw/would have seen the details page promotion in Books - // "CART_ABANDONMENT_BOOK_NEVER_USER_LEVEL" - Details Page. - // go/cart-abandon-vx-rollout - // "CART_ABANDONMENT_BOOK_VX_NEVER_USER_LEVEL" - - // go/cart-abandon-vx-rollout - // "CART_ABANDONMENT_MOVIE_NEVER_USER_LEVEL" - - // go/cart-abandon-vx-rollout - // "CART_ABANDONMENT_MOVIE_VX_NEVER_USER_LEVEL" - - // go/cart-abandon-vx-rollout - // "QUICK_FIX_EXPIRED_CREDIT_CARD_USER_LEVEL" - Quick fix expired - // credit card flow for purchase flow. - // "DETAILS_PAGE_PROMOTION_USER_LEVEL" - Details page promotion global - // holdback // "BURNSIE_ADD_FOP_PROMOTION_USER_LEVEL" - Suer saw/should have seem // promotion for Burnsie(Prompt for - // "CART_ABANDONMENT_HIGH_CART_USER_LEVEL" - fop) in free purchase. - // Cart abandonment exp for high-value carts (v3) - // "WELLNET_CASH_USER_LEVEL" - Cash top up experiment. - // go/cash-top-up-one-pager - // "BURNSIE_FOR_EXPIRED_CARDS_USER_LEVEL" - - // go/burnsie-for-expired-cards - // "APPS_DETAILS_PAGE_EXISTING_PROMOTION_USER_LEVEL" - User saw/would - // have seen the promotion that was redeemd from // "BOOKS_DETAILS_PAGE_EXISTING_PROMOTION_USER_LEVEL" - non details // page in App Details Page. User saw/would have seen the promotion that // was redeemd from @@ -139743,21 +140224,13 @@ type VendingConsumerProtoTrustedGenomeAnnotation struct { // saw/would have seen the 50% off swoop campaign. // "SWOOP_CAMPAIGN_75P_OFF_USER_LEVEL" - go/subs-swoop-experiment User // saw/would have seen the 75% off swoop campaign. - // "SWOOP_CAMPAIGN_90P_OFF_USER_LEVEL" - go/subs-swoop-experiment User - // saw/would have seen the 90% off swoop campaign. // "PURCHASABLE_SUBSCRIPTIONS_IN_DETAILS_PAGE_WAVE_2_USER_LEVEL" - // User saw/would have seen the "wave 2" purchasable - // "SUBSCRIBE_AND_INSTALL_AVAILABLE_CLIENT_USER_LEVEL" - subscription - // card in App Details Page. Subscribe & Install metadata comes from the - // server is // "CART_ABANDONMENT_ELIGIBLE_USER_LEVEL" - available to the app for // the current user. It helps us to slice metrics for the S&I UDPR // migration (a client change). Context: // https://screenshot.googleplex.com/APAqqLFYpXjfmWQ. User is eligible // for some campaign, and passes surface - // "ACQUIRE_REQUEST_EXISTING_SESSION_WITHOUT_ACTION_TOKENS" - matching - // and snooze check. go/p3-ge-cart-abandonment-dd Users who have ever - // sent acquire requests with existing // "APPS_DETAILS_PAGE_PROMOTION_EXP_2_USER_LEVEL" - DEPRECATED. Use // campaign-specific test codes (20034-20036). // "APPS_DETAILS_PAGE_EXISTING_PROMOTION_EXP_2_USER_LEVEL" - User @@ -139765,29 +140238,12 @@ type VendingConsumerProtoTrustedGenomeAnnotation struct { // "APPS_DETAILS_PAGE_PROMOTION_EXP_2_IN_APP_ITEM_NEVERS_USER_LEVEL" - // non details page in App Details Page. User saw/would have seen the // details page in-app item - // "APPS_DETAILS_PAGE_PROMOTION_EXP_2_IN_APP_ITEM_BUYERS_USER_LEVEL" - - // promotion for Nevers in App Details Page. User saw/would have seen - // the details page in-app item - // "APPS_DETAILS_PAGE_PROMOTION_EXP_2_PREMIUM_APP_NEVERS_USER_LEVEL" - - // promotion for Lapsed Buyers in App Details Page. User saw/would have - // seen the details page premium app - // "APPS_DETAILS_PAGE_PROMOTION_EXP_3_PREMIUM_APP_NEVERS_USER_LEVEL" - - // promotion for Nevers in App Details Page. User saw/would have seen - // the details page premium app - // "APPS_DETAILS_PAGE_PROMOTION_EXP_3_IN_APP_ITEM_BUYERS_USER_LEVEL" - - // promotion for Nevers in App Details Page. User saw/would have seen - // the details page in-app item // "APPS_PERSONALIZED_TOPIC_QUERY_USER_LEVEL" - promotion for Lapsed // Buyers in App Details Page. // "APPS_PERSONALIZED_TG_QUERY_USER_LEVEL" // "APPS_PERSONALIZED_ALL_GAME_QUERIES_USER_LEVEL" // "APPS_PERSONALIZED_CATEGORICAL_GAME_SEEKING_QUERIES_USER_LEVEL" // "APPS_PERSONALIZED_CATEGORICAL_NON_TG_QUERIES_USER_LEVEL" - // "APPS_PERSONALIZED_VERTICAL_RFY_CLUSTER_USER_LEVEL" - // "APPS_PERSONALIZED_NAVIGATIONAL_USER_LEVEL" - // "APPS_PERSONALIZED_NAVIGATIONAL_GAME_USER_LEVEL" - // "APPS_PERSONALIZED_MDP_USER_LEVEL" - // "APPS_PERSONALIZED_MDP_GAME_USER_LEVEL" // "SUBSCRIPTION_CANCELLATION_PROMOTION_USER_LEVEL" - Subscription // cancellation flow for purchase flow per user. // "SUBSCRIPTION_UPDATE_FOP_FOR_DCB_AS_PRIMARY_SIGNUP_USER_LEVEL" - @@ -139796,42 +140252,11 @@ type VendingConsumerProtoTrustedGenomeAnnotation struct { // Subscription update fop flow when the primary fop is dcb. // "SUBSCRIPTION_RETRY_FOP_FOR_DCB_AS_PRIMARY_USER_LEVEL" - // Subscription retry fop flow when the primary fop is dcb. - // "SUBSCRIPTION_DCB_AS_DEFAULT_FOP_WITH_BETTER_FOPS_USER_LEVEL" // "SUBSCRIPTION_DCB_AS_ADD_FOP_OPTION_USER_LEVEL" - // "LOYALTY_HOME_FIRST_TAB_USER_LEVEL" - User visited the first tab of - // Loyalty Home. - // "LOYALTY_HOME_SECOND_TAB_USER_LEVEL" - User visited the second tab - // of Loyalty Home. - // "LOYALTY_HOME_THIRD_TAB_USER_LEVEL" - User visited the third tab of - // Loyalty Home. - // "CART_ABANDONMENT_RETAIL_EXCELLENCE_TEXT_USER_LEVEL" - Cart - // abandonment exp for retail excellence text experiment. // "PURCHASABLE_SUBSCRIPTIONS_IN_DETAILS_PAGE_APP_1_AT_USER_LEVEL" - // "PURCHASABLE_SUBSCRIPTIONS_IN_DETAILS_PAGE_APP_2_AT_USER_LEVEL" // "PURCHASABLE_SUBSCRIPTIONS_IN_DETAILS_PAGE_APP_3_AT_USER_LEVEL" - // "PURCHASABLE_SUBSCRIPTIONS_IN_DETAILS_PAGE_APP_4_AT_USER_LEVEL" - // "PURCHASABLE_SUBSCRIPTIONS_IN_DETAILS_PAGE_APP_5_AT_USER_LEVEL" - // "PURCHASABLE_SUBSCRIPTIONS_IN_DETAILS_PAGE_APP_6_AT_USER_LEVEL" - // "PURCHASABLE_SUBSCRIPTIONS_IN_DETAILS_PAGE_APP_7_AT_USER_LEVEL" - // "PURCHASABLE_SUBSCRIPTIONS_IN_DETAILS_PAGE_APP_8_AT_USER_LEVEL" - // "PURCHASABLE_SUBSCRIPTIONS_IN_DETAILS_PAGE_APP_9_AT_USER_LEVEL" - // "PURCHASABLE_SUBSCRIPTIONS_IN_DETAILS_PAGE_APP_10_AT_USER_LEVEL" - // "PURCHASABLE_SUBSCRIPTIONS_IN_DETAILS_PAGE_APP_11_AT_USER_LEVEL" - // "PURCHASABLE_SUBSCRIPTIONS_IN_DETAILS_PAGE_APP_12_AT_USER_LEVEL" - // "PURCHASABLE_SUBSCRIPTIONS_IN_DETAILS_PAGE_APP_13_AT_USER_LEVEL" - // "PURCHASABLE_SUBSCRIPTIONS_IN_DETAILS_PAGE_APP_14_AT_USER_LEVEL" - // "PURCHASABLE_SUBSCRIPTIONS_IN_DETAILS_PAGE_APP_15_AT_USER_LEVEL" - // "PURCHASABLE_SUBSCRIPTIONS_IN_DETAILS_PAGE_APP_16_AT_USER_LEVEL" - // "PURCHASABLE_SUBSCRIPTIONS_IN_DETAILS_PAGE_APP_17_AT_USER_LEVEL" - // "PURCHASABLE_SUBSCRIPTIONS_IN_DETAILS_PAGE_APP_18_AT_USER_LEVEL" - // "PURCHASABLE_SUBSCRIPTIONS_IN_DETAILS_PAGE_APP_19_AT_USER_LEVEL" - // "PURCHASABLE_SUBSCRIPTIONS_IN_DETAILS_PAGE_APP_20_AT_USER_LEVEL" - // "GLUE_SCORE_INTEGRATION_DETAILS_PAGE_USER_LEVEL" - Glue score - // integration in Details Page. // "DETAILS_PAGE_PROMOTION_HOLDBACK_USER_LEVEL" - User level test code // for Details Page Global Holdback. - // "RECS_STALENESS_DEMOTION_1_USER_LEVEL" - // "RECS_STALENESS_DEMOTION_2_USER_LEVEL" // "RECS_STALENESS_DEMOTION_3_USER_LEVEL" // "RECS_STALENESS_DEMOTION_4_USER_LEVEL" // "RECS_STALENESS_DEMOTION_5_USER_LEVEL" @@ -139898,8 +140323,6 @@ type VendingConsumerProtoTrustedGenomeAnnotation struct { // "LOYALTY_SIGNUP_INTERSTITIAL_AT_USER_LEVEL" // "LOYALTY_SIGNUP_SUCCESS_AT_USER_LEVEL" // "PLAY_SUBMANAGEMENT_LOG_HOOK_USER_EXAMPLE" - // - // "FOP_OPTION_OR_EXISTING_INSTRUMENTS_MATCHED_PROMOTION_AT_USER_LEVEL" // "FOP_OPTION_MATCHED_PROMOTION_ONLY_AT_USER_LEVEL" // "PROMOTION_P13N_BANNER_ELIGIBLE_AT_USER_LEVEL" // "NEW_USER_FOP_PROMOTION_SEEN" @@ -139918,8 +140341,6 @@ type VendingConsumerProtoTrustedGenomeAnnotation struct { // "PROMOLINK_CDP_TITLE_PAGE_USER_LEVEL" // "PROMOLINK_CDP_TOPIC_PAGE_USER_LEVEL" // "PROMOLINK_CDP_GENERIC_PAGE_USER_LEVEL" - // "IN_APP_MESSAGING_APP_1_AT_USER_LEVEL" - // "POINTS_PROMOTION_CONTENT_HOME_AT_USER_LEVEL" // "POINTS_PROMOTION_CONTENT_PAGE_AT_USER_LEVEL" // "IN_APP_MESSAGING_APP_2_AT_USER_LEVEL" // "IN_APP_MESSAGING_APP_3_AT_USER_LEVEL" @@ -139953,57 +140374,18 @@ type VendingConsumerProtoTrustedGenomeAnnotation struct { // "IN_APP_OFFER_SAVED_APP_2_AT_USER_LEVEL" // "IN_APP_OFFER_SAVED_APP_3_AT_USER_LEVEL" // "IN_APP_OFFER_SAVED_APP_4_AT_USER_LEVEL" - // "PROMOLINK_CDP_CLUSTER_USER_LEVEL" - // "PROMOLINK_CDP_CLUSTER_TITLE_PAGE_USER_LEVEL" - // "PROMOLINK_CDP_CLUSTER_TOPIC_PAGE_USER_LEVEL" - // "PROMOLINK_CDP_CLUSTER_GENERIC_PAGE_USER_LEVEL" - // "PROMOLINK_CDP_CLUSTER_R2_USER_LEVEL" - // "PROMOLINK_CDP_CLUSTER_TITLE_PAGE_R2_USER_LEVEL" - // "PROMOLINK_CDP_CLUSTER_TOPIC_PAGE_R2_USER_LEVEL" - // "PROMOLINK_CDP_CLUSTER_GENERIC_PAGE_R2_USER_LEVEL" - // "FIRST_PARTY_PROMOTION_LIVE_OP_USER_LEVEL" - First Party Promotion - // LiveOps - // "FIRST_PARTY_PROMOTION_LIVE_OP_PRE_REDEMPTION_USER_LEVEL" - // - // "FIRST_PARTY_PROMOTION_LIVE_OP_PRE_REDEMPTION_ABOVE_DEV_EVENTS_USER_LE - // VEL" - // "SHOULD_SEE_FIRST_PARTY_PROMO_LIVE_OP_CTA_USER_LEVEL" // "SHOULD_SEE_FIRST_PARTY_PROMO_LIVE_OP_ON_SERP_MDP_USER_LEVEL" - // - // "SHOULD_SEE_FIRST_PARTY_PROMO_LIVE_OP_ON_APP_DETAILS_PAGE_USER_LEVEL" // "SHOULD_SEE_FIRST_PARTY_PROMO_LIVE_OP_ON_APP_DP_USER_LEVEL" // "CART_ABANDONMENT_SUBSCRIPTION_ONE_TIME_PASS_USER_LEVEL" - User // saw/would have seen the subscription one time pass offer - // "LEGOLAND_INSTANT_FOP_SCREEN_USER_LEVEL" - when abandonments the - // cart. - // "LEGOLAND_INSTANT_FOP_SCREEN_WITH_PROMOTION_USER_LEVEL" - // "DEVELOPER_PROMOTIONS_ELIGIBLE_USER_LEVEL" // "GOOGLE_PROMOTIONS_ELIGIBLE_USER_LEVEL" // "USER_TRIGGERED_IAP_PROMOTION_RETRIEVAL_USER_LEVEL" // "LOYALTY_IAP_UPSELL_USER_LEVEL" // "IAP_HAS_UNREDEEMED_PROMOTIONS_CLIENT_USER_LEVEL" - // "PROMOLINK_CDP_CLUSTER_R3_USER_LEVEL" - // "PROMOLINK_CDP_CLUSTER_TITLE_PAGE_R3_USER_LEVEL" - // "PROMOLINK_CDP_CLUSTER_TOPIC_PAGE_R3_USER_LEVEL" - // "PROMOLINK_CDP_CLUSTER_GENERIC_PAGE_R3_USER_LEVEL" - // "PROMOLINK_CDP_CLUSTER_R4_USER_LEVEL" - // "PROMOLINK_CDP_CLUSTER_TITLE_PAGE_R4_USER_LEVEL" - // "PROMOLINK_CDP_CLUSTER_TOPIC_PAGE_R4_USER_LEVEL" - // "PROMOLINK_CDP_CLUSTER_GENERIC_PAGE_R4_USER_LEVEL" - // "G1_PLAY_PASS_BUNDLE_ELIGIBLE_IN_PLAY_STORE_USER_LEVEL" - // - // "G1_PLAY_PASS_BUNDLE_ELIGIBLE_IN_PLAY_STORE_COMBINED_CHANNEL_USER_LEVE - // L" // "PLAY_STORE_IAP_SALES_USER_LEVEL" - Test codes for the feature and // each early-access partners for the Play Store IAP sales project. // go/play-store-iap-sales-dd // "PLAY_STORE_IAP_SALES_APP_1_USER_LEVEL" - // "PLAY_STORE_IAP_SALES_APP_2_USER_LEVEL" - // "PLAY_STORE_IAP_SALES_APP_3_USER_LEVEL" - // "PLAY_STORE_IAP_SALES_APP_4_USER_LEVEL" - // "PLAY_STORE_IAP_SALES_APP_5_USER_LEVEL" - // "PLAY_STORE_IAP_SALES_APP_6_USER_LEVEL" - // "PLAY_STORE_IAP_SALES_APP_7_USER_LEVEL" // "PLAY_STORE_IAP_SALES_APP_8_USER_LEVEL" // "PLAY_STORE_IAP_SALES_APP_9_USER_LEVEL" // "PLAY_STORE_IAP_SALES_APP_10_USER_LEVEL" @@ -140236,15 +140618,19 @@ type VendingConsumerProtoTrustedGenomeAnnotation struct { // "FOP_STEERING_PROMOTION_INITIAL_BILLING_PROFILE_USER_LEVEL" - User // level test code for Fop Steering Promotion with initial billing // profile. + // "FOP_STEERING_PROMOTION_INITIAL_BILLING_PROFILE_USER_LEVEL_V2" // "FOP_STEERING_PROMOTION_CART_ADD_FOP_USER_LEVEL" - User level test // code for Fop Steering Promotion displayed in cart with add fop // action. + // "FOP_STEERING_PROMOTION_CART_ADD_FOP_USER_LEVEL_V2" // "FOP_STEERING_PROMOTION_CART_CHANGE_FOP_USER_LEVEL" - User level // test code for Fop Steering Promotion displayed in cart with change // fop action. + // "FOP_STEERING_PROMOTION_CART_CHANGE_FOP_USER_LEVEL_V2" // "FOP_STEERING_PROMOTION_CART_APPLY_PROMOTION_USER_LEVEL" - User // level test code for Fop Steering Promotion displayed in cart with // apply promotion action. + // "FOP_STEERING_PROMOTION_CART_APPLY_PROMOTION_USER_LEVEL_V2" // "LOYALTY_STAMP_CARD_IN_PURCHASE_FLOW_USER_LEVEL" - User level test // code for Quest Platform Loyalty Stamp Card in Purchase flow. // "HAS_MONETIZATION_BEHAVIOR_USER_LEVEL" - User level test code for @@ -140266,6 +140652,8 @@ type VendingConsumerProtoTrustedGenomeAnnotation struct { // monetization experiments. // "LINK_BIOMETRICS_USER_LEVEL" - User level test code for link // biometrics for free app acquisitions. + // "LINK_BIOMETRICS_NEW_SETUP_USER_LEVEL" - User level test code for + // link biometrics for free app acquisitions new setup. // "POST_SUCCESS_ADD_BACKUP_FLOW_USER_LEVEL" - User level test code // for post success add backup flow. // "SKIP_CHECK_MARK_SCREEN_WITH_BACKUP_FLOW_USER_LEVEL" - User level @@ -140399,6 +140787,14 @@ type VendingConsumerProtoTrustedGenomeAnnotation struct { // "PBUY_V1_SEQUENCE_MODEL_LAUNCH_USER_LEVEL" - User level test code // for v1 sequence model launch layer, tracking users who actually get // different experience between control and treatment. + // "NOTIFICATION_SPEND_UPLIFT_MODEL_LAUNCH_USER_LEVEL" - User level + // test code for notification spend optimization study, tracking users + // who actually get different experience between control and treatment. + // "EXPANDED_DEV_SUCCESS_CLUSTER_USER_LEVEL" + // "COLLAPSED_DEV_SUCCESS_CLUSTER_USER_LEVEL" + // "TRIGGERED_DEV_SUCCESS_CLUSTER_USER_LEVEL" + // "GAME_DEV_SUCCESS_CLUSTER_USER_LEVEL" + // "APP_DEV_SUCCESS_CLUSTER_USER_LEVEL" // "USER_LEVEL_TEST_CODE_LIMIT" TestCode []string `json:"testCode,omitempty"` @@ -140839,6 +141235,8 @@ type VideoAssetsVenomTransition struct { // "OBJECTIVE_SAM_FEATURES_DONE" - The set of features that Smart Auto // Midrolls depends on for generating midroll ad breaks. // "OBJECTIVE_SPEECH_RECOGNITION_DONE" + // "OBJECTIVE_MULTI_TRACK_AUDIO_DONE" - All assets requested for + // multi-track audio content. Objective string `json:"objective,omitempty"` // Outcome: Whether the objective is reached or not. REQUIRED. @@ -145608,6 +146006,7 @@ type VideoContentSearchVideoAnchor struct { // "OCR_EDU" - OCR and ASR anchors generated for educational videos in // edu Raffia Overlay. // "ASR_SPAN_EDU" + // "GENERATIVE_ASR_I18N" - Anchors for i18n languages AnchorType string `json:"anchorType,omitempty"` // ContextText: Context text from ASR of long duration, used for longT5 @@ -146101,6 +146500,7 @@ type VideoContentSearchVideoAnchors struct { // "OCR_EDU" - OCR and ASR anchors generated for educational videos in // edu Raffia Overlay. // "ASR_SPAN_EDU" + // "GENERATIVE_ASR_I18N" - Anchors for i18n languages AnchorType string `json:"anchorType,omitempty"` // EntityGroupInfo: The list of entity groups derived from the caption @@ -146204,6 +146604,7 @@ type VideoContentSearchVideoAnchors struct { // "OCR_EDU" - OCR and ASR anchors generated for educational videos in // edu Raffia Overlay. // "ASR_SPAN_EDU" + // "GENERATIVE_ASR_I18N" - Anchors for i18n languages MergedAnchorsSources []string `json:"mergedAnchorsSources,omitempty"` // PredictedQuerylessTocUsefulness: The score that predicts the @@ -148636,14 +149037,17 @@ type VideoThumbnailsThumbnailScore struct { // "MODEL_RACY_WATCHPAGE_V4" - Racy watchpage model v4 // (go/racy-watchpage-v4). // "MODEL_RACY_WATCHPAGE_RELEASE" - Racy watchpage release version. - // "MODEL_RACY_SHORTS_WATCHPAGE_V1" - Racy shorts watchpage model v1. + // "MODEL_RACY_SHORTS_WATCHPAGE_V1" - LINT.IfChange Racy shorts + // watchpage model v1. // "MODEL_RACY_SHORTS_WATCHPAGE_V1_FLAGGED" // "MODEL_RACY_SHORTS_WATCHPAGE_V2" - Racy shorts watchpage model v2. // "MODEL_RACY_SHORTS_WATCHPAGE_V2_FLAGGED" // "MODEL_RACY_SHORTS_WATCHPAGE_RELEASE" - Racy shorts watchpage // release version. - // "MODEL_RACY_THUMB_2019_04_02" - Racy thumb model which corresponds - // to https://mldash.corp.google.com/experiments/156747527161891342 + // "MODEL_RACY_THUMB_2019_04_02" - + // LINT.ThenChange(//depot/google3/video/thumbnails/features/util/consts. + // h) Racy thumb model which corresponds to + // https://mldash.corp.google.com/experiments/156747527161891342 // "MODEL_RACY_THUMB_2019_08_12" - Racy thumb model V3 based on // cotraining. // https://mldash.corp.google.com/experiments/2626243069925683800 diff --git a/documentai/v1/documentai-api.json b/documentai/v1/documentai-api.json index 0605015ef30..686d9246d47 100644 --- a/documentai/v1/documentai-api.json +++ b/documentai/v1/documentai-api.json @@ -1042,7 +1042,7 @@ } } }, - "revision": "20230202", + "revision": "20230218", "rootUrl": "https://documentai.googleapis.com/", "schemas": { "GoogleCloudDocumentaiUiv1beta3BatchDeleteDocumentsMetadata": { @@ -3098,7 +3098,7 @@ "type": "string" }, "properties": { - "description": "Describing the nested structure, or composition of an entity.", + "description": "Description the nested structure, or composition of an entity.", "items": { "$ref": "GoogleCloudDocumentaiV1DocumentSchemaEntityTypeProperty" }, @@ -3140,9 +3140,9 @@ ], "enumDescriptions": [ "Unspecified occurrence type.", - "There will be zero or one instance of this entity type.", + "There will be zero or one instance of this entity type. The same entity instance may be mentioned multiple times.", "The entity type will appear zero or multiple times.", - "The entity type will only appear exactly once.", + "The entity type will only appear exactly once. The same entity instance may be mentioned multiple times.", "The entity type will appear once or more times." ], "type": "string" diff --git a/documentai/v1/documentai-gen.go b/documentai/v1/documentai-gen.go index 367cffb8915..13c1620dde4 100644 --- a/documentai/v1/documentai-gen.go +++ b/documentai/v1/documentai-gen.go @@ -3706,7 +3706,7 @@ type GoogleCloudDocumentaiV1DocumentSchemaEntityType struct { // honored for backward compatibility. Name string `json:"name,omitempty"` - // Properties: Describing the nested structure, or composition of an + // Properties: Description the nested structure, or composition of an // entity. Properties []*GoogleCloudDocumentaiV1DocumentSchemaEntityTypeProperty `json:"properties,omitempty"` @@ -3775,10 +3775,11 @@ type GoogleCloudDocumentaiV1DocumentSchemaEntityTypeProperty struct { // Possible values: // "OCCURRENCE_TYPE_UNSPECIFIED" - Unspecified occurrence type. // "OPTIONAL_ONCE" - There will be zero or one instance of this entity - // type. + // type. The same entity instance may be mentioned multiple times. // "OPTIONAL_MULTIPLE" - The entity type will appear zero or multiple // times. // "REQUIRED_ONCE" - The entity type will only appear exactly once. + // The same entity instance may be mentioned multiple times. // "REQUIRED_MULTIPLE" - The entity type will appear once or more // times. OccurrenceType string `json:"occurrenceType,omitempty"` diff --git a/documentai/v1beta3/documentai-api.json b/documentai/v1beta3/documentai-api.json index e2c3007776a..75f37478d42 100644 --- a/documentai/v1beta3/documentai-api.json +++ b/documentai/v1beta3/documentai-api.json @@ -984,7 +984,7 @@ } } }, - "revision": "20230202", + "revision": "20230218", "rootUrl": "https://documentai.googleapis.com/", "schemas": { "GoogleCloudDocumentaiUiv1beta3BatchDeleteDocumentsMetadata": { @@ -6060,7 +6060,7 @@ "type": "string" }, "properties": { - "description": "Describing the nested structure, or composition of an entity.", + "description": "Description the nested structure, or composition of an entity.", "items": { "$ref": "GoogleCloudDocumentaiV1beta3DocumentSchemaEntityTypeProperty" }, @@ -6102,9 +6102,9 @@ ], "enumDescriptions": [ "Unspecified occurrence type.", - "There will be zero or one instance of this entity type.", + "There will be zero or one instance of this entity type. The same entity instance may be mentioned multiple times.", "The entity type will appear zero or multiple times.", - "The entity type will only appear exactly once.", + "The entity type will only appear exactly once. The same entity instance may be mentioned multiple times.", "The entity type will appear once or more times." ], "type": "string" diff --git a/documentai/v1beta3/documentai-gen.go b/documentai/v1beta3/documentai-gen.go index e2b60863e9a..28d03b083e1 100644 --- a/documentai/v1beta3/documentai-gen.go +++ b/documentai/v1beta3/documentai-gen.go @@ -8756,7 +8756,7 @@ type GoogleCloudDocumentaiV1beta3DocumentSchemaEntityType struct { // honored for backward compatibility. Name string `json:"name,omitempty"` - // Properties: Describing the nested structure, or composition of an + // Properties: Description the nested structure, or composition of an // entity. Properties []*GoogleCloudDocumentaiV1beta3DocumentSchemaEntityTypeProperty `json:"properties,omitempty"` @@ -8825,10 +8825,11 @@ type GoogleCloudDocumentaiV1beta3DocumentSchemaEntityTypeProperty struct { // Possible values: // "OCCURRENCE_TYPE_UNSPECIFIED" - Unspecified occurrence type. // "OPTIONAL_ONCE" - There will be zero or one instance of this entity - // type. + // type. The same entity instance may be mentioned multiple times. // "OPTIONAL_MULTIPLE" - The entity type will appear zero or multiple // times. // "REQUIRED_ONCE" - The entity type will only appear exactly once. + // The same entity instance may be mentioned multiple times. // "REQUIRED_MULTIPLE" - The entity type will appear once or more // times. OccurrenceType string `json:"occurrenceType,omitempty"` diff --git a/drive/v3/drive-api.json b/drive/v3/drive-api.json index 17cc2ae7654..44b05805f75 100644 --- a/drive/v3/drive-api.json +++ b/drive/v3/drive-api.json @@ -35,7 +35,7 @@ "description": "Manages files in Drive including uploading, downloading, searching, detecting changes, and updating sharing permissions.", "discoveryVersion": "v1", "documentationLink": "https://developers.google.com/drive/", - "etag": "\"uWj2hSb4GVjzdDlAnRd2gbM1ZQ8/FMnBlYEB3J1VPpdpymK8SWXFoSQ\"", + "etag": "\"uWj2hSb4GVjzdDlAnRd2gbM1ZQ8/hqr9mhZQTOslZy0RlLi-ua3kvIM\"", "icons": { "x16": "https://ssl.gstatic.com/docs/doclist/images/drive_icon_16.png", "x32": "https://ssl.gstatic.com/docs/doclist/images/drive_icon_32.png" @@ -266,7 +266,7 @@ "supportsSubscription": true }, "watch": { - "description": "Subscribes to changes for a user.", + "description": "Subscribes to changes for a user. To use this method, you must include the pageToken query parameter.", "httpMethod": "POST", "id": "drive.changes.watch", "parameterOrder": [ @@ -1492,7 +1492,7 @@ "permissions": { "methods": { "create": { - "description": "Creates a permission for a file or shared drive.", + "description": "Creates a permission for a file or shared drive. For more information on creating permissions, see Share files, folders \u0026 drives.", "httpMethod": "POST", "id": "drive.permissions.create", "parameterOrder": [ @@ -2312,7 +2312,7 @@ } } }, - "revision": "20230212", + "revision": "20230219", "rootUrl": "https://www.googleapis.com/", "schemas": { "About": { @@ -3840,7 +3840,7 @@ "type": "object" }, "Permission": { - "description": "A permission for a file. A permission grants a user, group, domain or the world access to a file or a folder hierarchy.", + "description": "A permission for a file. A permission grants a user, group, domain, or the world access to a file or a folder hierarchy.", "id": "Permission", "properties": { "allowFileDiscovery": { @@ -3852,11 +3852,11 @@ "type": "boolean" }, "displayName": { - "description": "The \"pretty\" name of the value of the permission. The following is a list of examples for each type of permission: \n- user - User's full name, as defined for their Google account, such as \"Joe Smith.\" \n- group - Name of the Google Group, such as \"The Company Administrators.\" \n- domain - String domain name, such as \"thecompany.com.\" \n- anyone - No displayName is present.", + "description": "The \"pretty\" name of the value of the permission. The following is a list of examples for each type of permission: \n- user - User's full name, as defined for their Google Account, such as \"Joe Smith.\" \n- group - Name of the Google Group, such as \"The Company Administrators.\" \n- domain - String domain name, such as \"your-company.com.\" \n- anyone - No displayName is present.", "type": "string" }, "domain": { - "description": "The domain to which this permission refers.", + "description": "The domain to which this permission refers. The following options are currently allowed: \n- The entire domain, such as \"your-company.com.\" \n- A target audience, such as \"ID.audience.googledomains.com.\"", "type": "string" }, "emailAddress": { @@ -3864,7 +3864,7 @@ "type": "string" }, "expirationTime": { - "description": "The time at which this permission will expire (RFC 3339 date-time). Expiration times have the following restrictions: \n- They cannot be set on shared drive items \n- They can only be set on user and group permissions \n- The time must be in the future \n- The time cannot be more than a year in the future", + "description": "The time at which this permission will expire (RFC 3339 date-time). Expiration times have the following restrictions: \n- They cannot be set on shared drive items. \n- They can only be set on user and group permissions. \n- The time must be in the future. \n- The time cannot be more than one year in the future.", "format": "date-time", "type": "string" }, @@ -3878,11 +3878,11 @@ "type": "string" }, "pendingOwner": { - "description": "Whether the account associated with this permission is a pending owner. Only populated for user type permissions for files that are not in a shared drive.", + "description": "Whether the account associated with this permission is a pending owner. Only populated for user type permissions for files that aren't in a shared drive.", "type": "boolean" }, "permissionDetails": { - "description": "Details of whether the permissions on this shared drive item are inherited or directly on this item. This is an output-only field which is present only for shared drive items.", + "description": "Details of whether the permissions on this shared drive item are inherited or are directly on this item. This is an output-only field that's present only for shared drive items.", "items": { "properties": { "inherited": { @@ -3894,11 +3894,11 @@ "type": "string" }, "permissionType": { - "description": "The permission type for this user. While new values may be added in future, the following are currently possible: \n- file \n- member", + "description": "The permission type for this user. While new values may be added in future, the following are currently allowed: \n- file \n- member", "type": "string" }, "role": { - "description": "The primary role for this user. While new values may be added in the future, the following are currently possible: \n- organizer \n- fileOrganizer \n- writer \n- commenter \n- reader", + "description": "The primary role for this user. While new values may be added in the future, the following are currently allowed: \n- organizer \n- fileOrganizer \n- writer \n- commenter \n- reader", "type": "string" } }, @@ -3952,7 +3952,7 @@ "drive.permissions.create" ] }, - "description": "The type of the grantee. Valid values are: \n- user \n- group \n- domain \n- anyone When creating a permission, if type is user or group, you must provide an emailAddress for the user or group. When type is domain, you must provide a domain. There isn't extra information required for a anyone type.", + "description": "The type of the grantee. Valid values are: \n- user \n- group \n- domain \n- anyone When creating a permission, if type is user or group, you must provide an emailAddress for the user or group. When type is domain, you must provide a domain. There isn't extra information required for the anyone type.", "type": "string" }, "view": { diff --git a/drive/v3/drive-gen.go b/drive/v3/drive-gen.go index d8e454dfe37..060938b12e2 100644 --- a/drive/v3/drive-gen.go +++ b/drive/v3/drive-gen.go @@ -2487,7 +2487,7 @@ func (s *ModifyLabelsResponse) MarshalJSON() ([]byte, error) { } // Permission: A permission for a file. A permission grants a user, -// group, domain or the world access to a file or a folder hierarchy. +// group, domain, or the world access to a file or a folder hierarchy. type Permission struct { // AllowFileDiscovery: Whether the permission allows the file to be // discovered through search. This is only applicable for permissions of @@ -2500,15 +2500,18 @@ type Permission struct { // DisplayName: The "pretty" name of the value of the permission. The // following is a list of examples for each type of permission: - // - user - User's full name, as defined for their Google account, such + // - user - User's full name, as defined for their Google Account, such // as "Joe Smith." // - group - Name of the Google Group, such as "The Company // Administrators." - // - domain - String domain name, such as "thecompany.com." + // - domain - String domain name, such as "your-company.com." // - anyone - No displayName is present. DisplayName string `json:"displayName,omitempty"` - // Domain: The domain to which this permission refers. + // Domain: The domain to which this permission refers. The following + // options are currently allowed: + // - The entire domain, such as "your-company.com." + // - A target audience, such as "ID.audience.googledomains.com." Domain string `json:"domain,omitempty"` // EmailAddress: The email address of the user or group to which this @@ -2518,10 +2521,10 @@ type Permission struct { // ExpirationTime: The time at which this permission will expire (RFC // 3339 date-time). Expiration times have the following restrictions: // - // - They cannot be set on shared drive items - // - They can only be set on user and group permissions - // - The time must be in the future - // - The time cannot be more than a year in the future + // - They cannot be set on shared drive items. + // - They can only be set on user and group permissions. + // - The time must be in the future. + // - The time cannot be more than one year in the future. ExpirationTime string `json:"expirationTime,omitempty"` // Id: The ID of this permission. This is a unique identifier for the @@ -2535,12 +2538,12 @@ type Permission struct { // PendingOwner: Whether the account associated with this permission is // a pending owner. Only populated for user type permissions for files - // that are not in a shared drive. + // that aren't in a shared drive. PendingOwner bool `json:"pendingOwner,omitempty"` // PermissionDetails: Details of whether the permissions on this shared - // drive item are inherited or directly on this item. This is an - // output-only field which is present only for shared drive items. + // drive item are inherited or are directly on this item. This is an + // output-only field that's present only for shared drive items. PermissionDetails []*PermissionPermissionDetails `json:"permissionDetails,omitempty"` // PhotoLink: A link to the user's profile photo, if available. @@ -2567,7 +2570,7 @@ type Permission struct { // - anyone When creating a permission, if type is user or group, you // must provide an emailAddress for the user or group. When type is // domain, you must provide a domain. There isn't extra information - // required for a anyone type. + // required for the anyone type. Type string `json:"type,omitempty"` // View: Indicates the view for this permission. Only populated for @@ -2613,13 +2616,13 @@ type PermissionPermissionDetails struct { InheritedFrom string `json:"inheritedFrom,omitempty"` // PermissionType: The permission type for this user. While new values - // may be added in future, the following are currently possible: + // may be added in future, the following are currently allowed: // - file // - member PermissionType string `json:"permissionType,omitempty"` // Role: The primary role for this user. While new values may be added - // in the future, the following are currently possible: + // in the future, the following are currently allowed: // - organizer // - fileOrganizer // - writer @@ -4081,7 +4084,8 @@ type ChangesWatchCall struct { header_ http.Header } -// Watch: Subscribes to changes for a user. +// Watch: Subscribes to changes for a user. To use this method, you must +// include the pageToken query parameter. // // - pageToken: The token for continuing a previous list request on the // next page. This should be set to the value of 'nextPageToken' from @@ -4289,7 +4293,7 @@ func (c *ChangesWatchCall) Do(opts ...googleapi.CallOption) (*Channel, error) { } return ret, nil // { - // "description": "Subscribes to changes for a user.", + // "description": "Subscribes to changes for a user. To use this method, you must include the pageToken query parameter.", // "httpMethod": "POST", // "id": "drive.changes.watch", // "parameterOrder": [ @@ -9101,7 +9105,9 @@ type PermissionsCreateCall struct { header_ http.Header } -// Create: Creates a permission for a file or shared drive. +// Create: Creates a permission for a file or shared drive. For more +// information on creating permissions, see Share files, folders & +// drives. // // - fileId: The ID of the file or shared drive. func (r *PermissionsService) Create(fileId string, permission *Permission) *PermissionsCreateCall { @@ -9277,7 +9283,7 @@ func (c *PermissionsCreateCall) Do(opts ...googleapi.CallOption) (*Permission, e } return ret, nil // { - // "description": "Creates a permission for a file or shared drive.", + // "description": "Creates a permission for a file or shared drive. For more information on creating permissions, see Share files, folders \u0026 drives.", // "httpMethod": "POST", // "id": "drive.permissions.create", // "parameterOrder": [ diff --git a/monitoring/v1/monitoring-api.json b/monitoring/v1/monitoring-api.json index 4e47129d672..84ce7fb4a09 100644 --- a/monitoring/v1/monitoring-api.json +++ b/monitoring/v1/monitoring-api.json @@ -806,7 +806,7 @@ } } }, - "revision": "20230130", + "revision": "20230220", "rootUrl": "https://monitoring.googleapis.com/", "schemas": { "Aggregation": { @@ -1357,6 +1357,27 @@ }, "type": "object" }, + "IncidentList": { + "description": "A widget that displays a list of incidents", + "id": "IncidentList", + "properties": { + "monitoredResources": { + "description": "Optional. The monitored resource for which incidents are listed. The resource doesn't need to be fully specified. That is, you can specify the resource type but not the values of the resource labels. The resource type and labels are used for filtering.", + "items": { + "$ref": "MonitoredResource" + }, + "type": "array" + }, + "policyNames": { + "description": "Optional. A list of alert policy names to filter the incident list by. Don't include the project ID prefix in the policy name. For example, use alertPolicies/utilization.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "ListDashboardsResponse": { "description": "The ListDashboards request.", "id": "ListDashboardsResponse", @@ -1474,6 +1495,24 @@ }, "type": "object" }, + "MonitoredResource": { + "description": "An object representing a resource that can be used for monitoring, logging, billing, or other purposes. Examples include virtual machine instances, databases, and storage devices such as disks. The type field identifies a MonitoredResourceDescriptor object that describes the resource's schema. Information in the labels field identifies the actual resource and its attributes according to the schema. For example, a particular Compute Engine VM instance could be represented by the following object, because the MonitoredResourceDescriptor for \"gce_instance\" has labels \"project_id\", \"instance_id\" and \"zone\": { \"type\": \"gce_instance\", \"labels\": { \"project_id\": \"my-project\", \"instance_id\": \"12345678901234\", \"zone\": \"us-central1-a\" }} ", + "id": "MonitoredResource", + "properties": { + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Required. Values for all of the labels listed in the associated monitored resource descriptor. For example, Compute Engine VM instances use the labels \"project_id\", \"instance_id\", and \"zone\".", + "type": "object" + }, + "type": { + "description": "Required. The monitored resource type. This field must match the type field of a MonitoredResourceDescriptor object. For example, the type of a Compute Engine VM instance is gce_instance. For a list of types, see Monitoring resource types (https://cloud.google.com/monitoring/api/resources) and Logging resource types (https://cloud.google.com/logging/docs/api/v2/resource-list).", + "type": "string" + } + }, + "type": "object" + }, "MosaicLayout": { "description": "A mosaic layout divides the available space into a grid of blocks, and overlays the grid with tiles. Unlike GridLayout, tiles may span multiple grid blocks and can be placed at arbitrary locations in the grid.", "id": "MosaicLayout", @@ -2213,6 +2252,10 @@ "$ref": "CollapsibleGroup", "description": "A widget that groups the other widgets. All widgets that are within the area spanned by the grouping widget are considered member widgets." }, + "incidentList": { + "$ref": "IncidentList", + "description": "A widget that shows list of incidents." + }, "logsPanel": { "$ref": "LogsPanel", "description": "A widget that shows a stream of logs." diff --git a/monitoring/v1/monitoring-gen.go b/monitoring/v1/monitoring-gen.go index 3568e3463a1..c37a3acc14c 100644 --- a/monitoring/v1/monitoring-gen.go +++ b/monitoring/v1/monitoring-gen.go @@ -1298,6 +1298,44 @@ func (s *HttpBody) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// IncidentList: A widget that displays a list of incidents +type IncidentList struct { + // MonitoredResources: Optional. The monitored resource for which + // incidents are listed. The resource doesn't need to be fully + // specified. That is, you can specify the resource type but not the + // values of the resource labels. The resource type and labels are used + // for filtering. + MonitoredResources []*MonitoredResource `json:"monitoredResources,omitempty"` + + // PolicyNames: Optional. A list of alert policy names to filter the + // incident list by. Don't include the project ID prefix in the policy + // name. For example, use alertPolicies/utilization. + PolicyNames []string `json:"policyNames,omitempty"` + + // ForceSendFields is a list of field names (e.g. "MonitoredResources") + // 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. "MonitoredResources") 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 *IncidentList) MarshalJSON() ([]byte, error) { + type NoMethod IncidentList + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // ListDashboardsResponse: The ListDashboards request. type ListDashboardsResponse struct { // Dashboards: The list of requested dashboards. @@ -1535,6 +1573,56 @@ func (s *MonitoredProject) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// MonitoredResource: An object representing a resource that can be used +// for monitoring, logging, billing, or other purposes. Examples include +// virtual machine instances, databases, and storage devices such as +// disks. The type field identifies a MonitoredResourceDescriptor object +// that describes the resource's schema. Information in the labels field +// identifies the actual resource and its attributes according to the +// schema. For example, a particular Compute Engine VM instance could be +// represented by the following object, because the +// MonitoredResourceDescriptor for "gce_instance" has labels +// "project_id", "instance_id" and "zone": { "type": "gce_instance", +// "labels": { "project_id": "my-project", "instance_id": +// "12345678901234", "zone": "us-central1-a" }} +type MonitoredResource struct { + // Labels: Required. Values for all of the labels listed in the + // associated monitored resource descriptor. For example, Compute Engine + // VM instances use the labels "project_id", "instance_id", and "zone". + Labels map[string]string `json:"labels,omitempty"` + + // Type: Required. The monitored resource type. This field must match + // the type field of a MonitoredResourceDescriptor object. For example, + // the type of a Compute Engine VM instance is gce_instance. For a list + // of types, see Monitoring resource types + // (https://cloud.google.com/monitoring/api/resources) and Logging + // resource types + // (https://cloud.google.com/logging/docs/api/v2/resource-list). + Type string `json:"type,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Labels") 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. "Labels") 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 *MonitoredResource) MarshalJSON() ([]byte, error) { + type NoMethod MonitoredResource + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // MosaicLayout: A mosaic layout divides the available space into a grid // of blocks, and overlays the grid with tiles. Unlike GridLayout, tiles // may span multiple grid blocks and can be placed at arbitrary @@ -2778,6 +2866,9 @@ type Widget struct { // considered member widgets. CollapsibleGroup *CollapsibleGroup `json:"collapsibleGroup,omitempty"` + // IncidentList: A widget that shows list of incidents. + IncidentList *IncidentList `json:"incidentList,omitempty"` + // LogsPanel: A widget that shows a stream of logs. LogsPanel *LogsPanel `json:"logsPanel,omitempty"` diff --git a/policysimulator/v1/policysimulator-api.json b/policysimulator/v1/policysimulator-api.json index b195abd1964..42b8e6f0faf 100644 --- a/policysimulator/v1/policysimulator-api.json +++ b/policysimulator/v1/policysimulator-api.json @@ -109,6 +109,39 @@ "resources": { "locations": { "resources": { + "orgPolicyViolationsPreviews": { + "resources": { + "operations": { + "methods": { + "get": { + "description": "Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.", + "flatPath": "v1/folders/{foldersId}/locations/{locationsId}/orgPolicyViolationsPreviews/{orgPolicyViolationsPreviewsId}/operations/{operationsId}", + "httpMethod": "GET", + "id": "policysimulator.folders.locations.orgPolicyViolationsPreviews.operations.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource.", + "location": "path", + "pattern": "^folders/[^/]+/locations/[^/]+/orgPolicyViolationsPreviews/[^/]+/operations/.*$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } + }, "replays": { "methods": { "create": { @@ -356,6 +389,39 @@ "resources": { "locations": { "resources": { + "orgPolicyViolationsPreviews": { + "resources": { + "operations": { + "methods": { + "get": { + "description": "Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.", + "flatPath": "v1/organizations/{organizationsId}/locations/{locationsId}/orgPolicyViolationsPreviews/{orgPolicyViolationsPreviewsId}/operations/{operationsId}", + "httpMethod": "GET", + "id": "policysimulator.organizations.locations.orgPolicyViolationsPreviews.operations.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource.", + "location": "path", + "pattern": "^organizations/[^/]+/locations/[^/]+/orgPolicyViolationsPreviews/[^/]+/operations/.*$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } + }, "replays": { "methods": { "create": { @@ -533,6 +599,39 @@ "resources": { "locations": { "resources": { + "orgPolicyViolationsPreviews": { + "resources": { + "operations": { + "methods": { + "get": { + "description": "Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/orgPolicyViolationsPreviews/{orgPolicyViolationsPreviewsId}/operations/{operationsId}", + "httpMethod": "GET", + "id": "policysimulator.projects.locations.orgPolicyViolationsPreviews.operations.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/orgPolicyViolationsPreviews/[^/]+/operations/.*$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } + }, "replays": { "methods": { "create": { @@ -707,7 +806,7 @@ } } }, - "revision": "20221112", + "revision": "20230219", "rootUrl": "https://policysimulator.googleapis.com/", "schemas": { "GoogleCloudPolicysimulatorV1AccessStateDiff": { @@ -1325,7 +1424,7 @@ "description": "The condition that is associated with this binding. If the condition evaluates to `true`, then this binding applies to the current request. If the condition evaluates to `false`, then this binding does not apply to the current request. However, a different role binding might grant the same role to one or more of the principals in this binding. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies)." }, "members": { - "description": "Specifies the principals requesting access for a Google Cloud resource. `members` can have the following values: * `allUsers`: A special identifier that represents anyone who is on the internet; with or without a Google account. * `allAuthenticatedUsers`: A special identifier that represents anyone who is authenticated with a Google account or a service account. Does not include identities that come from external identity providers (IdPs) through identity federation. * `user:{emailid}`: An email address that represents a specific Google account. For example, `alice@example.com` . * `serviceAccount:{emailid}`: An email address that represents a Google service account. For example, `my-other-app@appspot.gserviceaccount.com`. * `serviceAccount:{projectid}.svc.id.goog[{namespace}/{kubernetes-sa}]`: An identifier for a [Kubernetes service account](https://cloud.google.com/kubernetes-engine/docs/how-to/kubernetes-service-accounts). For example, `my-project.svc.id.goog[my-namespace/my-kubernetes-sa]`. * `group:{emailid}`: An email address that represents a Google group. For example, `admins@example.com`. * `deleted:user:{emailid}?uid={uniqueid}`: An email address (plus unique identifier) representing a user that has been recently deleted. For example, `alice@example.com?uid=123456789012345678901`. If the user is recovered, this value reverts to `user:{emailid}` and the recovered user retains the role in the binding. * `deleted:serviceAccount:{emailid}?uid={uniqueid}`: An email address (plus unique identifier) representing a service account that has been recently deleted. For example, `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`. If the service account is undeleted, this value reverts to `serviceAccount:{emailid}` and the undeleted service account retains the role in the binding. * `deleted:group:{emailid}?uid={uniqueid}`: An email address (plus unique identifier) representing a Google group that has been recently deleted. For example, `admins@example.com?uid=123456789012345678901`. If the group is recovered, this value reverts to `group:{emailid}` and the recovered group retains the role in the binding. * `domain:{domain}`: The G Suite domain (primary) that represents all the users of that domain. For example, `google.com` or `example.com`. ", + "description": "Specifies the principals requesting access for a Google Cloud resource. `members` can have the following values: * `allUsers`: A special identifier that represents anyone who is on the internet; with or without a Google account. * `allAuthenticatedUsers`: A special identifier that represents anyone who is authenticated with a Google account or a service account. Does not include identities that come from external identity providers (IdPs) through identity federation. * `user:{emailid}`: An email address that represents a specific Google account. For example, `alice@example.com` . * `serviceAccount:{emailid}`: An email address that represents a Google service account. For example, `my-other-app@appspot.gserviceaccount.com`. * `serviceAccount:{projectid}.svc.id.goog[{namespace}/{kubernetes-sa}]`: An identifier for a [Kubernetes service account](https://cloud.google.com/kubernetes-engine/docs/how-to/kubernetes-service-accounts). For example, `my-project.svc.id.goog[my-namespace/my-kubernetes-sa]`. * `group:{emailid}`: An email address that represents a Google group. For example, `admins@example.com`. * `domain:{domain}`: The G Suite domain (primary) that represents all the users of that domain. For example, `google.com` or `example.com`. * `deleted:user:{emailid}?uid={uniqueid}`: An email address (plus unique identifier) representing a user that has been recently deleted. For example, `alice@example.com?uid=123456789012345678901`. If the user is recovered, this value reverts to `user:{emailid}` and the recovered user retains the role in the binding. * `deleted:serviceAccount:{emailid}?uid={uniqueid}`: An email address (plus unique identifier) representing a service account that has been recently deleted. For example, `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`. If the service account is undeleted, this value reverts to `serviceAccount:{emailid}` and the undeleted service account retains the role in the binding. * `deleted:group:{emailid}?uid={uniqueid}`: An email address (plus unique identifier) representing a Google group that has been recently deleted. For example, `admins@example.com?uid=123456789012345678901`. If the group is recovered, this value reverts to `group:{emailid}` and the recovered group retains the role in the binding.", "items": { "type": "string" }, diff --git a/policysimulator/v1/policysimulator-gen.go b/policysimulator/v1/policysimulator-gen.go index 19f3b851ce6..2382b4ceb41 100644 --- a/policysimulator/v1/policysimulator-gen.go +++ b/policysimulator/v1/policysimulator-gen.go @@ -160,6 +160,7 @@ type FoldersService struct { func NewFoldersLocationsService(s *Service) *FoldersLocationsService { rs := &FoldersLocationsService{s: s} + rs.OrgPolicyViolationsPreviews = NewFoldersLocationsOrgPolicyViolationsPreviewsService(s) rs.Replays = NewFoldersLocationsReplaysService(s) return rs } @@ -167,9 +168,32 @@ func NewFoldersLocationsService(s *Service) *FoldersLocationsService { type FoldersLocationsService struct { s *Service + OrgPolicyViolationsPreviews *FoldersLocationsOrgPolicyViolationsPreviewsService + Replays *FoldersLocationsReplaysService } +func NewFoldersLocationsOrgPolicyViolationsPreviewsService(s *Service) *FoldersLocationsOrgPolicyViolationsPreviewsService { + rs := &FoldersLocationsOrgPolicyViolationsPreviewsService{s: s} + rs.Operations = NewFoldersLocationsOrgPolicyViolationsPreviewsOperationsService(s) + return rs +} + +type FoldersLocationsOrgPolicyViolationsPreviewsService struct { + s *Service + + Operations *FoldersLocationsOrgPolicyViolationsPreviewsOperationsService +} + +func NewFoldersLocationsOrgPolicyViolationsPreviewsOperationsService(s *Service) *FoldersLocationsOrgPolicyViolationsPreviewsOperationsService { + rs := &FoldersLocationsOrgPolicyViolationsPreviewsOperationsService{s: s} + return rs +} + +type FoldersLocationsOrgPolicyViolationsPreviewsOperationsService struct { + s *Service +} + func NewFoldersLocationsReplaysService(s *Service) *FoldersLocationsReplaysService { rs := &FoldersLocationsReplaysService{s: s} rs.Operations = NewFoldersLocationsReplaysOperationsService(s) @@ -226,6 +250,7 @@ type OrganizationsService struct { func NewOrganizationsLocationsService(s *Service) *OrganizationsLocationsService { rs := &OrganizationsLocationsService{s: s} + rs.OrgPolicyViolationsPreviews = NewOrganizationsLocationsOrgPolicyViolationsPreviewsService(s) rs.Replays = NewOrganizationsLocationsReplaysService(s) return rs } @@ -233,9 +258,32 @@ func NewOrganizationsLocationsService(s *Service) *OrganizationsLocationsService type OrganizationsLocationsService struct { s *Service + OrgPolicyViolationsPreviews *OrganizationsLocationsOrgPolicyViolationsPreviewsService + Replays *OrganizationsLocationsReplaysService } +func NewOrganizationsLocationsOrgPolicyViolationsPreviewsService(s *Service) *OrganizationsLocationsOrgPolicyViolationsPreviewsService { + rs := &OrganizationsLocationsOrgPolicyViolationsPreviewsService{s: s} + rs.Operations = NewOrganizationsLocationsOrgPolicyViolationsPreviewsOperationsService(s) + return rs +} + +type OrganizationsLocationsOrgPolicyViolationsPreviewsService struct { + s *Service + + Operations *OrganizationsLocationsOrgPolicyViolationsPreviewsOperationsService +} + +func NewOrganizationsLocationsOrgPolicyViolationsPreviewsOperationsService(s *Service) *OrganizationsLocationsOrgPolicyViolationsPreviewsOperationsService { + rs := &OrganizationsLocationsOrgPolicyViolationsPreviewsOperationsService{s: s} + return rs +} + +type OrganizationsLocationsOrgPolicyViolationsPreviewsOperationsService struct { + s *Service +} + func NewOrganizationsLocationsReplaysService(s *Service) *OrganizationsLocationsReplaysService { rs := &OrganizationsLocationsReplaysService{s: s} rs.Operations = NewOrganizationsLocationsReplaysOperationsService(s) @@ -283,6 +331,7 @@ type ProjectsService struct { func NewProjectsLocationsService(s *Service) *ProjectsLocationsService { rs := &ProjectsLocationsService{s: s} + rs.OrgPolicyViolationsPreviews = NewProjectsLocationsOrgPolicyViolationsPreviewsService(s) rs.Replays = NewProjectsLocationsReplaysService(s) return rs } @@ -290,9 +339,32 @@ func NewProjectsLocationsService(s *Service) *ProjectsLocationsService { type ProjectsLocationsService struct { s *Service + OrgPolicyViolationsPreviews *ProjectsLocationsOrgPolicyViolationsPreviewsService + Replays *ProjectsLocationsReplaysService } +func NewProjectsLocationsOrgPolicyViolationsPreviewsService(s *Service) *ProjectsLocationsOrgPolicyViolationsPreviewsService { + rs := &ProjectsLocationsOrgPolicyViolationsPreviewsService{s: s} + rs.Operations = NewProjectsLocationsOrgPolicyViolationsPreviewsOperationsService(s) + return rs +} + +type ProjectsLocationsOrgPolicyViolationsPreviewsService struct { + s *Service + + Operations *ProjectsLocationsOrgPolicyViolationsPreviewsOperationsService +} + +func NewProjectsLocationsOrgPolicyViolationsPreviewsOperationsService(s *Service) *ProjectsLocationsOrgPolicyViolationsPreviewsOperationsService { + rs := &ProjectsLocationsOrgPolicyViolationsPreviewsOperationsService{s: s} + return rs +} + +type ProjectsLocationsOrgPolicyViolationsPreviewsOperationsService struct { + s *Service +} + func NewProjectsLocationsReplaysService(s *Service) *ProjectsLocationsReplaysService { rs := &ProjectsLocationsReplaysService{s: s} rs.Operations = NewProjectsLocationsReplaysOperationsService(s) @@ -1365,7 +1437,9 @@ type GoogleIamV1Binding struct { // (https://cloud.google.com/kubernetes-engine/docs/how-to/kubernetes-service-accounts). // For example, `my-project.svc.id.goog[my-namespace/my-kubernetes-sa]`. // * `group:{emailid}`: An email address that represents a Google group. - // For example, `admins@example.com`. * + // For example, `admins@example.com`. * `domain:{domain}`: The G Suite + // domain (primary) that represents all the users of that domain. For + // example, `google.com` or `example.com`. * // `deleted:user:{emailid}?uid={uniqueid}`: An email address (plus // unique identifier) representing a user that has been recently // deleted. For example, `alice@example.com?uid=123456789012345678901`. @@ -1382,9 +1456,7 @@ type GoogleIamV1Binding struct { // that has been recently deleted. For example, // `admins@example.com?uid=123456789012345678901`. If the group is // recovered, this value reverts to `group:{emailid}` and the recovered - // group retains the role in the binding. * `domain:{domain}`: The G - // Suite domain (primary) that represents all the users of that domain. - // For example, `google.com` or `example.com`. + // group retains the role in the binding. Members []string `json:"members,omitempty"` // Role: Role that is assigned to the list of `members`, or principals. @@ -1770,6 +1842,154 @@ func (s *GoogleTypeExpr) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// method id "policysimulator.folders.locations.orgPolicyViolationsPreviews.operations.get": + +type FoldersLocationsOrgPolicyViolationsPreviewsOperationsGetCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Gets the latest state of a long-running operation. Clients can +// use this method to poll the operation result at intervals as +// recommended by the API service. +// +// - name: The name of the operation resource. +func (r *FoldersLocationsOrgPolicyViolationsPreviewsOperationsService) Get(name string) *FoldersLocationsOrgPolicyViolationsPreviewsOperationsGetCall { + c := &FoldersLocationsOrgPolicyViolationsPreviewsOperationsGetCall{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 *FoldersLocationsOrgPolicyViolationsPreviewsOperationsGetCall) Fields(s ...googleapi.Field) *FoldersLocationsOrgPolicyViolationsPreviewsOperationsGetCall { + 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 *FoldersLocationsOrgPolicyViolationsPreviewsOperationsGetCall) IfNoneMatch(entityTag string) *FoldersLocationsOrgPolicyViolationsPreviewsOperationsGetCall { + 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 *FoldersLocationsOrgPolicyViolationsPreviewsOperationsGetCall) Context(ctx context.Context) *FoldersLocationsOrgPolicyViolationsPreviewsOperationsGetCall { + 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 *FoldersLocationsOrgPolicyViolationsPreviewsOperationsGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *FoldersLocationsOrgPolicyViolationsPreviewsOperationsGetCall) 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 "policysimulator.folders.locations.orgPolicyViolationsPreviews.operations.get" 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 *FoldersLocationsOrgPolicyViolationsPreviewsOperationsGetCall) 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": "Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.", + // "flatPath": "v1/folders/{foldersId}/locations/{locationsId}/orgPolicyViolationsPreviews/{orgPolicyViolationsPreviewsId}/operations/{operationsId}", + // "httpMethod": "GET", + // "id": "policysimulator.folders.locations.orgPolicyViolationsPreviews.operations.get", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "The name of the operation resource.", + // "location": "path", + // "pattern": "^folders/[^/]+/locations/[^/]+/orgPolicyViolationsPreviews/[^/]+/operations/.*$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+name}", + // "response": { + // "$ref": "GoogleLongrunningOperation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + // method id "policysimulator.folders.locations.replays.create": type FoldersLocationsReplaysCreateCall struct { @@ -2994,6 +3214,154 @@ func (c *OperationsListCall) Pages(ctx context.Context, f func(*GoogleLongrunnin } } +// method id "policysimulator.organizations.locations.orgPolicyViolationsPreviews.operations.get": + +type OrganizationsLocationsOrgPolicyViolationsPreviewsOperationsGetCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Gets the latest state of a long-running operation. Clients can +// use this method to poll the operation result at intervals as +// recommended by the API service. +// +// - name: The name of the operation resource. +func (r *OrganizationsLocationsOrgPolicyViolationsPreviewsOperationsService) Get(name string) *OrganizationsLocationsOrgPolicyViolationsPreviewsOperationsGetCall { + c := &OrganizationsLocationsOrgPolicyViolationsPreviewsOperationsGetCall{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 *OrganizationsLocationsOrgPolicyViolationsPreviewsOperationsGetCall) Fields(s ...googleapi.Field) *OrganizationsLocationsOrgPolicyViolationsPreviewsOperationsGetCall { + 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 *OrganizationsLocationsOrgPolicyViolationsPreviewsOperationsGetCall) IfNoneMatch(entityTag string) *OrganizationsLocationsOrgPolicyViolationsPreviewsOperationsGetCall { + 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 *OrganizationsLocationsOrgPolicyViolationsPreviewsOperationsGetCall) Context(ctx context.Context) *OrganizationsLocationsOrgPolicyViolationsPreviewsOperationsGetCall { + 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 *OrganizationsLocationsOrgPolicyViolationsPreviewsOperationsGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *OrganizationsLocationsOrgPolicyViolationsPreviewsOperationsGetCall) 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 "policysimulator.organizations.locations.orgPolicyViolationsPreviews.operations.get" 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 *OrganizationsLocationsOrgPolicyViolationsPreviewsOperationsGetCall) 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": "Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.", + // "flatPath": "v1/organizations/{organizationsId}/locations/{locationsId}/orgPolicyViolationsPreviews/{orgPolicyViolationsPreviewsId}/operations/{operationsId}", + // "httpMethod": "GET", + // "id": "policysimulator.organizations.locations.orgPolicyViolationsPreviews.operations.get", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "The name of the operation resource.", + // "location": "path", + // "pattern": "^organizations/[^/]+/locations/[^/]+/orgPolicyViolationsPreviews/[^/]+/operations/.*$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+name}", + // "response": { + // "$ref": "GoogleLongrunningOperation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + // method id "policysimulator.organizations.locations.replays.create": type OrganizationsLocationsReplaysCreateCall struct { @@ -3856,6 +4224,154 @@ func (c *OrganizationsLocationsReplaysResultsListCall) Pages(ctx context.Context } } +// method id "policysimulator.projects.locations.orgPolicyViolationsPreviews.operations.get": + +type ProjectsLocationsOrgPolicyViolationsPreviewsOperationsGetCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Gets the latest state of a long-running operation. Clients can +// use this method to poll the operation result at intervals as +// recommended by the API service. +// +// - name: The name of the operation resource. +func (r *ProjectsLocationsOrgPolicyViolationsPreviewsOperationsService) Get(name string) *ProjectsLocationsOrgPolicyViolationsPreviewsOperationsGetCall { + c := &ProjectsLocationsOrgPolicyViolationsPreviewsOperationsGetCall{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 *ProjectsLocationsOrgPolicyViolationsPreviewsOperationsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsOrgPolicyViolationsPreviewsOperationsGetCall { + 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 *ProjectsLocationsOrgPolicyViolationsPreviewsOperationsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsOrgPolicyViolationsPreviewsOperationsGetCall { + 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 *ProjectsLocationsOrgPolicyViolationsPreviewsOperationsGetCall) Context(ctx context.Context) *ProjectsLocationsOrgPolicyViolationsPreviewsOperationsGetCall { + 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 *ProjectsLocationsOrgPolicyViolationsPreviewsOperationsGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsOrgPolicyViolationsPreviewsOperationsGetCall) 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 "policysimulator.projects.locations.orgPolicyViolationsPreviews.operations.get" 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 *ProjectsLocationsOrgPolicyViolationsPreviewsOperationsGetCall) 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": "Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/orgPolicyViolationsPreviews/{orgPolicyViolationsPreviewsId}/operations/{operationsId}", + // "httpMethod": "GET", + // "id": "policysimulator.projects.locations.orgPolicyViolationsPreviews.operations.get", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "The name of the operation resource.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/orgPolicyViolationsPreviews/[^/]+/operations/.*$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+name}", + // "response": { + // "$ref": "GoogleLongrunningOperation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + // method id "policysimulator.projects.locations.replays.create": type ProjectsLocationsReplaysCreateCall struct { diff --git a/policysimulator/v1alpha/policysimulator-api.json b/policysimulator/v1alpha/policysimulator-api.json index cde057b1866..b3c1a2d2aeb 100644 --- a/policysimulator/v1alpha/policysimulator-api.json +++ b/policysimulator/v1alpha/policysimulator-api.json @@ -109,6 +109,39 @@ "resources": { "locations": { "resources": { + "orgPolicyViolationsPreviews": { + "resources": { + "operations": { + "methods": { + "get": { + "description": "Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.", + "flatPath": "v1alpha/folders/{foldersId}/locations/{locationsId}/orgPolicyViolationsPreviews/{orgPolicyViolationsPreviewsId}/operations/{operationsId}", + "httpMethod": "GET", + "id": "policysimulator.folders.locations.orgPolicyViolationsPreviews.operations.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource.", + "location": "path", + "pattern": "^folders/[^/]+/locations/[^/]+/orgPolicyViolationsPreviews/[^/]+/operations/.*$", + "required": true, + "type": "string" + } + }, + "path": "v1alpha/{+name}", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } + }, "replays": { "resources": { "operations": { @@ -261,6 +294,39 @@ "resources": { "locations": { "resources": { + "orgPolicyViolationsPreviews": { + "resources": { + "operations": { + "methods": { + "get": { + "description": "Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.", + "flatPath": "v1alpha/organizations/{organizationsId}/locations/{locationsId}/orgPolicyViolationsPreviews/{orgPolicyViolationsPreviewsId}/operations/{operationsId}", + "httpMethod": "GET", + "id": "policysimulator.organizations.locations.orgPolicyViolationsPreviews.operations.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource.", + "location": "path", + "pattern": "^organizations/[^/]+/locations/[^/]+/orgPolicyViolationsPreviews/[^/]+/operations/.*$", + "required": true, + "type": "string" + } + }, + "path": "v1alpha/{+name}", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } + }, "replays": { "resources": { "operations": { @@ -343,6 +409,39 @@ "resources": { "locations": { "resources": { + "orgPolicyViolationsPreviews": { + "resources": { + "operations": { + "methods": { + "get": { + "description": "Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.", + "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/orgPolicyViolationsPreviews/{orgPolicyViolationsPreviewsId}/operations/{operationsId}", + "httpMethod": "GET", + "id": "policysimulator.projects.locations.orgPolicyViolationsPreviews.operations.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/orgPolicyViolationsPreviews/[^/]+/operations/.*$", + "required": true, + "type": "string" + } + }, + "path": "v1alpha/{+name}", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } + }, "replays": { "resources": { "operations": { @@ -422,7 +521,7 @@ } } }, - "revision": "20221112", + "revision": "20230219", "rootUrl": "https://policysimulator.googleapis.com/", "schemas": { "GoogleCloudPolicysimulatorV1Replay": { @@ -708,7 +807,7 @@ "description": "The condition that is associated with this binding. If the condition evaluates to `true`, then this binding applies to the current request. If the condition evaluates to `false`, then this binding does not apply to the current request. However, a different role binding might grant the same role to one or more of the principals in this binding. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies)." }, "members": { - "description": "Specifies the principals requesting access for a Google Cloud resource. `members` can have the following values: * `allUsers`: A special identifier that represents anyone who is on the internet; with or without a Google account. * `allAuthenticatedUsers`: A special identifier that represents anyone who is authenticated with a Google account or a service account. Does not include identities that come from external identity providers (IdPs) through identity federation. * `user:{emailid}`: An email address that represents a specific Google account. For example, `alice@example.com` . * `serviceAccount:{emailid}`: An email address that represents a Google service account. For example, `my-other-app@appspot.gserviceaccount.com`. * `serviceAccount:{projectid}.svc.id.goog[{namespace}/{kubernetes-sa}]`: An identifier for a [Kubernetes service account](https://cloud.google.com/kubernetes-engine/docs/how-to/kubernetes-service-accounts). For example, `my-project.svc.id.goog[my-namespace/my-kubernetes-sa]`. * `group:{emailid}`: An email address that represents a Google group. For example, `admins@example.com`. * `deleted:user:{emailid}?uid={uniqueid}`: An email address (plus unique identifier) representing a user that has been recently deleted. For example, `alice@example.com?uid=123456789012345678901`. If the user is recovered, this value reverts to `user:{emailid}` and the recovered user retains the role in the binding. * `deleted:serviceAccount:{emailid}?uid={uniqueid}`: An email address (plus unique identifier) representing a service account that has been recently deleted. For example, `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`. If the service account is undeleted, this value reverts to `serviceAccount:{emailid}` and the undeleted service account retains the role in the binding. * `deleted:group:{emailid}?uid={uniqueid}`: An email address (plus unique identifier) representing a Google group that has been recently deleted. For example, `admins@example.com?uid=123456789012345678901`. If the group is recovered, this value reverts to `group:{emailid}` and the recovered group retains the role in the binding. * `domain:{domain}`: The G Suite domain (primary) that represents all the users of that domain. For example, `google.com` or `example.com`. ", + "description": "Specifies the principals requesting access for a Google Cloud resource. `members` can have the following values: * `allUsers`: A special identifier that represents anyone who is on the internet; with or without a Google account. * `allAuthenticatedUsers`: A special identifier that represents anyone who is authenticated with a Google account or a service account. Does not include identities that come from external identity providers (IdPs) through identity federation. * `user:{emailid}`: An email address that represents a specific Google account. For example, `alice@example.com` . * `serviceAccount:{emailid}`: An email address that represents a Google service account. For example, `my-other-app@appspot.gserviceaccount.com`. * `serviceAccount:{projectid}.svc.id.goog[{namespace}/{kubernetes-sa}]`: An identifier for a [Kubernetes service account](https://cloud.google.com/kubernetes-engine/docs/how-to/kubernetes-service-accounts). For example, `my-project.svc.id.goog[my-namespace/my-kubernetes-sa]`. * `group:{emailid}`: An email address that represents a Google group. For example, `admins@example.com`. * `domain:{domain}`: The G Suite domain (primary) that represents all the users of that domain. For example, `google.com` or `example.com`. * `deleted:user:{emailid}?uid={uniqueid}`: An email address (plus unique identifier) representing a user that has been recently deleted. For example, `alice@example.com?uid=123456789012345678901`. If the user is recovered, this value reverts to `user:{emailid}` and the recovered user retains the role in the binding. * `deleted:serviceAccount:{emailid}?uid={uniqueid}`: An email address (plus unique identifier) representing a service account that has been recently deleted. For example, `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`. If the service account is undeleted, this value reverts to `serviceAccount:{emailid}` and the undeleted service account retains the role in the binding. * `deleted:group:{emailid}?uid={uniqueid}`: An email address (plus unique identifier) representing a Google group that has been recently deleted. For example, `admins@example.com?uid=123456789012345678901`. If the group is recovered, this value reverts to `group:{emailid}` and the recovered group retains the role in the binding.", "items": { "type": "string" }, diff --git a/policysimulator/v1alpha/policysimulator-gen.go b/policysimulator/v1alpha/policysimulator-gen.go index aa5d3c852ee..be578193676 100644 --- a/policysimulator/v1alpha/policysimulator-gen.go +++ b/policysimulator/v1alpha/policysimulator-gen.go @@ -160,6 +160,7 @@ type FoldersService struct { func NewFoldersLocationsService(s *Service) *FoldersLocationsService { rs := &FoldersLocationsService{s: s} + rs.OrgPolicyViolationsPreviews = NewFoldersLocationsOrgPolicyViolationsPreviewsService(s) rs.Replays = NewFoldersLocationsReplaysService(s) return rs } @@ -167,9 +168,32 @@ func NewFoldersLocationsService(s *Service) *FoldersLocationsService { type FoldersLocationsService struct { s *Service + OrgPolicyViolationsPreviews *FoldersLocationsOrgPolicyViolationsPreviewsService + Replays *FoldersLocationsReplaysService } +func NewFoldersLocationsOrgPolicyViolationsPreviewsService(s *Service) *FoldersLocationsOrgPolicyViolationsPreviewsService { + rs := &FoldersLocationsOrgPolicyViolationsPreviewsService{s: s} + rs.Operations = NewFoldersLocationsOrgPolicyViolationsPreviewsOperationsService(s) + return rs +} + +type FoldersLocationsOrgPolicyViolationsPreviewsService struct { + s *Service + + Operations *FoldersLocationsOrgPolicyViolationsPreviewsOperationsService +} + +func NewFoldersLocationsOrgPolicyViolationsPreviewsOperationsService(s *Service) *FoldersLocationsOrgPolicyViolationsPreviewsOperationsService { + rs := &FoldersLocationsOrgPolicyViolationsPreviewsOperationsService{s: s} + return rs +} + +type FoldersLocationsOrgPolicyViolationsPreviewsOperationsService struct { + s *Service +} + func NewFoldersLocationsReplaysService(s *Service) *FoldersLocationsReplaysService { rs := &FoldersLocationsReplaysService{s: s} rs.Operations = NewFoldersLocationsReplaysOperationsService(s) @@ -214,6 +238,7 @@ type OrganizationsService struct { func NewOrganizationsLocationsService(s *Service) *OrganizationsLocationsService { rs := &OrganizationsLocationsService{s: s} + rs.OrgPolicyViolationsPreviews = NewOrganizationsLocationsOrgPolicyViolationsPreviewsService(s) rs.Replays = NewOrganizationsLocationsReplaysService(s) return rs } @@ -221,9 +246,32 @@ func NewOrganizationsLocationsService(s *Service) *OrganizationsLocationsService type OrganizationsLocationsService struct { s *Service + OrgPolicyViolationsPreviews *OrganizationsLocationsOrgPolicyViolationsPreviewsService + Replays *OrganizationsLocationsReplaysService } +func NewOrganizationsLocationsOrgPolicyViolationsPreviewsService(s *Service) *OrganizationsLocationsOrgPolicyViolationsPreviewsService { + rs := &OrganizationsLocationsOrgPolicyViolationsPreviewsService{s: s} + rs.Operations = NewOrganizationsLocationsOrgPolicyViolationsPreviewsOperationsService(s) + return rs +} + +type OrganizationsLocationsOrgPolicyViolationsPreviewsService struct { + s *Service + + Operations *OrganizationsLocationsOrgPolicyViolationsPreviewsOperationsService +} + +func NewOrganizationsLocationsOrgPolicyViolationsPreviewsOperationsService(s *Service) *OrganizationsLocationsOrgPolicyViolationsPreviewsOperationsService { + rs := &OrganizationsLocationsOrgPolicyViolationsPreviewsOperationsService{s: s} + return rs +} + +type OrganizationsLocationsOrgPolicyViolationsPreviewsOperationsService struct { + s *Service +} + func NewOrganizationsLocationsReplaysService(s *Service) *OrganizationsLocationsReplaysService { rs := &OrganizationsLocationsReplaysService{s: s} rs.Operations = NewOrganizationsLocationsReplaysOperationsService(s) @@ -259,6 +307,7 @@ type ProjectsService struct { func NewProjectsLocationsService(s *Service) *ProjectsLocationsService { rs := &ProjectsLocationsService{s: s} + rs.OrgPolicyViolationsPreviews = NewProjectsLocationsOrgPolicyViolationsPreviewsService(s) rs.Replays = NewProjectsLocationsReplaysService(s) return rs } @@ -266,9 +315,32 @@ func NewProjectsLocationsService(s *Service) *ProjectsLocationsService { type ProjectsLocationsService struct { s *Service + OrgPolicyViolationsPreviews *ProjectsLocationsOrgPolicyViolationsPreviewsService + Replays *ProjectsLocationsReplaysService } +func NewProjectsLocationsOrgPolicyViolationsPreviewsService(s *Service) *ProjectsLocationsOrgPolicyViolationsPreviewsService { + rs := &ProjectsLocationsOrgPolicyViolationsPreviewsService{s: s} + rs.Operations = NewProjectsLocationsOrgPolicyViolationsPreviewsOperationsService(s) + return rs +} + +type ProjectsLocationsOrgPolicyViolationsPreviewsService struct { + s *Service + + Operations *ProjectsLocationsOrgPolicyViolationsPreviewsOperationsService +} + +func NewProjectsLocationsOrgPolicyViolationsPreviewsOperationsService(s *Service) *ProjectsLocationsOrgPolicyViolationsPreviewsOperationsService { + rs := &ProjectsLocationsOrgPolicyViolationsPreviewsOperationsService{s: s} + return rs +} + +type ProjectsLocationsOrgPolicyViolationsPreviewsOperationsService struct { + s *Service +} + func NewProjectsLocationsReplaysService(s *Service) *ProjectsLocationsReplaysService { rs := &ProjectsLocationsReplaysService{s: s} rs.Operations = NewProjectsLocationsReplaysOperationsService(s) @@ -771,7 +843,9 @@ type GoogleIamV1Binding struct { // (https://cloud.google.com/kubernetes-engine/docs/how-to/kubernetes-service-accounts). // For example, `my-project.svc.id.goog[my-namespace/my-kubernetes-sa]`. // * `group:{emailid}`: An email address that represents a Google group. - // For example, `admins@example.com`. * + // For example, `admins@example.com`. * `domain:{domain}`: The G Suite + // domain (primary) that represents all the users of that domain. For + // example, `google.com` or `example.com`. * // `deleted:user:{emailid}?uid={uniqueid}`: An email address (plus // unique identifier) representing a user that has been recently // deleted. For example, `alice@example.com?uid=123456789012345678901`. @@ -788,9 +862,7 @@ type GoogleIamV1Binding struct { // that has been recently deleted. For example, // `admins@example.com?uid=123456789012345678901`. If the group is // recovered, this value reverts to `group:{emailid}` and the recovered - // group retains the role in the binding. * `domain:{domain}`: The G - // Suite domain (primary) that represents all the users of that domain. - // For example, `google.com` or `example.com`. + // group retains the role in the binding. Members []string `json:"members,omitempty"` // Role: Role that is assigned to the list of `members`, or principals. @@ -1176,6 +1248,154 @@ func (s *GoogleTypeExpr) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// method id "policysimulator.folders.locations.orgPolicyViolationsPreviews.operations.get": + +type FoldersLocationsOrgPolicyViolationsPreviewsOperationsGetCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Gets the latest state of a long-running operation. Clients can +// use this method to poll the operation result at intervals as +// recommended by the API service. +// +// - name: The name of the operation resource. +func (r *FoldersLocationsOrgPolicyViolationsPreviewsOperationsService) Get(name string) *FoldersLocationsOrgPolicyViolationsPreviewsOperationsGetCall { + c := &FoldersLocationsOrgPolicyViolationsPreviewsOperationsGetCall{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 *FoldersLocationsOrgPolicyViolationsPreviewsOperationsGetCall) Fields(s ...googleapi.Field) *FoldersLocationsOrgPolicyViolationsPreviewsOperationsGetCall { + 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 *FoldersLocationsOrgPolicyViolationsPreviewsOperationsGetCall) IfNoneMatch(entityTag string) *FoldersLocationsOrgPolicyViolationsPreviewsOperationsGetCall { + 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 *FoldersLocationsOrgPolicyViolationsPreviewsOperationsGetCall) Context(ctx context.Context) *FoldersLocationsOrgPolicyViolationsPreviewsOperationsGetCall { + 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 *FoldersLocationsOrgPolicyViolationsPreviewsOperationsGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *FoldersLocationsOrgPolicyViolationsPreviewsOperationsGetCall) 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, "v1alpha/{+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 "policysimulator.folders.locations.orgPolicyViolationsPreviews.operations.get" 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 *FoldersLocationsOrgPolicyViolationsPreviewsOperationsGetCall) 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": "Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.", + // "flatPath": "v1alpha/folders/{foldersId}/locations/{locationsId}/orgPolicyViolationsPreviews/{orgPolicyViolationsPreviewsId}/operations/{operationsId}", + // "httpMethod": "GET", + // "id": "policysimulator.folders.locations.orgPolicyViolationsPreviews.operations.get", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "The name of the operation resource.", + // "location": "path", + // "pattern": "^folders/[^/]+/locations/[^/]+/orgPolicyViolationsPreviews/[^/]+/operations/.*$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1alpha/{+name}", + // "response": { + // "$ref": "GoogleLongrunningOperation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + // method id "policysimulator.folders.locations.replays.operations.get": type FoldersLocationsReplaysOperationsGetCall struct { @@ -1900,6 +2120,154 @@ func (c *OperationsListCall) Pages(ctx context.Context, f func(*GoogleLongrunnin } } +// method id "policysimulator.organizations.locations.orgPolicyViolationsPreviews.operations.get": + +type OrganizationsLocationsOrgPolicyViolationsPreviewsOperationsGetCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Gets the latest state of a long-running operation. Clients can +// use this method to poll the operation result at intervals as +// recommended by the API service. +// +// - name: The name of the operation resource. +func (r *OrganizationsLocationsOrgPolicyViolationsPreviewsOperationsService) Get(name string) *OrganizationsLocationsOrgPolicyViolationsPreviewsOperationsGetCall { + c := &OrganizationsLocationsOrgPolicyViolationsPreviewsOperationsGetCall{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 *OrganizationsLocationsOrgPolicyViolationsPreviewsOperationsGetCall) Fields(s ...googleapi.Field) *OrganizationsLocationsOrgPolicyViolationsPreviewsOperationsGetCall { + 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 *OrganizationsLocationsOrgPolicyViolationsPreviewsOperationsGetCall) IfNoneMatch(entityTag string) *OrganizationsLocationsOrgPolicyViolationsPreviewsOperationsGetCall { + 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 *OrganizationsLocationsOrgPolicyViolationsPreviewsOperationsGetCall) Context(ctx context.Context) *OrganizationsLocationsOrgPolicyViolationsPreviewsOperationsGetCall { + 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 *OrganizationsLocationsOrgPolicyViolationsPreviewsOperationsGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *OrganizationsLocationsOrgPolicyViolationsPreviewsOperationsGetCall) 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, "v1alpha/{+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 "policysimulator.organizations.locations.orgPolicyViolationsPreviews.operations.get" 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 *OrganizationsLocationsOrgPolicyViolationsPreviewsOperationsGetCall) 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": "Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.", + // "flatPath": "v1alpha/organizations/{organizationsId}/locations/{locationsId}/orgPolicyViolationsPreviews/{orgPolicyViolationsPreviewsId}/operations/{operationsId}", + // "httpMethod": "GET", + // "id": "policysimulator.organizations.locations.orgPolicyViolationsPreviews.operations.get", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "The name of the operation resource.", + // "location": "path", + // "pattern": "^organizations/[^/]+/locations/[^/]+/orgPolicyViolationsPreviews/[^/]+/operations/.*$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1alpha/{+name}", + // "response": { + // "$ref": "GoogleLongrunningOperation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + // method id "policysimulator.organizations.locations.replays.operations.get": type OrganizationsLocationsReplaysOperationsGetCall struct { @@ -2262,6 +2630,154 @@ func (c *OrganizationsLocationsReplaysOperationsListCall) Pages(ctx context.Cont } } +// method id "policysimulator.projects.locations.orgPolicyViolationsPreviews.operations.get": + +type ProjectsLocationsOrgPolicyViolationsPreviewsOperationsGetCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Gets the latest state of a long-running operation. Clients can +// use this method to poll the operation result at intervals as +// recommended by the API service. +// +// - name: The name of the operation resource. +func (r *ProjectsLocationsOrgPolicyViolationsPreviewsOperationsService) Get(name string) *ProjectsLocationsOrgPolicyViolationsPreviewsOperationsGetCall { + c := &ProjectsLocationsOrgPolicyViolationsPreviewsOperationsGetCall{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 *ProjectsLocationsOrgPolicyViolationsPreviewsOperationsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsOrgPolicyViolationsPreviewsOperationsGetCall { + 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 *ProjectsLocationsOrgPolicyViolationsPreviewsOperationsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsOrgPolicyViolationsPreviewsOperationsGetCall { + 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 *ProjectsLocationsOrgPolicyViolationsPreviewsOperationsGetCall) Context(ctx context.Context) *ProjectsLocationsOrgPolicyViolationsPreviewsOperationsGetCall { + 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 *ProjectsLocationsOrgPolicyViolationsPreviewsOperationsGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsOrgPolicyViolationsPreviewsOperationsGetCall) 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, "v1alpha/{+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 "policysimulator.projects.locations.orgPolicyViolationsPreviews.operations.get" 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 *ProjectsLocationsOrgPolicyViolationsPreviewsOperationsGetCall) 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": "Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.", + // "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/orgPolicyViolationsPreviews/{orgPolicyViolationsPreviewsId}/operations/{operationsId}", + // "httpMethod": "GET", + // "id": "policysimulator.projects.locations.orgPolicyViolationsPreviews.operations.get", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "The name of the operation resource.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/orgPolicyViolationsPreviews/[^/]+/operations/.*$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1alpha/{+name}", + // "response": { + // "$ref": "GoogleLongrunningOperation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + // method id "policysimulator.projects.locations.replays.operations.get": type ProjectsLocationsReplaysOperationsGetCall struct { diff --git a/policysimulator/v1beta1/policysimulator-api.json b/policysimulator/v1beta1/policysimulator-api.json index 1893c1305ef..8425db6f574 100644 --- a/policysimulator/v1beta1/policysimulator-api.json +++ b/policysimulator/v1beta1/policysimulator-api.json @@ -109,62 +109,40 @@ "resources": { "locations": { "resources": { - "replays": { - "methods": { - "create": { - "description": "Creates and starts a Replay using the given ReplayConfig.", - "flatPath": "v1beta1/folders/{foldersId}/locations/{locationsId}/replays", - "httpMethod": "POST", - "id": "policysimulator.folders.locations.replays.create", - "parameterOrder": [ - "parent" - ], - "parameters": { - "parent": { - "description": "Required. The parent resource where this Replay will be created. This resource must be a project, folder, or organization with a location. Example: `projects/my-example-project/locations/global`", - "location": "path", - "pattern": "^folders/[^/]+/locations/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+parent}/replays", - "request": { - "$ref": "GoogleCloudPolicysimulatorV1beta1Replay" - }, - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "get": { - "description": "Gets the specified Replay. Each `Replay` is available for at least 7 days.", - "flatPath": "v1beta1/folders/{foldersId}/locations/{locationsId}/replays/{replaysId}", - "httpMethod": "GET", - "id": "policysimulator.folders.locations.replays.get", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "Required. The name of the Replay to retrieve, in the following format: `{projects|folders|organizations}/{resource-id}/locations/global/replays/{replay-id}`, where `{resource-id}` is the ID of the project, folder, or organization that owns the `Replay`. Example: `projects/my-example-project/locations/global/replays/506a5f7f-38ce-4d7d-8e03-479ce1833c36`", - "location": "path", - "pattern": "^folders/[^/]+/locations/[^/]+/replays/[^/]+$", - "required": true, - "type": "string" + "orgPolicyViolationsPreviews": { + "resources": { + "operations": { + "methods": { + "get": { + "description": "Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.", + "flatPath": "v1beta1/folders/{foldersId}/locations/{locationsId}/orgPolicyViolationsPreviews/{orgPolicyViolationsPreviewsId}/operations/{operationsId}", + "httpMethod": "GET", + "id": "policysimulator.folders.locations.orgPolicyViolationsPreviews.operations.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource.", + "location": "path", + "pattern": "^folders/[^/]+/locations/[^/]+/orgPolicyViolationsPreviews/[^/]+/operations/.*$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] } - }, - "path": "v1beta1/{+name}", - "response": { - "$ref": "GoogleCloudPolicysimulatorV1beta1Replay" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] + } } - }, + } + }, + "replays": { "resources": { "operations": { "methods": { @@ -235,46 +213,6 @@ ] } } - }, - "results": { - "methods": { - "list": { - "description": "Lists the results of running a Replay.", - "flatPath": "v1beta1/folders/{foldersId}/locations/{locationsId}/replays/{replaysId}/results", - "httpMethod": "GET", - "id": "policysimulator.folders.locations.replays.results.list", - "parameterOrder": [ - "parent" - ], - "parameters": { - "pageSize": { - "description": "The maximum number of ReplayResult objects to return. Defaults to 5000. The maximum value is 5000; values above 5000 are rounded down to 5000.", - "format": "int32", - "location": "query", - "type": "integer" - }, - "pageToken": { - "description": "A page token, received from a previous Simulator.ListReplayResults call. Provide this token to retrieve the next page of results. When paginating, all other parameters provided to [Simulator.ListReplayResults[] must match the call that provided the page token.", - "location": "query", - "type": "string" - }, - "parent": { - "description": "Required. The Replay whose results are listed, in the following format: `{projects|folders|organizations}/{resource-id}/locations/global/replays/{replay-id}` Example: `projects/my-project/locations/global/replays/506a5f7f-38ce-4d7d-8e03-479ce1833c36`", - "location": "path", - "pattern": "^folders/[^/]+/locations/[^/]+/replays/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+parent}/results", - "response": { - "$ref": "GoogleCloudPolicysimulatorV1beta1ListReplayResultsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - } - } } } } @@ -356,62 +294,40 @@ "resources": { "locations": { "resources": { - "replays": { - "methods": { - "create": { - "description": "Creates and starts a Replay using the given ReplayConfig.", - "flatPath": "v1beta1/organizations/{organizationsId}/locations/{locationsId}/replays", - "httpMethod": "POST", - "id": "policysimulator.organizations.locations.replays.create", - "parameterOrder": [ - "parent" - ], - "parameters": { - "parent": { - "description": "Required. The parent resource where this Replay will be created. This resource must be a project, folder, or organization with a location. Example: `projects/my-example-project/locations/global`", - "location": "path", - "pattern": "^organizations/[^/]+/locations/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+parent}/replays", - "request": { - "$ref": "GoogleCloudPolicysimulatorV1beta1Replay" - }, - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "get": { - "description": "Gets the specified Replay. Each `Replay` is available for at least 7 days.", - "flatPath": "v1beta1/organizations/{organizationsId}/locations/{locationsId}/replays/{replaysId}", - "httpMethod": "GET", - "id": "policysimulator.organizations.locations.replays.get", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "Required. The name of the Replay to retrieve, in the following format: `{projects|folders|organizations}/{resource-id}/locations/global/replays/{replay-id}`, where `{resource-id}` is the ID of the project, folder, or organization that owns the `Replay`. Example: `projects/my-example-project/locations/global/replays/506a5f7f-38ce-4d7d-8e03-479ce1833c36`", - "location": "path", - "pattern": "^organizations/[^/]+/locations/[^/]+/replays/[^/]+$", - "required": true, - "type": "string" + "orgPolicyViolationsPreviews": { + "resources": { + "operations": { + "methods": { + "get": { + "description": "Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.", + "flatPath": "v1beta1/organizations/{organizationsId}/locations/{locationsId}/orgPolicyViolationsPreviews/{orgPolicyViolationsPreviewsId}/operations/{operationsId}", + "httpMethod": "GET", + "id": "policysimulator.organizations.locations.orgPolicyViolationsPreviews.operations.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource.", + "location": "path", + "pattern": "^organizations/[^/]+/locations/[^/]+/orgPolicyViolationsPreviews/[^/]+/operations/.*$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "GoogleLongrunningOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] } - }, - "path": "v1beta1/{+name}", - "response": { - "$ref": "GoogleCloudPolicysimulatorV1beta1Replay" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] + } } - }, + } + }, + "replays": { "resources": { "operations": { "methods": { @@ -482,40 +398,41 @@ ] } } - }, - "results": { + } + } + } + } + } + } + }, + "projects": { + "resources": { + "locations": { + "resources": { + "orgPolicyViolationsPreviews": { + "resources": { + "operations": { "methods": { - "list": { - "description": "Lists the results of running a Replay.", - "flatPath": "v1beta1/organizations/{organizationsId}/locations/{locationsId}/replays/{replaysId}/results", + "get": { + "description": "Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/orgPolicyViolationsPreviews/{orgPolicyViolationsPreviewsId}/operations/{operationsId}", "httpMethod": "GET", - "id": "policysimulator.organizations.locations.replays.results.list", + "id": "policysimulator.projects.locations.orgPolicyViolationsPreviews.operations.get", "parameterOrder": [ - "parent" + "name" ], "parameters": { - "pageSize": { - "description": "The maximum number of ReplayResult objects to return. Defaults to 5000. The maximum value is 5000; values above 5000 are rounded down to 5000.", - "format": "int32", - "location": "query", - "type": "integer" - }, - "pageToken": { - "description": "A page token, received from a previous Simulator.ListReplayResults call. Provide this token to retrieve the next page of results. When paginating, all other parameters provided to [Simulator.ListReplayResults[] must match the call that provided the page token.", - "location": "query", - "type": "string" - }, - "parent": { - "description": "Required. The Replay whose results are listed, in the following format: `{projects|folders|organizations}/{resource-id}/locations/global/replays/{replay-id}` Example: `projects/my-project/locations/global/replays/506a5f7f-38ce-4d7d-8e03-479ce1833c36`", + "name": { + "description": "The name of the operation resource.", "location": "path", - "pattern": "^organizations/[^/]+/locations/[^/]+/replays/[^/]+$", + "pattern": "^projects/[^/]+/locations/[^/]+/orgPolicyViolationsPreviews/[^/]+/operations/.*$", "required": true, "type": "string" } }, - "path": "v1beta1/{+parent}/results", + "path": "v1beta1/{+name}", "response": { - "$ref": "GoogleCloudPolicysimulatorV1beta1ListReplayResultsResponse" + "$ref": "GoogleLongrunningOperation" }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform" @@ -524,71 +441,8 @@ } } } - } - } - } - } - }, - "projects": { - "resources": { - "locations": { - "resources": { + }, "replays": { - "methods": { - "create": { - "description": "Creates and starts a Replay using the given ReplayConfig.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/replays", - "httpMethod": "POST", - "id": "policysimulator.projects.locations.replays.create", - "parameterOrder": [ - "parent" - ], - "parameters": { - "parent": { - "description": "Required. The parent resource where this Replay will be created. This resource must be a project, folder, or organization with a location. Example: `projects/my-example-project/locations/global`", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+parent}/replays", - "request": { - "$ref": "GoogleCloudPolicysimulatorV1beta1Replay" - }, - "response": { - "$ref": "GoogleLongrunningOperation" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "get": { - "description": "Gets the specified Replay. Each `Replay` is available for at least 7 days.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/replays/{replaysId}", - "httpMethod": "GET", - "id": "policysimulator.projects.locations.replays.get", - "parameterOrder": [ - "name" - ], - "parameters": { - "name": { - "description": "Required. The name of the Replay to retrieve, in the following format: `{projects|folders|organizations}/{resource-id}/locations/global/replays/{replay-id}`, where `{resource-id}` is the ID of the project, folder, or organization that owns the `Replay`. Example: `projects/my-example-project/locations/global/replays/506a5f7f-38ce-4d7d-8e03-479ce1833c36`", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/replays/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+name}", - "response": { - "$ref": "GoogleCloudPolicysimulatorV1beta1Replay" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - } - }, "resources": { "operations": { "methods": { @@ -659,46 +513,6 @@ ] } } - }, - "results": { - "methods": { - "list": { - "description": "Lists the results of running a Replay.", - "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/replays/{replaysId}/results", - "httpMethod": "GET", - "id": "policysimulator.projects.locations.replays.results.list", - "parameterOrder": [ - "parent" - ], - "parameters": { - "pageSize": { - "description": "The maximum number of ReplayResult objects to return. Defaults to 5000. The maximum value is 5000; values above 5000 are rounded down to 5000.", - "format": "int32", - "location": "query", - "type": "integer" - }, - "pageToken": { - "description": "A page token, received from a previous Simulator.ListReplayResults call. Provide this token to retrieve the next page of results. When paginating, all other parameters provided to [Simulator.ListReplayResults[] must match the call that provided the page token.", - "location": "query", - "type": "string" - }, - "parent": { - "description": "Required. The Replay whose results are listed, in the following format: `{projects|folders|organizations}/{resource-id}/locations/global/replays/{replay-id}` Example: `projects/my-project/locations/global/replays/506a5f7f-38ce-4d7d-8e03-479ce1833c36`", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+/replays/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v1beta1/{+parent}/results", - "response": { - "$ref": "GoogleCloudPolicysimulatorV1beta1ListReplayResultsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - } - } } } } @@ -707,7 +521,7 @@ } } }, - "revision": "20221112", + "revision": "20230219", "rootUrl": "https://policysimulator.googleapis.com/", "schemas": { "GoogleCloudPolicysimulatorV1Replay": { @@ -823,296 +637,6 @@ }, "type": "object" }, - "GoogleCloudPolicysimulatorV1beta1AccessStateDiff": { - "description": "A summary and comparison of the member's access under the current (baseline) policies and the proposed (simulated) policies for a single access tuple.", - "id": "GoogleCloudPolicysimulatorV1beta1AccessStateDiff", - "properties": { - "accessChange": { - "description": "How the member's access, specified in the AccessState field, changed between the current (baseline) policies and proposed (simulated) policies.", - "enum": [ - "ACCESS_CHANGE_TYPE_UNSPECIFIED", - "NO_CHANGE", - "UNKNOWN_CHANGE", - "ACCESS_REVOKED", - "ACCESS_GAINED", - "ACCESS_MAYBE_REVOKED", - "ACCESS_MAYBE_GAINED" - ], - "enumDescriptions": [ - "The access change is unspecified.", - "The member's access did not change. This includes the case where both baseline and simulated are UNKNOWN, but the unknown information is equivalent.", - "The member's access under both the current policies and the proposed policies is `UNKNOWN`, but the unknown information differs between them.", - "The member had access under the current policies (`GRANTED`), but will no longer have access after the proposed changes (`NOT_GRANTED`).", - "The member did not have access under the current policies (`NOT_GRANTED`), but will have access after the proposed changes (`GRANTED`).", - "This result can occur for the following reasons: * The member had access under the current policies (`GRANTED`), but their access after the proposed changes is `UNKNOWN`. * The member's access under the current policies is `UNKNOWN`, but they will not have access after the proposed changes (`NOT_GRANTED`).", - "This result can occur for the following reasons: * The member did not have access under the current policies (`NOT_GRANTED`), but their access after the proposed changes is `UNKNOWN`. * The member's access under the current policies is `UNKNOWN`, but they will have access after the proposed changes (`GRANTED`)." - ], - "type": "string" - }, - "baseline": { - "$ref": "GoogleCloudPolicysimulatorV1beta1ExplainedAccess", - "description": "The results of evaluating the access tuple under the current (baseline) policies. If the AccessState couldn't be fully evaluated, this field explains why." - }, - "simulated": { - "$ref": "GoogleCloudPolicysimulatorV1beta1ExplainedAccess", - "description": "The results of evaluating the access tuple under the proposed (simulated) policies. If the AccessState couldn't be fully evaluated, this field explains why." - } - }, - "type": "object" - }, - "GoogleCloudPolicysimulatorV1beta1AccessTuple": { - "description": "Information about the principal, resource, and permission to check.", - "id": "GoogleCloudPolicysimulatorV1beta1AccessTuple", - "properties": { - "fullResourceName": { - "description": "Required. The full resource name that identifies the resource. For example, `//compute.googleapis.com/projects/my-project/zones/us-central1-a/instances/my-instance`. For examples of full resource names for Google Cloud services, see https://cloud.google.com/iam/help/troubleshooter/full-resource-names.", - "type": "string" - }, - "permission": { - "description": "Required. The IAM permission to check for the specified principal and resource. For a complete list of IAM permissions, see https://cloud.google.com/iam/help/permissions/reference. For a complete list of predefined IAM roles and the permissions in each role, see https://cloud.google.com/iam/help/roles/reference.", - "type": "string" - }, - "principal": { - "description": "Required. The principal whose access you want to check, in the form of the email address that represents that principal. For example, `alice@example.com` or `my-service-account@my-project.iam.gserviceaccount.com`. The principal must be a Google Account or a service account. Other types of principals are not supported.", - "type": "string" - } - }, - "type": "object" - }, - "GoogleCloudPolicysimulatorV1beta1BindingExplanation": { - "description": "Details about how a binding in a policy affects a principal's ability to use a permission.", - "id": "GoogleCloudPolicysimulatorV1beta1BindingExplanation", - "properties": { - "access": { - "description": "Required. Indicates whether _this binding_ provides the specified permission to the specified principal for the specified resource. This field does _not_ indicate whether the principal actually has the permission for the resource. There might be another binding that overrides this binding. To determine whether the principal actually has the permission, use the `access` field in the TroubleshootIamPolicyResponse.", - "enum": [ - "ACCESS_STATE_UNSPECIFIED", - "GRANTED", - "NOT_GRANTED", - "UNKNOWN_CONDITIONAL", - "UNKNOWN_INFO_DENIED" - ], - "enumDescriptions": [ - "Default value. This value is unused.", - "The principal has the permission.", - "The principal does not have the permission.", - "The principal has the permission only if a condition expression evaluates to `true`.", - "The user who created the Replay does not have access to all of the policies that Policy Simulator needs to evaluate." - ], - "type": "string" - }, - "condition": { - "$ref": "GoogleTypeExpr", - "description": "A condition expression that prevents this binding from granting access unless the expression evaluates to `true`. To learn about IAM Conditions, see https://cloud.google.com/iam/docs/conditions-overview." - }, - "memberships": { - "additionalProperties": { - "$ref": "GoogleCloudPolicysimulatorV1beta1BindingExplanationAnnotatedMembership" - }, - "description": "Indicates whether each principal in the binding includes the principal specified in the request, either directly or indirectly. Each key identifies a principal in the binding, and each value indicates whether the principal in the binding includes the principal in the request. For example, suppose that a binding includes the following principals: * `user:alice@example.com` * `group:product-eng@example.com` The principal in the replayed access tuple is `user:bob@example.com`. This user is a principal of the group `group:product-eng@example.com`. For the first principal in the binding, the key is `user:alice@example.com`, and the `membership` field in the value is set to `MEMBERSHIP_NOT_INCLUDED`. For the second principal in the binding, the key is `group:product-eng@example.com`, and the `membership` field in the value is set to `MEMBERSHIP_INCLUDED`.", - "type": "object" - }, - "relevance": { - "description": "The relevance of this binding to the overall determination for the entire policy.", - "enum": [ - "HEURISTIC_RELEVANCE_UNSPECIFIED", - "NORMAL", - "HIGH" - ], - "enumDescriptions": [ - "Default value. This value is unused.", - "The data point has a limited effect on the result. Changing the data point is unlikely to affect the overall determination.", - "The data point has a strong effect on the result. Changing the data point is likely to affect the overall determination." - ], - "type": "string" - }, - "role": { - "description": "The role that this binding grants. For example, `roles/compute.serviceAgent`. For a complete list of predefined IAM roles, as well as the permissions in each role, see https://cloud.google.com/iam/help/roles/reference.", - "type": "string" - }, - "rolePermission": { - "description": "Indicates whether the role granted by this binding contains the specified permission.", - "enum": [ - "ROLE_PERMISSION_UNSPECIFIED", - "ROLE_PERMISSION_INCLUDED", - "ROLE_PERMISSION_NOT_INCLUDED", - "ROLE_PERMISSION_UNKNOWN_INFO_DENIED" - ], - "enumDescriptions": [ - "Default value. This value is unused.", - "The permission is included in the role.", - "The permission is not included in the role.", - "The user who created the Replay is not allowed to access the binding." - ], - "type": "string" - }, - "rolePermissionRelevance": { - "description": "The relevance of the permission's existence, or nonexistence, in the role to the overall determination for the entire policy.", - "enum": [ - "HEURISTIC_RELEVANCE_UNSPECIFIED", - "NORMAL", - "HIGH" - ], - "enumDescriptions": [ - "Default value. This value is unused.", - "The data point has a limited effect on the result. Changing the data point is unlikely to affect the overall determination.", - "The data point has a strong effect on the result. Changing the data point is likely to affect the overall determination." - ], - "type": "string" - } - }, - "type": "object" - }, - "GoogleCloudPolicysimulatorV1beta1BindingExplanationAnnotatedMembership": { - "description": "Details about whether the binding includes the principal.", - "id": "GoogleCloudPolicysimulatorV1beta1BindingExplanationAnnotatedMembership", - "properties": { - "membership": { - "description": "Indicates whether the binding includes the principal.", - "enum": [ - "MEMBERSHIP_UNSPECIFIED", - "MEMBERSHIP_INCLUDED", - "MEMBERSHIP_NOT_INCLUDED", - "MEMBERSHIP_UNKNOWN_INFO_DENIED", - "MEMBERSHIP_UNKNOWN_UNSUPPORTED" - ], - "enumDescriptions": [ - "Default value. This value is unused.", - "The binding includes the principal. The principal can be included directly or indirectly. For example: * A principal is included directly if that principal is listed in the binding. * A principal is included indirectly if that principal is in a Google group or Google Workspace domain that is listed in the binding.", - "The binding does not include the principal.", - "The user who created the Replay is not allowed to access the binding.", - "The principal is an unsupported type. Only Google Accounts and service accounts are supported." - ], - "type": "string" - }, - "relevance": { - "description": "The relevance of the principal's status to the overall determination for the binding.", - "enum": [ - "HEURISTIC_RELEVANCE_UNSPECIFIED", - "NORMAL", - "HIGH" - ], - "enumDescriptions": [ - "Default value. This value is unused.", - "The data point has a limited effect on the result. Changing the data point is unlikely to affect the overall determination.", - "The data point has a strong effect on the result. Changing the data point is likely to affect the overall determination." - ], - "type": "string" - } - }, - "type": "object" - }, - "GoogleCloudPolicysimulatorV1beta1ExplainedAccess": { - "description": "Details about how a set of policies, listed in ExplainedPolicy, resulted in a certain AccessState when replaying an access tuple.", - "id": "GoogleCloudPolicysimulatorV1beta1ExplainedAccess", - "properties": { - "accessState": { - "description": "Whether the member in the access tuple has permission to access the resource in the access tuple under the given policies.", - "enum": [ - "ACCESS_STATE_UNSPECIFIED", - "GRANTED", - "NOT_GRANTED", - "UNKNOWN_CONDITIONAL", - "UNKNOWN_INFO_DENIED" - ], - "enumDescriptions": [ - "Default value. This value is unused.", - "The principal has the permission.", - "The principal does not have the permission.", - "The principal has the permission only if a condition expression evaluates to `true`.", - "The user who created the Replay does not have access to all of the policies that Policy Simulator needs to evaluate." - ], - "type": "string" - }, - "errors": { - "description": "If the AccessState is `UNKNOWN`, this field contains a list of errors explaining why the result is `UNKNOWN`. If the `AccessState` is `GRANTED` or `NOT_GRANTED`, this field is omitted.", - "items": { - "$ref": "GoogleRpcStatus" - }, - "type": "array" - }, - "policies": { - "description": "If the AccessState is `UNKNOWN`, this field contains the policies that led to that result. If the `AccessState` is `GRANTED` or `NOT_GRANTED`, this field is omitted.", - "items": { - "$ref": "GoogleCloudPolicysimulatorV1beta1ExplainedPolicy" - }, - "type": "array" - } - }, - "type": "object" - }, - "GoogleCloudPolicysimulatorV1beta1ExplainedPolicy": { - "description": "Details about how a specific IAM Policy contributed to the access check.", - "id": "GoogleCloudPolicysimulatorV1beta1ExplainedPolicy", - "properties": { - "access": { - "description": "Indicates whether _this policy_ provides the specified permission to the specified principal for the specified resource. This field does _not_ indicate whether the principal actually has the permission for the resource. There might be another policy that overrides this policy. To determine whether the principal actually has the permission, use the `access` field in the TroubleshootIamPolicyResponse.", - "enum": [ - "ACCESS_STATE_UNSPECIFIED", - "GRANTED", - "NOT_GRANTED", - "UNKNOWN_CONDITIONAL", - "UNKNOWN_INFO_DENIED" - ], - "enumDescriptions": [ - "Default value. This value is unused.", - "The principal has the permission.", - "The principal does not have the permission.", - "The principal has the permission only if a condition expression evaluates to `true`.", - "The user who created the Replay does not have access to all of the policies that Policy Simulator needs to evaluate." - ], - "type": "string" - }, - "bindingExplanations": { - "description": "Details about how each binding in the policy affects the principal's ability, or inability, to use the permission for the resource. If the user who created the Replay does not have access to the policy, this field is omitted.", - "items": { - "$ref": "GoogleCloudPolicysimulatorV1beta1BindingExplanation" - }, - "type": "array" - }, - "fullResourceName": { - "description": "The full resource name that identifies the resource. For example, `//compute.googleapis.com/projects/my-project/zones/us-central1-a/instances/my-instance`. If the user who created the Replay does not have access to the policy, this field is omitted. For examples of full resource names for Google Cloud services, see https://cloud.google.com/iam/help/troubleshooter/full-resource-names.", - "type": "string" - }, - "policy": { - "$ref": "GoogleIamV1Policy", - "description": "The IAM policy attached to the resource. If the user who created the Replay does not have access to the policy, this field is empty." - }, - "relevance": { - "description": "The relevance of this policy to the overall determination in the TroubleshootIamPolicyResponse. If the user who created the Replay does not have access to the policy, this field is omitted.", - "enum": [ - "HEURISTIC_RELEVANCE_UNSPECIFIED", - "NORMAL", - "HIGH" - ], - "enumDescriptions": [ - "Default value. This value is unused.", - "The data point has a limited effect on the result. Changing the data point is unlikely to affect the overall determination.", - "The data point has a strong effect on the result. Changing the data point is likely to affect the overall determination." - ], - "type": "string" - } - }, - "type": "object" - }, - "GoogleCloudPolicysimulatorV1beta1ListReplayResultsResponse": { - "description": "Response message for Simulator.ListReplayResults.", - "id": "GoogleCloudPolicysimulatorV1beta1ListReplayResultsResponse", - "properties": { - "nextPageToken": { - "description": "A token that you can use to retrieve the next page of ReplayResult objects. If this field is omitted, there are no subsequent pages.", - "type": "string" - }, - "replayResults": { - "description": "The results of running a Replay.", - "items": { - "$ref": "GoogleCloudPolicysimulatorV1beta1ReplayResult" - }, - "type": "array" - } - }, - "type": "object" - }, "GoogleCloudPolicysimulatorV1beta1Replay": { "description": "A resource describing a `Replay`, or simulation.", "id": "GoogleCloudPolicysimulatorV1beta1Replay", @@ -1179,17 +703,6 @@ }, "type": "object" }, - "GoogleCloudPolicysimulatorV1beta1ReplayDiff": { - "description": "The difference between the results of evaluating an access tuple under the current (baseline) policies and under the proposed (simulated) policies. This difference explains how a member's access could change if the proposed policies were applied.", - "id": "GoogleCloudPolicysimulatorV1beta1ReplayDiff", - "properties": { - "accessDiff": { - "$ref": "GoogleCloudPolicysimulatorV1beta1AccessStateDiff", - "description": "A summary and comparison of the member's access under the current (baseline) policies and the proposed (simulated) policies for a single access tuple. The evaluation of the member's access is reported in the AccessState field." - } - }, - "type": "object" - }, "GoogleCloudPolicysimulatorV1beta1ReplayOperationMetadata": { "description": "Metadata about a Replay operation.", "id": "GoogleCloudPolicysimulatorV1beta1ReplayOperationMetadata", @@ -1202,37 +715,6 @@ }, "type": "object" }, - "GoogleCloudPolicysimulatorV1beta1ReplayResult": { - "description": "The result of replaying a single access tuple against a simulated state.", - "id": "GoogleCloudPolicysimulatorV1beta1ReplayResult", - "properties": { - "accessTuple": { - "$ref": "GoogleCloudPolicysimulatorV1beta1AccessTuple", - "description": "The access tuple that was replayed. This field includes information about the member, resource, and permission that were involved in the access attempt." - }, - "diff": { - "$ref": "GoogleCloudPolicysimulatorV1beta1ReplayDiff", - "description": "The difference between the member's access under the current (baseline) policies and the member's access under the proposed (simulated) policies. This field is only included for access tuples that were successfully replayed and had different results under the current policies and the proposed policies." - }, - "error": { - "$ref": "GoogleRpcStatus", - "description": "The error that caused the access tuple replay to fail. This field is only included for access tuples that were not replayed successfully." - }, - "lastSeenDate": { - "$ref": "GoogleTypeDate", - "description": "The latest date this access tuple was seen in the logs." - }, - "name": { - "description": "The resource name of the `ReplayResult`, in the following format: `{projects|folders|organizations}/{resource-id}/locations/global/replays/{replay-id}/results/{replay-result-id}`, where `{resource-id}` is the ID of the project, folder, or organization that owns the Replay. Example: `projects/my-example-project/locations/global/replays/506a5f7f-38ce-4d7d-8e03-479ce1833c36/results/1234`", - "type": "string" - }, - "parent": { - "description": "The Replay that the access tuple was included in.", - "type": "string" - } - }, - "type": "object" - }, "GoogleCloudPolicysimulatorV1beta1ReplayResultsSummary": { "description": "Summary statistics about the replayed log entries.", "id": "GoogleCloudPolicysimulatorV1beta1ReplayResultsSummary", @@ -1325,7 +807,7 @@ "description": "The condition that is associated with this binding. If the condition evaluates to `true`, then this binding applies to the current request. If the condition evaluates to `false`, then this binding does not apply to the current request. However, a different role binding might grant the same role to one or more of the principals in this binding. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies)." }, "members": { - "description": "Specifies the principals requesting access for a Google Cloud resource. `members` can have the following values: * `allUsers`: A special identifier that represents anyone who is on the internet; with or without a Google account. * `allAuthenticatedUsers`: A special identifier that represents anyone who is authenticated with a Google account or a service account. Does not include identities that come from external identity providers (IdPs) through identity federation. * `user:{emailid}`: An email address that represents a specific Google account. For example, `alice@example.com` . * `serviceAccount:{emailid}`: An email address that represents a Google service account. For example, `my-other-app@appspot.gserviceaccount.com`. * `serviceAccount:{projectid}.svc.id.goog[{namespace}/{kubernetes-sa}]`: An identifier for a [Kubernetes service account](https://cloud.google.com/kubernetes-engine/docs/how-to/kubernetes-service-accounts). For example, `my-project.svc.id.goog[my-namespace/my-kubernetes-sa]`. * `group:{emailid}`: An email address that represents a Google group. For example, `admins@example.com`. * `deleted:user:{emailid}?uid={uniqueid}`: An email address (plus unique identifier) representing a user that has been recently deleted. For example, `alice@example.com?uid=123456789012345678901`. If the user is recovered, this value reverts to `user:{emailid}` and the recovered user retains the role in the binding. * `deleted:serviceAccount:{emailid}?uid={uniqueid}`: An email address (plus unique identifier) representing a service account that has been recently deleted. For example, `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`. If the service account is undeleted, this value reverts to `serviceAccount:{emailid}` and the undeleted service account retains the role in the binding. * `deleted:group:{emailid}?uid={uniqueid}`: An email address (plus unique identifier) representing a Google group that has been recently deleted. For example, `admins@example.com?uid=123456789012345678901`. If the group is recovered, this value reverts to `group:{emailid}` and the recovered group retains the role in the binding. * `domain:{domain}`: The G Suite domain (primary) that represents all the users of that domain. For example, `google.com` or `example.com`. ", + "description": "Specifies the principals requesting access for a Google Cloud resource. `members` can have the following values: * `allUsers`: A special identifier that represents anyone who is on the internet; with or without a Google account. * `allAuthenticatedUsers`: A special identifier that represents anyone who is authenticated with a Google account or a service account. Does not include identities that come from external identity providers (IdPs) through identity federation. * `user:{emailid}`: An email address that represents a specific Google account. For example, `alice@example.com` . * `serviceAccount:{emailid}`: An email address that represents a Google service account. For example, `my-other-app@appspot.gserviceaccount.com`. * `serviceAccount:{projectid}.svc.id.goog[{namespace}/{kubernetes-sa}]`: An identifier for a [Kubernetes service account](https://cloud.google.com/kubernetes-engine/docs/how-to/kubernetes-service-accounts). For example, `my-project.svc.id.goog[my-namespace/my-kubernetes-sa]`. * `group:{emailid}`: An email address that represents a Google group. For example, `admins@example.com`. * `domain:{domain}`: The G Suite domain (primary) that represents all the users of that domain. For example, `google.com` or `example.com`. * `deleted:user:{emailid}?uid={uniqueid}`: An email address (plus unique identifier) representing a user that has been recently deleted. For example, `alice@example.com?uid=123456789012345678901`. If the user is recovered, this value reverts to `user:{emailid}` and the recovered user retains the role in the binding. * `deleted:serviceAccount:{emailid}?uid={uniqueid}`: An email address (plus unique identifier) representing a service account that has been recently deleted. For example, `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`. If the service account is undeleted, this value reverts to `serviceAccount:{emailid}` and the undeleted service account retains the role in the binding. * `deleted:group:{emailid}?uid={uniqueid}`: An email address (plus unique identifier) representing a Google group that has been recently deleted. For example, `admins@example.com?uid=123456789012345678901`. If the group is recovered, this value reverts to `group:{emailid}` and the recovered group retains the role in the binding.", "items": { "type": "string" }, diff --git a/policysimulator/v1beta1/policysimulator-gen.go b/policysimulator/v1beta1/policysimulator-gen.go index c22e954b2cd..5af6abea38e 100644 --- a/policysimulator/v1beta1/policysimulator-gen.go +++ b/policysimulator/v1beta1/policysimulator-gen.go @@ -160,6 +160,7 @@ type FoldersService struct { func NewFoldersLocationsService(s *Service) *FoldersLocationsService { rs := &FoldersLocationsService{s: s} + rs.OrgPolicyViolationsPreviews = NewFoldersLocationsOrgPolicyViolationsPreviewsService(s) rs.Replays = NewFoldersLocationsReplaysService(s) return rs } @@ -167,13 +168,35 @@ func NewFoldersLocationsService(s *Service) *FoldersLocationsService { type FoldersLocationsService struct { s *Service + OrgPolicyViolationsPreviews *FoldersLocationsOrgPolicyViolationsPreviewsService + Replays *FoldersLocationsReplaysService } +func NewFoldersLocationsOrgPolicyViolationsPreviewsService(s *Service) *FoldersLocationsOrgPolicyViolationsPreviewsService { + rs := &FoldersLocationsOrgPolicyViolationsPreviewsService{s: s} + rs.Operations = NewFoldersLocationsOrgPolicyViolationsPreviewsOperationsService(s) + return rs +} + +type FoldersLocationsOrgPolicyViolationsPreviewsService struct { + s *Service + + Operations *FoldersLocationsOrgPolicyViolationsPreviewsOperationsService +} + +func NewFoldersLocationsOrgPolicyViolationsPreviewsOperationsService(s *Service) *FoldersLocationsOrgPolicyViolationsPreviewsOperationsService { + rs := &FoldersLocationsOrgPolicyViolationsPreviewsOperationsService{s: s} + return rs +} + +type FoldersLocationsOrgPolicyViolationsPreviewsOperationsService struct { + s *Service +} + func NewFoldersLocationsReplaysService(s *Service) *FoldersLocationsReplaysService { rs := &FoldersLocationsReplaysService{s: s} rs.Operations = NewFoldersLocationsReplaysOperationsService(s) - rs.Results = NewFoldersLocationsReplaysResultsService(s) return rs } @@ -181,8 +204,6 @@ type FoldersLocationsReplaysService struct { s *Service Operations *FoldersLocationsReplaysOperationsService - - Results *FoldersLocationsReplaysResultsService } func NewFoldersLocationsReplaysOperationsService(s *Service) *FoldersLocationsReplaysOperationsService { @@ -194,15 +215,6 @@ type FoldersLocationsReplaysOperationsService struct { s *Service } -func NewFoldersLocationsReplaysResultsService(s *Service) *FoldersLocationsReplaysResultsService { - rs := &FoldersLocationsReplaysResultsService{s: s} - return rs -} - -type FoldersLocationsReplaysResultsService struct { - s *Service -} - func NewOperationsService(s *Service) *OperationsService { rs := &OperationsService{s: s} return rs @@ -226,6 +238,7 @@ type OrganizationsService struct { func NewOrganizationsLocationsService(s *Service) *OrganizationsLocationsService { rs := &OrganizationsLocationsService{s: s} + rs.OrgPolicyViolationsPreviews = NewOrganizationsLocationsOrgPolicyViolationsPreviewsService(s) rs.Replays = NewOrganizationsLocationsReplaysService(s) return rs } @@ -233,13 +246,35 @@ func NewOrganizationsLocationsService(s *Service) *OrganizationsLocationsService type OrganizationsLocationsService struct { s *Service + OrgPolicyViolationsPreviews *OrganizationsLocationsOrgPolicyViolationsPreviewsService + Replays *OrganizationsLocationsReplaysService } +func NewOrganizationsLocationsOrgPolicyViolationsPreviewsService(s *Service) *OrganizationsLocationsOrgPolicyViolationsPreviewsService { + rs := &OrganizationsLocationsOrgPolicyViolationsPreviewsService{s: s} + rs.Operations = NewOrganizationsLocationsOrgPolicyViolationsPreviewsOperationsService(s) + return rs +} + +type OrganizationsLocationsOrgPolicyViolationsPreviewsService struct { + s *Service + + Operations *OrganizationsLocationsOrgPolicyViolationsPreviewsOperationsService +} + +func NewOrganizationsLocationsOrgPolicyViolationsPreviewsOperationsService(s *Service) *OrganizationsLocationsOrgPolicyViolationsPreviewsOperationsService { + rs := &OrganizationsLocationsOrgPolicyViolationsPreviewsOperationsService{s: s} + return rs +} + +type OrganizationsLocationsOrgPolicyViolationsPreviewsOperationsService struct { + s *Service +} + func NewOrganizationsLocationsReplaysService(s *Service) *OrganizationsLocationsReplaysService { rs := &OrganizationsLocationsReplaysService{s: s} rs.Operations = NewOrganizationsLocationsReplaysOperationsService(s) - rs.Results = NewOrganizationsLocationsReplaysResultsService(s) return rs } @@ -247,8 +282,6 @@ type OrganizationsLocationsReplaysService struct { s *Service Operations *OrganizationsLocationsReplaysOperationsService - - Results *OrganizationsLocationsReplaysResultsService } func NewOrganizationsLocationsReplaysOperationsService(s *Service) *OrganizationsLocationsReplaysOperationsService { @@ -260,15 +293,6 @@ type OrganizationsLocationsReplaysOperationsService struct { s *Service } -func NewOrganizationsLocationsReplaysResultsService(s *Service) *OrganizationsLocationsReplaysResultsService { - rs := &OrganizationsLocationsReplaysResultsService{s: s} - return rs -} - -type OrganizationsLocationsReplaysResultsService struct { - s *Service -} - func NewProjectsService(s *Service) *ProjectsService { rs := &ProjectsService{s: s} rs.Locations = NewProjectsLocationsService(s) @@ -283,6 +307,7 @@ type ProjectsService struct { func NewProjectsLocationsService(s *Service) *ProjectsLocationsService { rs := &ProjectsLocationsService{s: s} + rs.OrgPolicyViolationsPreviews = NewProjectsLocationsOrgPolicyViolationsPreviewsService(s) rs.Replays = NewProjectsLocationsReplaysService(s) return rs } @@ -290,13 +315,35 @@ func NewProjectsLocationsService(s *Service) *ProjectsLocationsService { type ProjectsLocationsService struct { s *Service + OrgPolicyViolationsPreviews *ProjectsLocationsOrgPolicyViolationsPreviewsService + Replays *ProjectsLocationsReplaysService } +func NewProjectsLocationsOrgPolicyViolationsPreviewsService(s *Service) *ProjectsLocationsOrgPolicyViolationsPreviewsService { + rs := &ProjectsLocationsOrgPolicyViolationsPreviewsService{s: s} + rs.Operations = NewProjectsLocationsOrgPolicyViolationsPreviewsOperationsService(s) + return rs +} + +type ProjectsLocationsOrgPolicyViolationsPreviewsService struct { + s *Service + + Operations *ProjectsLocationsOrgPolicyViolationsPreviewsOperationsService +} + +func NewProjectsLocationsOrgPolicyViolationsPreviewsOperationsService(s *Service) *ProjectsLocationsOrgPolicyViolationsPreviewsOperationsService { + rs := &ProjectsLocationsOrgPolicyViolationsPreviewsOperationsService{s: s} + return rs +} + +type ProjectsLocationsOrgPolicyViolationsPreviewsOperationsService struct { + s *Service +} + func NewProjectsLocationsReplaysService(s *Service) *ProjectsLocationsReplaysService { rs := &ProjectsLocationsReplaysService{s: s} rs.Operations = NewProjectsLocationsReplaysOperationsService(s) - rs.Results = NewProjectsLocationsReplaysResultsService(s) return rs } @@ -304,8 +351,6 @@ type ProjectsLocationsReplaysService struct { s *Service Operations *ProjectsLocationsReplaysOperationsService - - Results *ProjectsLocationsReplaysResultsService } func NewProjectsLocationsReplaysOperationsService(s *Service) *ProjectsLocationsReplaysOperationsService { @@ -317,15 +362,6 @@ type ProjectsLocationsReplaysOperationsService struct { s *Service } -func NewProjectsLocationsReplaysResultsService(s *Service) *ProjectsLocationsReplaysResultsService { - rs := &ProjectsLocationsReplaysResultsService{s: s} - return rs -} - -type ProjectsLocationsReplaysResultsService struct { - s *Service -} - // GoogleCloudPolicysimulatorV1Replay: A resource describing a `Replay`, // or simulation. type GoogleCloudPolicysimulatorV1Replay struct { @@ -503,467 +539,6 @@ func (s *GoogleCloudPolicysimulatorV1ReplayResultsSummary) MarshalJSON() ([]byte return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// GoogleCloudPolicysimulatorV1beta1AccessStateDiff: A summary and -// comparison of the member's access under the current (baseline) -// policies and the proposed (simulated) policies for a single access -// tuple. -type GoogleCloudPolicysimulatorV1beta1AccessStateDiff struct { - // AccessChange: How the member's access, specified in the AccessState - // field, changed between the current (baseline) policies and proposed - // (simulated) policies. - // - // Possible values: - // "ACCESS_CHANGE_TYPE_UNSPECIFIED" - The access change is - // unspecified. - // "NO_CHANGE" - The member's access did not change. This includes the - // case where both baseline and simulated are UNKNOWN, but the unknown - // information is equivalent. - // "UNKNOWN_CHANGE" - The member's access under both the current - // policies and the proposed policies is `UNKNOWN`, but the unknown - // information differs between them. - // "ACCESS_REVOKED" - The member had access under the current policies - // (`GRANTED`), but will no longer have access after the proposed - // changes (`NOT_GRANTED`). - // "ACCESS_GAINED" - The member did not have access under the current - // policies (`NOT_GRANTED`), but will have access after the proposed - // changes (`GRANTED`). - // "ACCESS_MAYBE_REVOKED" - This result can occur for the following - // reasons: * The member had access under the current policies - // (`GRANTED`), but their access after the proposed changes is - // `UNKNOWN`. * The member's access under the current policies is - // `UNKNOWN`, but they will not have access after the proposed changes - // (`NOT_GRANTED`). - // "ACCESS_MAYBE_GAINED" - This result can occur for the following - // reasons: * The member did not have access under the current policies - // (`NOT_GRANTED`), but their access after the proposed changes is - // `UNKNOWN`. * The member's access under the current policies is - // `UNKNOWN`, but they will have access after the proposed changes - // (`GRANTED`). - AccessChange string `json:"accessChange,omitempty"` - - // Baseline: The results of evaluating the access tuple under the - // current (baseline) policies. If the AccessState couldn't be fully - // evaluated, this field explains why. - Baseline *GoogleCloudPolicysimulatorV1beta1ExplainedAccess `json:"baseline,omitempty"` - - // Simulated: The results of evaluating the access tuple under the - // proposed (simulated) policies. If the AccessState couldn't be fully - // evaluated, this field explains why. - Simulated *GoogleCloudPolicysimulatorV1beta1ExplainedAccess `json:"simulated,omitempty"` - - // ForceSendFields is a list of field names (e.g. "AccessChange") 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. "AccessChange") 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 *GoogleCloudPolicysimulatorV1beta1AccessStateDiff) MarshalJSON() ([]byte, error) { - type NoMethod GoogleCloudPolicysimulatorV1beta1AccessStateDiff - raw := NoMethod(*s) - return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) -} - -// GoogleCloudPolicysimulatorV1beta1AccessTuple: Information about the -// principal, resource, and permission to check. -type GoogleCloudPolicysimulatorV1beta1AccessTuple struct { - // FullResourceName: Required. The full resource name that identifies - // the resource. For example, - // `//compute.googleapis.com/projects/my-project/zones/us-central1-a/inst - // ances/my-instance`. For examples of full resource names for Google - // Cloud services, see - // https://cloud.google.com/iam/help/troubleshooter/full-resource-names. - FullResourceName string `json:"fullResourceName,omitempty"` - - // Permission: Required. The IAM permission to check for the specified - // principal and resource. For a complete list of IAM permissions, see - // https://cloud.google.com/iam/help/permissions/reference. For a - // complete list of predefined IAM roles and the permissions in each - // role, see https://cloud.google.com/iam/help/roles/reference. - Permission string `json:"permission,omitempty"` - - // Principal: Required. The principal whose access you want to check, in - // the form of the email address that represents that principal. For - // example, `alice@example.com` or - // `my-service-account@my-project.iam.gserviceaccount.com`. The - // principal must be a Google Account or a service account. Other types - // of principals are not supported. - Principal string `json:"principal,omitempty"` - - // ForceSendFields is a list of field names (e.g. "FullResourceName") 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. "FullResourceName") 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 *GoogleCloudPolicysimulatorV1beta1AccessTuple) MarshalJSON() ([]byte, error) { - type NoMethod GoogleCloudPolicysimulatorV1beta1AccessTuple - raw := NoMethod(*s) - return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) -} - -// GoogleCloudPolicysimulatorV1beta1BindingExplanation: Details about -// how a binding in a policy affects a principal's ability to use a -// permission. -type GoogleCloudPolicysimulatorV1beta1BindingExplanation struct { - // Access: Required. Indicates whether _this binding_ provides the - // specified permission to the specified principal for the specified - // resource. This field does _not_ indicate whether the principal - // actually has the permission for the resource. There might be another - // binding that overrides this binding. To determine whether the - // principal actually has the permission, use the `access` field in the - // TroubleshootIamPolicyResponse. - // - // Possible values: - // "ACCESS_STATE_UNSPECIFIED" - Default value. This value is unused. - // "GRANTED" - The principal has the permission. - // "NOT_GRANTED" - The principal does not have the permission. - // "UNKNOWN_CONDITIONAL" - The principal has the permission only if a - // condition expression evaluates to `true`. - // "UNKNOWN_INFO_DENIED" - The user who created the Replay does not - // have access to all of the policies that Policy Simulator needs to - // evaluate. - Access string `json:"access,omitempty"` - - // Condition: A condition expression that prevents this binding from - // granting access unless the expression evaluates to `true`. To learn - // about IAM Conditions, see - // https://cloud.google.com/iam/docs/conditions-overview. - Condition *GoogleTypeExpr `json:"condition,omitempty"` - - // Memberships: Indicates whether each principal in the binding includes - // the principal specified in the request, either directly or - // indirectly. Each key identifies a principal in the binding, and each - // value indicates whether the principal in the binding includes the - // principal in the request. For example, suppose that a binding - // includes the following principals: * `user:alice@example.com` * - // `group:product-eng@example.com` The principal in the replayed access - // tuple is `user:bob@example.com`. This user is a principal of the - // group `group:product-eng@example.com`. For the first principal in the - // binding, the key is `user:alice@example.com`, and the `membership` - // field in the value is set to `MEMBERSHIP_NOT_INCLUDED`. For the - // second principal in the binding, the key is - // `group:product-eng@example.com`, and the `membership` field in the - // value is set to `MEMBERSHIP_INCLUDED`. - Memberships map[string]GoogleCloudPolicysimulatorV1beta1BindingExplanationAnnotatedMembership `json:"memberships,omitempty"` - - // Relevance: The relevance of this binding to the overall determination - // for the entire policy. - // - // Possible values: - // "HEURISTIC_RELEVANCE_UNSPECIFIED" - Default value. This value is - // unused. - // "NORMAL" - The data point has a limited effect on the result. - // Changing the data point is unlikely to affect the overall - // determination. - // "HIGH" - The data point has a strong effect on the result. Changing - // the data point is likely to affect the overall determination. - Relevance string `json:"relevance,omitempty"` - - // Role: The role that this binding grants. For example, - // `roles/compute.serviceAgent`. For a complete list of predefined IAM - // roles, as well as the permissions in each role, see - // https://cloud.google.com/iam/help/roles/reference. - Role string `json:"role,omitempty"` - - // RolePermission: Indicates whether the role granted by this binding - // contains the specified permission. - // - // Possible values: - // "ROLE_PERMISSION_UNSPECIFIED" - Default value. This value is - // unused. - // "ROLE_PERMISSION_INCLUDED" - The permission is included in the - // role. - // "ROLE_PERMISSION_NOT_INCLUDED" - The permission is not included in - // the role. - // "ROLE_PERMISSION_UNKNOWN_INFO_DENIED" - The user who created the - // Replay is not allowed to access the binding. - RolePermission string `json:"rolePermission,omitempty"` - - // RolePermissionRelevance: The relevance of the permission's existence, - // or nonexistence, in the role to the overall determination for the - // entire policy. - // - // Possible values: - // "HEURISTIC_RELEVANCE_UNSPECIFIED" - Default value. This value is - // unused. - // "NORMAL" - The data point has a limited effect on the result. - // Changing the data point is unlikely to affect the overall - // determination. - // "HIGH" - The data point has a strong effect on the result. Changing - // the data point is likely to affect the overall determination. - RolePermissionRelevance string `json:"rolePermissionRelevance,omitempty"` - - // ForceSendFields is a list of field names (e.g. "Access") 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. "Access") 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 *GoogleCloudPolicysimulatorV1beta1BindingExplanation) MarshalJSON() ([]byte, error) { - type NoMethod GoogleCloudPolicysimulatorV1beta1BindingExplanation - raw := NoMethod(*s) - return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) -} - -// GoogleCloudPolicysimulatorV1beta1BindingExplanationAnnotatedMembership -// : Details about whether the binding includes the principal. -type GoogleCloudPolicysimulatorV1beta1BindingExplanationAnnotatedMembership struct { - // Membership: Indicates whether the binding includes the principal. - // - // Possible values: - // "MEMBERSHIP_UNSPECIFIED" - Default value. This value is unused. - // "MEMBERSHIP_INCLUDED" - The binding includes the principal. The - // principal can be included directly or indirectly. For example: * A - // principal is included directly if that principal is listed in the - // binding. * A principal is included indirectly if that principal is in - // a Google group or Google Workspace domain that is listed in the - // binding. - // "MEMBERSHIP_NOT_INCLUDED" - The binding does not include the - // principal. - // "MEMBERSHIP_UNKNOWN_INFO_DENIED" - The user who created the Replay - // is not allowed to access the binding. - // "MEMBERSHIP_UNKNOWN_UNSUPPORTED" - The principal is an unsupported - // type. Only Google Accounts and service accounts are supported. - Membership string `json:"membership,omitempty"` - - // Relevance: The relevance of the principal's status to the overall - // determination for the binding. - // - // Possible values: - // "HEURISTIC_RELEVANCE_UNSPECIFIED" - Default value. This value is - // unused. - // "NORMAL" - The data point has a limited effect on the result. - // Changing the data point is unlikely to affect the overall - // determination. - // "HIGH" - The data point has a strong effect on the result. Changing - // the data point is likely to affect the overall determination. - Relevance string `json:"relevance,omitempty"` - - // ForceSendFields is a list of field names (e.g. "Membership") 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. "Membership") 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 *GoogleCloudPolicysimulatorV1beta1BindingExplanationAnnotatedMembership) MarshalJSON() ([]byte, error) { - type NoMethod GoogleCloudPolicysimulatorV1beta1BindingExplanationAnnotatedMembership - raw := NoMethod(*s) - return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) -} - -// GoogleCloudPolicysimulatorV1beta1ExplainedAccess: Details about how a -// set of policies, listed in ExplainedPolicy, resulted in a certain -// AccessState when replaying an access tuple. -type GoogleCloudPolicysimulatorV1beta1ExplainedAccess struct { - // AccessState: Whether the member in the access tuple has permission to - // access the resource in the access tuple under the given policies. - // - // Possible values: - // "ACCESS_STATE_UNSPECIFIED" - Default value. This value is unused. - // "GRANTED" - The principal has the permission. - // "NOT_GRANTED" - The principal does not have the permission. - // "UNKNOWN_CONDITIONAL" - The principal has the permission only if a - // condition expression evaluates to `true`. - // "UNKNOWN_INFO_DENIED" - The user who created the Replay does not - // have access to all of the policies that Policy Simulator needs to - // evaluate. - AccessState string `json:"accessState,omitempty"` - - // Errors: If the AccessState is `UNKNOWN`, this field contains a list - // of errors explaining why the result is `UNKNOWN`. If the - // `AccessState` is `GRANTED` or `NOT_GRANTED`, this field is omitted. - Errors []*GoogleRpcStatus `json:"errors,omitempty"` - - // Policies: If the AccessState is `UNKNOWN`, this field contains the - // policies that led to that result. If the `AccessState` is `GRANTED` - // or `NOT_GRANTED`, this field is omitted. - Policies []*GoogleCloudPolicysimulatorV1beta1ExplainedPolicy `json:"policies,omitempty"` - - // ForceSendFields is a list of field names (e.g. "AccessState") 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. "AccessState") 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 *GoogleCloudPolicysimulatorV1beta1ExplainedAccess) MarshalJSON() ([]byte, error) { - type NoMethod GoogleCloudPolicysimulatorV1beta1ExplainedAccess - raw := NoMethod(*s) - return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) -} - -// GoogleCloudPolicysimulatorV1beta1ExplainedPolicy: Details about how a -// specific IAM Policy contributed to the access check. -type GoogleCloudPolicysimulatorV1beta1ExplainedPolicy struct { - // Access: Indicates whether _this policy_ provides the specified - // permission to the specified principal for the specified resource. - // This field does _not_ indicate whether the principal actually has the - // permission for the resource. There might be another policy that - // overrides this policy. To determine whether the principal actually - // has the permission, use the `access` field in the - // TroubleshootIamPolicyResponse. - // - // Possible values: - // "ACCESS_STATE_UNSPECIFIED" - Default value. This value is unused. - // "GRANTED" - The principal has the permission. - // "NOT_GRANTED" - The principal does not have the permission. - // "UNKNOWN_CONDITIONAL" - The principal has the permission only if a - // condition expression evaluates to `true`. - // "UNKNOWN_INFO_DENIED" - The user who created the Replay does not - // have access to all of the policies that Policy Simulator needs to - // evaluate. - Access string `json:"access,omitempty"` - - // BindingExplanations: Details about how each binding in the policy - // affects the principal's ability, or inability, to use the permission - // for the resource. If the user who created the Replay does not have - // access to the policy, this field is omitted. - BindingExplanations []*GoogleCloudPolicysimulatorV1beta1BindingExplanation `json:"bindingExplanations,omitempty"` - - // FullResourceName: The full resource name that identifies the - // resource. For example, - // `//compute.googleapis.com/projects/my-project/zones/us-central1-a/inst - // ances/my-instance`. If the user who created the Replay does not have - // access to the policy, this field is omitted. For examples of full - // resource names for Google Cloud services, see - // https://cloud.google.com/iam/help/troubleshooter/full-resource-names. - FullResourceName string `json:"fullResourceName,omitempty"` - - // Policy: The IAM policy attached to the resource. If the user who - // created the Replay does not have access to the policy, this field is - // empty. - Policy *GoogleIamV1Policy `json:"policy,omitempty"` - - // Relevance: The relevance of this policy to the overall determination - // in the TroubleshootIamPolicyResponse. If the user who created the - // Replay does not have access to the policy, this field is omitted. - // - // Possible values: - // "HEURISTIC_RELEVANCE_UNSPECIFIED" - Default value. This value is - // unused. - // "NORMAL" - The data point has a limited effect on the result. - // Changing the data point is unlikely to affect the overall - // determination. - // "HIGH" - The data point has a strong effect on the result. Changing - // the data point is likely to affect the overall determination. - Relevance string `json:"relevance,omitempty"` - - // ForceSendFields is a list of field names (e.g. "Access") 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. "Access") 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 *GoogleCloudPolicysimulatorV1beta1ExplainedPolicy) MarshalJSON() ([]byte, error) { - type NoMethod GoogleCloudPolicysimulatorV1beta1ExplainedPolicy - raw := NoMethod(*s) - return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) -} - -// GoogleCloudPolicysimulatorV1beta1ListReplayResultsResponse: Response -// message for Simulator.ListReplayResults. -type GoogleCloudPolicysimulatorV1beta1ListReplayResultsResponse struct { - // NextPageToken: A token that you can use to retrieve the next page of - // ReplayResult objects. If this field is omitted, there are no - // subsequent pages. - NextPageToken string `json:"nextPageToken,omitempty"` - - // ReplayResults: The results of running a Replay. - ReplayResults []*GoogleCloudPolicysimulatorV1beta1ReplayResult `json:"replayResults,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 *GoogleCloudPolicysimulatorV1beta1ListReplayResultsResponse) MarshalJSON() ([]byte, error) { - type NoMethod GoogleCloudPolicysimulatorV1beta1ListReplayResultsResponse - raw := NoMethod(*s) - return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) -} - // GoogleCloudPolicysimulatorV1beta1Replay: A resource describing a // `Replay`, or simulation. type GoogleCloudPolicysimulatorV1beta1Replay struct { @@ -993,10 +568,6 @@ type GoogleCloudPolicysimulatorV1beta1Replay struct { // "FAILED" - The `Replay` has finished with an error. State string `json:"state,omitempty"` - // ServerResponse contains the HTTP response code and headers from the - // server. - googleapi.ServerResponse `json:"-"` - // ForceSendFields is a list of field names (e.g. "Config") to // unconditionally include in API requests. By default, fields with // empty or default values are omitted from API requests. However, any @@ -1069,19 +640,13 @@ func (s *GoogleCloudPolicysimulatorV1beta1ReplayConfig) MarshalJSON() ([]byte, e return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// GoogleCloudPolicysimulatorV1beta1ReplayDiff: The difference between -// the results of evaluating an access tuple under the current -// (baseline) policies and under the proposed (simulated) policies. This -// difference explains how a member's access could change if the -// proposed policies were applied. -type GoogleCloudPolicysimulatorV1beta1ReplayDiff struct { - // AccessDiff: A summary and comparison of the member's access under the - // current (baseline) policies and the proposed (simulated) policies for - // a single access tuple. The evaluation of the member's access is - // reported in the AccessState field. - AccessDiff *GoogleCloudPolicysimulatorV1beta1AccessStateDiff `json:"accessDiff,omitempty"` +// GoogleCloudPolicysimulatorV1beta1ReplayOperationMetadata: Metadata +// about a Replay operation. +type GoogleCloudPolicysimulatorV1beta1ReplayOperationMetadata struct { + // StartTime: Time when the request was received. + StartTime string `json:"startTime,omitempty"` - // ForceSendFields is a list of field names (e.g. "AccessDiff") to + // ForceSendFields is a list of field names (e.g. "StartTime") 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 @@ -1089,7 +654,7 @@ type GoogleCloudPolicysimulatorV1beta1ReplayDiff struct { // This may be used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "AccessDiff") to include in + // NullFields is a list of field names (e.g. "StartTime") 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 @@ -1098,96 +663,8 @@ type GoogleCloudPolicysimulatorV1beta1ReplayDiff struct { NullFields []string `json:"-"` } -func (s *GoogleCloudPolicysimulatorV1beta1ReplayDiff) MarshalJSON() ([]byte, error) { - type NoMethod GoogleCloudPolicysimulatorV1beta1ReplayDiff - raw := NoMethod(*s) - return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) -} - -// GoogleCloudPolicysimulatorV1beta1ReplayOperationMetadata: Metadata -// about a Replay operation. -type GoogleCloudPolicysimulatorV1beta1ReplayOperationMetadata struct { - // StartTime: Time when the request was received. - StartTime string `json:"startTime,omitempty"` - - // ForceSendFields is a list of field names (e.g. "StartTime") 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. "StartTime") 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 *GoogleCloudPolicysimulatorV1beta1ReplayOperationMetadata) MarshalJSON() ([]byte, error) { - type NoMethod GoogleCloudPolicysimulatorV1beta1ReplayOperationMetadata - raw := NoMethod(*s) - return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) -} - -// GoogleCloudPolicysimulatorV1beta1ReplayResult: The result of -// replaying a single access tuple against a simulated state. -type GoogleCloudPolicysimulatorV1beta1ReplayResult struct { - // AccessTuple: The access tuple that was replayed. This field includes - // information about the member, resource, and permission that were - // involved in the access attempt. - AccessTuple *GoogleCloudPolicysimulatorV1beta1AccessTuple `json:"accessTuple,omitempty"` - - // Diff: The difference between the member's access under the current - // (baseline) policies and the member's access under the proposed - // (simulated) policies. This field is only included for access tuples - // that were successfully replayed and had different results under the - // current policies and the proposed policies. - Diff *GoogleCloudPolicysimulatorV1beta1ReplayDiff `json:"diff,omitempty"` - - // Error: The error that caused the access tuple replay to fail. This - // field is only included for access tuples that were not replayed - // successfully. - Error *GoogleRpcStatus `json:"error,omitempty"` - - // LastSeenDate: The latest date this access tuple was seen in the logs. - LastSeenDate *GoogleTypeDate `json:"lastSeenDate,omitempty"` - - // Name: The resource name of the `ReplayResult`, in the following - // format: - // `{projects|folders|organizations}/{resource-id}/locations/global/repla - // ys/{replay-id}/results/{replay-result-id}`, where `{resource-id}` is - // the ID of the project, folder, or organization that owns the Replay. - // Example: - // `projects/my-example-project/locations/global/replays/506a5f7f-38ce-4d - // 7d-8e03-479ce1833c36/results/1234` - Name string `json:"name,omitempty"` - - // Parent: The Replay that the access tuple was included in. - Parent string `json:"parent,omitempty"` - - // ForceSendFields is a list of field names (e.g. "AccessTuple") 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. "AccessTuple") 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 *GoogleCloudPolicysimulatorV1beta1ReplayResult) MarshalJSON() ([]byte, error) { - type NoMethod GoogleCloudPolicysimulatorV1beta1ReplayResult +func (s *GoogleCloudPolicysimulatorV1beta1ReplayOperationMetadata) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudPolicysimulatorV1beta1ReplayOperationMetadata raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1366,7 +843,9 @@ type GoogleIamV1Binding struct { // (https://cloud.google.com/kubernetes-engine/docs/how-to/kubernetes-service-accounts). // For example, `my-project.svc.id.goog[my-namespace/my-kubernetes-sa]`. // * `group:{emailid}`: An email address that represents a Google group. - // For example, `admins@example.com`. * + // For example, `admins@example.com`. * `domain:{domain}`: The G Suite + // domain (primary) that represents all the users of that domain. For + // example, `google.com` or `example.com`. * // `deleted:user:{emailid}?uid={uniqueid}`: An email address (plus // unique identifier) representing a user that has been recently // deleted. For example, `alice@example.com?uid=123456789012345678901`. @@ -1383,9 +862,7 @@ type GoogleIamV1Binding struct { // that has been recently deleted. For example, // `admins@example.com?uid=123456789012345678901`. If the group is // recovered, this value reverts to `group:{emailid}` and the recovered - // group retains the role in the binding. * `domain:{domain}`: The G - // Suite domain (primary) that represents all the users of that domain. - // For example, `google.com` or `example.com`. + // group retains the role in the binding. Members []string `json:"members,omitempty"` // Role: Role that is assigned to the list of `members`, or principals. @@ -1771,153 +1248,9 @@ func (s *GoogleTypeExpr) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// method id "policysimulator.folders.locations.replays.create": - -type FoldersLocationsReplaysCreateCall struct { - s *Service - parent string - googlecloudpolicysimulatorv1beta1replay *GoogleCloudPolicysimulatorV1beta1Replay - urlParams_ gensupport.URLParams - ctx_ context.Context - header_ http.Header -} - -// Create: Creates and starts a Replay using the given ReplayConfig. -// -// - parent: The parent resource where this Replay will be created. This -// resource must be a project, folder, or organization with a -// location. Example: `projects/my-example-project/locations/global`. -func (r *FoldersLocationsReplaysService) Create(parent string, googlecloudpolicysimulatorv1beta1replay *GoogleCloudPolicysimulatorV1beta1Replay) *FoldersLocationsReplaysCreateCall { - c := &FoldersLocationsReplaysCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} - c.parent = parent - c.googlecloudpolicysimulatorv1beta1replay = googlecloudpolicysimulatorv1beta1replay - 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 *FoldersLocationsReplaysCreateCall) Fields(s ...googleapi.Field) *FoldersLocationsReplaysCreateCall { - 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 *FoldersLocationsReplaysCreateCall) Context(ctx context.Context) *FoldersLocationsReplaysCreateCall { - 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 *FoldersLocationsReplaysCreateCall) Header() http.Header { - if c.header_ == nil { - c.header_ = make(http.Header) - } - return c.header_ -} - -func (c *FoldersLocationsReplaysCreateCall) 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.googlecloudpolicysimulatorv1beta1replay) - 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, "v1beta1/{+parent}/replays") - 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 "policysimulator.folders.locations.replays.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 *FoldersLocationsReplaysCreateCall) 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 and starts a Replay using the given ReplayConfig.", - // "flatPath": "v1beta1/folders/{foldersId}/locations/{locationsId}/replays", - // "httpMethod": "POST", - // "id": "policysimulator.folders.locations.replays.create", - // "parameterOrder": [ - // "parent" - // ], - // "parameters": { - // "parent": { - // "description": "Required. The parent resource where this Replay will be created. This resource must be a project, folder, or organization with a location. Example: `projects/my-example-project/locations/global`", - // "location": "path", - // "pattern": "^folders/[^/]+/locations/[^/]+$", - // "required": true, - // "type": "string" - // } - // }, - // "path": "v1beta1/{+parent}/replays", - // "request": { - // "$ref": "GoogleCloudPolicysimulatorV1beta1Replay" - // }, - // "response": { - // "$ref": "GoogleLongrunningOperation" - // }, - // "scopes": [ - // "https://www.googleapis.com/auth/cloud-platform" - // ] - // } - -} - -// method id "policysimulator.folders.locations.replays.get": +// method id "policysimulator.folders.locations.orgPolicyViolationsPreviews.operations.get": -type FoldersLocationsReplaysGetCall struct { +type FoldersLocationsOrgPolicyViolationsPreviewsOperationsGetCall struct { s *Service name string urlParams_ gensupport.URLParams @@ -1926,17 +1259,13 @@ type FoldersLocationsReplaysGetCall struct { header_ http.Header } -// Get: Gets the specified Replay. Each `Replay` is available for at -// least 7 days. +// Get: Gets the latest state of a long-running operation. Clients can +// use this method to poll the operation result at intervals as +// recommended by the API service. // -// - name: The name of the Replay to retrieve, in the following format: -// `{projects|folders|organizations}/{resource-id}/locations/global/rep -// lays/{replay-id}`, where `{resource-id}` is the ID of the project, -// folder, or organization that owns the `Replay`. Example: -// `projects/my-example-project/locations/global/replays/506a5f7f-38ce- -// 4d7d-8e03-479ce1833c36`. -func (r *FoldersLocationsReplaysService) Get(name string) *FoldersLocationsReplaysGetCall { - c := &FoldersLocationsReplaysGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} +// - name: The name of the operation resource. +func (r *FoldersLocationsOrgPolicyViolationsPreviewsOperationsService) Get(name string) *FoldersLocationsOrgPolicyViolationsPreviewsOperationsGetCall { + c := &FoldersLocationsOrgPolicyViolationsPreviewsOperationsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.name = name return c } @@ -1944,7 +1273,7 @@ func (r *FoldersLocationsReplaysService) Get(name string) *FoldersLocationsRepla // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse // for more information. -func (c *FoldersLocationsReplaysGetCall) Fields(s ...googleapi.Field) *FoldersLocationsReplaysGetCall { +func (c *FoldersLocationsOrgPolicyViolationsPreviewsOperationsGetCall) Fields(s ...googleapi.Field) *FoldersLocationsOrgPolicyViolationsPreviewsOperationsGetCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } @@ -1954,7 +1283,7 @@ func (c *FoldersLocationsReplaysGetCall) Fields(s ...googleapi.Field) *FoldersLo // 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 *FoldersLocationsReplaysGetCall) IfNoneMatch(entityTag string) *FoldersLocationsReplaysGetCall { +func (c *FoldersLocationsOrgPolicyViolationsPreviewsOperationsGetCall) IfNoneMatch(entityTag string) *FoldersLocationsOrgPolicyViolationsPreviewsOperationsGetCall { c.ifNoneMatch_ = entityTag return c } @@ -1962,21 +1291,21 @@ func (c *FoldersLocationsReplaysGetCall) IfNoneMatch(entityTag string) *FoldersL // 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 *FoldersLocationsReplaysGetCall) Context(ctx context.Context) *FoldersLocationsReplaysGetCall { +func (c *FoldersLocationsOrgPolicyViolationsPreviewsOperationsGetCall) Context(ctx context.Context) *FoldersLocationsOrgPolicyViolationsPreviewsOperationsGetCall { 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 *FoldersLocationsReplaysGetCall) Header() http.Header { +func (c *FoldersLocationsOrgPolicyViolationsPreviewsOperationsGetCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } -func (c *FoldersLocationsReplaysGetCall) doRequest(alt string) (*http.Response, error) { +func (c *FoldersLocationsOrgPolicyViolationsPreviewsOperationsGetCall) 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_ { @@ -2002,15 +1331,14 @@ func (c *FoldersLocationsReplaysGetCall) doRequest(alt string) (*http.Response, return gensupport.SendRequest(c.ctx_, c.s.client, req) } -// Do executes the "policysimulator.folders.locations.replays.get" call. -// Exactly one of *GoogleCloudPolicysimulatorV1beta1Replay or error will -// be non-nil. Any non-2xx status code is an error. Response headers are -// in either -// *GoogleCloudPolicysimulatorV1beta1Replay.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 "policysimulator.folders.locations.orgPolicyViolationsPreviews.operations.get" 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 *FoldersLocationsReplaysGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudPolicysimulatorV1beta1Replay, error) { +func (c *FoldersLocationsOrgPolicyViolationsPreviewsOperationsGetCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { @@ -2029,7 +1357,7 @@ func (c *FoldersLocationsReplaysGetCall) Do(opts ...googleapi.CallOption) (*Goog if err := googleapi.CheckResponse(res); err != nil { return nil, gensupport.WrapError(err) } - ret := &GoogleCloudPolicysimulatorV1beta1Replay{ + ret := &GoogleLongrunningOperation{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, @@ -2041,25 +1369,25 @@ func (c *FoldersLocationsReplaysGetCall) Do(opts ...googleapi.CallOption) (*Goog } return ret, nil // { - // "description": "Gets the specified Replay. Each `Replay` is available for at least 7 days.", - // "flatPath": "v1beta1/folders/{foldersId}/locations/{locationsId}/replays/{replaysId}", + // "description": "Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.", + // "flatPath": "v1beta1/folders/{foldersId}/locations/{locationsId}/orgPolicyViolationsPreviews/{orgPolicyViolationsPreviewsId}/operations/{operationsId}", // "httpMethod": "GET", - // "id": "policysimulator.folders.locations.replays.get", + // "id": "policysimulator.folders.locations.orgPolicyViolationsPreviews.operations.get", // "parameterOrder": [ // "name" // ], // "parameters": { // "name": { - // "description": "Required. The name of the Replay to retrieve, in the following format: `{projects|folders|organizations}/{resource-id}/locations/global/replays/{replay-id}`, where `{resource-id}` is the ID of the project, folder, or organization that owns the `Replay`. Example: `projects/my-example-project/locations/global/replays/506a5f7f-38ce-4d7d-8e03-479ce1833c36`", + // "description": "The name of the operation resource.", // "location": "path", - // "pattern": "^folders/[^/]+/locations/[^/]+/replays/[^/]+$", + // "pattern": "^folders/[^/]+/locations/[^/]+/orgPolicyViolationsPreviews/[^/]+/operations/.*$", // "required": true, // "type": "string" // } // }, // "path": "v1beta1/{+name}", // "response": { - // "$ref": "GoogleCloudPolicysimulatorV1beta1Replay" + // "$ref": "GoogleLongrunningOperation" // }, // "scopes": [ // "https://www.googleapis.com/auth/cloud-platform" @@ -2430,53 +1758,32 @@ func (c *FoldersLocationsReplaysOperationsListCall) Pages(ctx context.Context, f } } -// method id "policysimulator.folders.locations.replays.results.list": +// method id "policysimulator.operations.get": -type FoldersLocationsReplaysResultsListCall struct { +type OperationsGetCall struct { s *Service - parent string + name string urlParams_ gensupport.URLParams ifNoneMatch_ string ctx_ context.Context header_ http.Header } -// List: Lists the results of running a Replay. +// Get: Gets the latest state of a long-running operation. Clients can +// use this method to poll the operation result at intervals as +// recommended by the API service. // -// - parent: The Replay whose results are listed, in the following -// format: -// `{projects|folders|organizations}/{resource-id}/locations/global/rep -// lays/{replay-id}` Example: -// `projects/my-project/locations/global/replays/506a5f7f-38ce-4d7d-8e0 -// 3-479ce1833c36`. -func (r *FoldersLocationsReplaysResultsService) List(parent string) *FoldersLocationsReplaysResultsListCall { - c := &FoldersLocationsReplaysResultsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} - c.parent = parent - return c -} - -// PageSize sets the optional parameter "pageSize": The maximum number -// of ReplayResult objects to return. Defaults to 5000. The maximum -// value is 5000; values above 5000 are rounded down to 5000. -func (c *FoldersLocationsReplaysResultsListCall) PageSize(pageSize int64) *FoldersLocationsReplaysResultsListCall { - c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) - return c -} - -// PageToken sets the optional parameter "pageToken": A page token, -// received from a previous Simulator.ListReplayResults call. Provide -// this token to retrieve the next page of results. When paginating, all -// other parameters provided to [Simulator.ListReplayResults[] must -// match the call that provided the page token. -func (c *FoldersLocationsReplaysResultsListCall) PageToken(pageToken string) *FoldersLocationsReplaysResultsListCall { - c.urlParams_.Set("pageToken", pageToken) +// - name: The name of the operation resource. +func (r *OperationsService) Get(name string) *OperationsGetCall { + c := &OperationsGetCall{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 *FoldersLocationsReplaysResultsListCall) Fields(s ...googleapi.Field) *FoldersLocationsReplaysResultsListCall { +func (c *OperationsGetCall) Fields(s ...googleapi.Field) *OperationsGetCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } @@ -2486,7 +1793,7 @@ func (c *FoldersLocationsReplaysResultsListCall) Fields(s ...googleapi.Field) *F // 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 *FoldersLocationsReplaysResultsListCall) IfNoneMatch(entityTag string) *FoldersLocationsReplaysResultsListCall { +func (c *OperationsGetCall) IfNoneMatch(entityTag string) *OperationsGetCall { c.ifNoneMatch_ = entityTag return c } @@ -2494,21 +1801,21 @@ func (c *FoldersLocationsReplaysResultsListCall) IfNoneMatch(entityTag string) * // 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 *FoldersLocationsReplaysResultsListCall) Context(ctx context.Context) *FoldersLocationsReplaysResultsListCall { +func (c *OperationsGetCall) Context(ctx context.Context) *OperationsGetCall { 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 *FoldersLocationsReplaysResultsListCall) Header() http.Header { +func (c *OperationsGetCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } -func (c *FoldersLocationsReplaysResultsListCall) doRequest(alt string) (*http.Response, error) { +func (c *OperationsGetCall) 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_ { @@ -2521,7 +1828,7 @@ func (c *FoldersLocationsReplaysResultsListCall) doRequest(alt string) (*http.Re var body io.Reader = nil c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") - urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/results") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("GET", urls, body) if err != nil { @@ -2529,22 +1836,19 @@ func (c *FoldersLocationsReplaysResultsListCall) doRequest(alt string) (*http.Re } 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 "policysimulator.folders.locations.replays.results.list" call. -// Exactly one of -// *GoogleCloudPolicysimulatorV1beta1ListReplayResultsResponse or error -// will be non-nil. Any non-2xx status code is an error. Response -// headers are in either -// *GoogleCloudPolicysimulatorV1beta1ListReplayResultsResponse.ServerResp -// onse.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 *FoldersLocationsReplaysResultsListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudPolicysimulatorV1beta1ListReplayResultsResponse, error) { +// Do executes the "policysimulator.operations.get" 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 *OperationsGetCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { @@ -2563,7 +1867,7 @@ func (c *FoldersLocationsReplaysResultsListCall) Do(opts ...googleapi.CallOption if err := googleapi.CheckResponse(res); err != nil { return nil, gensupport.WrapError(err) } - ret := &GoogleCloudPolicysimulatorV1beta1ListReplayResultsResponse{ + ret := &GoogleLongrunningOperation{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, @@ -2575,36 +1879,25 @@ func (c *FoldersLocationsReplaysResultsListCall) Do(opts ...googleapi.CallOption } return ret, nil // { - // "description": "Lists the results of running a Replay.", - // "flatPath": "v1beta1/folders/{foldersId}/locations/{locationsId}/replays/{replaysId}/results", + // "description": "Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.", + // "flatPath": "v1beta1/operations/{operationsId}", // "httpMethod": "GET", - // "id": "policysimulator.folders.locations.replays.results.list", + // "id": "policysimulator.operations.get", // "parameterOrder": [ - // "parent" + // "name" // ], // "parameters": { - // "pageSize": { - // "description": "The maximum number of ReplayResult objects to return. Defaults to 5000. The maximum value is 5000; values above 5000 are rounded down to 5000.", - // "format": "int32", - // "location": "query", - // "type": "integer" - // }, - // "pageToken": { - // "description": "A page token, received from a previous Simulator.ListReplayResults call. Provide this token to retrieve the next page of results. When paginating, all other parameters provided to [Simulator.ListReplayResults[] must match the call that provided the page token.", - // "location": "query", - // "type": "string" - // }, - // "parent": { - // "description": "Required. The Replay whose results are listed, in the following format: `{projects|folders|organizations}/{resource-id}/locations/global/replays/{replay-id}` Example: `projects/my-project/locations/global/replays/506a5f7f-38ce-4d7d-8e03-479ce1833c36`", + // "name": { + // "description": "The name of the operation resource.", // "location": "path", - // "pattern": "^folders/[^/]+/locations/[^/]+/replays/[^/]+$", + // "pattern": "^operations/.*$", // "required": true, // "type": "string" // } // }, - // "path": "v1beta1/{+parent}/results", + // "path": "v1beta1/{+name}", // "response": { - // "$ref": "GoogleCloudPolicysimulatorV1beta1ListReplayResultsResponse" + // "$ref": "GoogleLongrunningOperation" // }, // "scopes": [ // "https://www.googleapis.com/auth/cloud-platform" @@ -2613,178 +1906,9 @@ func (c *FoldersLocationsReplaysResultsListCall) 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 *FoldersLocationsReplaysResultsListCall) Pages(ctx context.Context, f func(*GoogleCloudPolicysimulatorV1beta1ListReplayResultsResponse) 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 "policysimulator.operations.get": +// method id "policysimulator.operations.list": -type OperationsGetCall struct { - s *Service - name string - urlParams_ gensupport.URLParams - ifNoneMatch_ string - ctx_ context.Context - header_ http.Header -} - -// Get: Gets the latest state of a long-running operation. Clients can -// use this method to poll the operation result at intervals as -// recommended by the API service. -// -// - name: The name of the operation resource. -func (r *OperationsService) Get(name string) *OperationsGetCall { - c := &OperationsGetCall{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 *OperationsGetCall) Fields(s ...googleapi.Field) *OperationsGetCall { - 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 *OperationsGetCall) IfNoneMatch(entityTag string) *OperationsGetCall { - 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 *OperationsGetCall) Context(ctx context.Context) *OperationsGetCall { - 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 *OperationsGetCall) Header() http.Header { - if c.header_ == nil { - c.header_ = make(http.Header) - } - return c.header_ -} - -func (c *OperationsGetCall) 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, "v1beta1/{+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 "policysimulator.operations.get" 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 *OperationsGetCall) 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": "Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.", - // "flatPath": "v1beta1/operations/{operationsId}", - // "httpMethod": "GET", - // "id": "policysimulator.operations.get", - // "parameterOrder": [ - // "name" - // ], - // "parameters": { - // "name": { - // "description": "The name of the operation resource.", - // "location": "path", - // "pattern": "^operations/.*$", - // "required": true, - // "type": "string" - // } - // }, - // "path": "v1beta1/{+name}", - // "response": { - // "$ref": "GoogleLongrunningOperation" - // }, - // "scopes": [ - // "https://www.googleapis.com/auth/cloud-platform" - // ] - // } - -} - -// method id "policysimulator.operations.list": - -type OperationsListCall struct { +type OperationsListCall struct { s *Service name string urlParams_ gensupport.URLParams @@ -2996,90 +2120,97 @@ func (c *OperationsListCall) Pages(ctx context.Context, f func(*GoogleLongrunnin } } -// method id "policysimulator.organizations.locations.replays.create": +// method id "policysimulator.organizations.locations.orgPolicyViolationsPreviews.operations.get": -type OrganizationsLocationsReplaysCreateCall struct { - s *Service - parent string - googlecloudpolicysimulatorv1beta1replay *GoogleCloudPolicysimulatorV1beta1Replay - urlParams_ gensupport.URLParams - ctx_ context.Context - header_ http.Header +type OrganizationsLocationsOrgPolicyViolationsPreviewsOperationsGetCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header } -// Create: Creates and starts a Replay using the given ReplayConfig. +// Get: Gets the latest state of a long-running operation. Clients can +// use this method to poll the operation result at intervals as +// recommended by the API service. // -// - parent: The parent resource where this Replay will be created. This -// resource must be a project, folder, or organization with a -// location. Example: `projects/my-example-project/locations/global`. -func (r *OrganizationsLocationsReplaysService) Create(parent string, googlecloudpolicysimulatorv1beta1replay *GoogleCloudPolicysimulatorV1beta1Replay) *OrganizationsLocationsReplaysCreateCall { - c := &OrganizationsLocationsReplaysCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} - c.parent = parent - c.googlecloudpolicysimulatorv1beta1replay = googlecloudpolicysimulatorv1beta1replay +// - name: The name of the operation resource. +func (r *OrganizationsLocationsOrgPolicyViolationsPreviewsOperationsService) Get(name string) *OrganizationsLocationsOrgPolicyViolationsPreviewsOperationsGetCall { + c := &OrganizationsLocationsOrgPolicyViolationsPreviewsOperationsGetCall{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 *OrganizationsLocationsReplaysCreateCall) Fields(s ...googleapi.Field) *OrganizationsLocationsReplaysCreateCall { +func (c *OrganizationsLocationsOrgPolicyViolationsPreviewsOperationsGetCall) Fields(s ...googleapi.Field) *OrganizationsLocationsOrgPolicyViolationsPreviewsOperationsGetCall { 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 *OrganizationsLocationsOrgPolicyViolationsPreviewsOperationsGetCall) IfNoneMatch(entityTag string) *OrganizationsLocationsOrgPolicyViolationsPreviewsOperationsGetCall { + 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 *OrganizationsLocationsReplaysCreateCall) Context(ctx context.Context) *OrganizationsLocationsReplaysCreateCall { +func (c *OrganizationsLocationsOrgPolicyViolationsPreviewsOperationsGetCall) Context(ctx context.Context) *OrganizationsLocationsOrgPolicyViolationsPreviewsOperationsGetCall { 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 *OrganizationsLocationsReplaysCreateCall) Header() http.Header { +func (c *OrganizationsLocationsOrgPolicyViolationsPreviewsOperationsGetCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } -func (c *OrganizationsLocationsReplaysCreateCall) doRequest(alt string) (*http.Response, error) { +func (c *OrganizationsLocationsOrgPolicyViolationsPreviewsOperationsGetCall) 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.googlecloudpolicysimulatorv1beta1replay) - 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, "v1beta1/{+parent}/replays") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+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{ - "parent": c.parent, + "name": c.name, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } -// Do executes the "policysimulator.organizations.locations.replays.create" call. +// Do executes the "policysimulator.organizations.locations.orgPolicyViolationsPreviews.operations.get" 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 *OrganizationsLocationsReplaysCreateCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) { +func (c *OrganizationsLocationsOrgPolicyViolationsPreviewsOperationsGetCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { @@ -3110,26 +2241,23 @@ func (c *OrganizationsLocationsReplaysCreateCall) Do(opts ...googleapi.CallOptio } return ret, nil // { - // "description": "Creates and starts a Replay using the given ReplayConfig.", - // "flatPath": "v1beta1/organizations/{organizationsId}/locations/{locationsId}/replays", - // "httpMethod": "POST", - // "id": "policysimulator.organizations.locations.replays.create", + // "description": "Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.", + // "flatPath": "v1beta1/organizations/{organizationsId}/locations/{locationsId}/orgPolicyViolationsPreviews/{orgPolicyViolationsPreviewsId}/operations/{operationsId}", + // "httpMethod": "GET", + // "id": "policysimulator.organizations.locations.orgPolicyViolationsPreviews.operations.get", // "parameterOrder": [ - // "parent" + // "name" // ], // "parameters": { - // "parent": { - // "description": "Required. The parent resource where this Replay will be created. This resource must be a project, folder, or organization with a location. Example: `projects/my-example-project/locations/global`", + // "name": { + // "description": "The name of the operation resource.", // "location": "path", - // "pattern": "^organizations/[^/]+/locations/[^/]+$", + // "pattern": "^organizations/[^/]+/locations/[^/]+/orgPolicyViolationsPreviews/[^/]+/operations/.*$", // "required": true, // "type": "string" // } // }, - // "path": "v1beta1/{+parent}/replays", - // "request": { - // "$ref": "GoogleCloudPolicysimulatorV1beta1Replay" - // }, + // "path": "v1beta1/{+name}", // "response": { // "$ref": "GoogleLongrunningOperation" // }, @@ -3140,9 +2268,9 @@ func (c *OrganizationsLocationsReplaysCreateCall) Do(opts ...googleapi.CallOptio } -// method id "policysimulator.organizations.locations.replays.get": +// method id "policysimulator.organizations.locations.replays.operations.get": -type OrganizationsLocationsReplaysGetCall struct { +type OrganizationsLocationsReplaysOperationsGetCall struct { s *Service name string urlParams_ gensupport.URLParams @@ -3151,17 +2279,13 @@ type OrganizationsLocationsReplaysGetCall struct { header_ http.Header } -// Get: Gets the specified Replay. Each `Replay` is available for at -// least 7 days. +// Get: Gets the latest state of a long-running operation. Clients can +// use this method to poll the operation result at intervals as +// recommended by the API service. // -// - name: The name of the Replay to retrieve, in the following format: -// `{projects|folders|organizations}/{resource-id}/locations/global/rep -// lays/{replay-id}`, where `{resource-id}` is the ID of the project, -// folder, or organization that owns the `Replay`. Example: -// `projects/my-example-project/locations/global/replays/506a5f7f-38ce- -// 4d7d-8e03-479ce1833c36`. -func (r *OrganizationsLocationsReplaysService) Get(name string) *OrganizationsLocationsReplaysGetCall { - c := &OrganizationsLocationsReplaysGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} +// - name: The name of the operation resource. +func (r *OrganizationsLocationsReplaysOperationsService) Get(name string) *OrganizationsLocationsReplaysOperationsGetCall { + c := &OrganizationsLocationsReplaysOperationsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.name = name return c } @@ -3169,7 +2293,7 @@ func (r *OrganizationsLocationsReplaysService) Get(name string) *OrganizationsLo // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse // for more information. -func (c *OrganizationsLocationsReplaysGetCall) Fields(s ...googleapi.Field) *OrganizationsLocationsReplaysGetCall { +func (c *OrganizationsLocationsReplaysOperationsGetCall) Fields(s ...googleapi.Field) *OrganizationsLocationsReplaysOperationsGetCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } @@ -3179,7 +2303,7 @@ func (c *OrganizationsLocationsReplaysGetCall) Fields(s ...googleapi.Field) *Org // 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 *OrganizationsLocationsReplaysGetCall) IfNoneMatch(entityTag string) *OrganizationsLocationsReplaysGetCall { +func (c *OrganizationsLocationsReplaysOperationsGetCall) IfNoneMatch(entityTag string) *OrganizationsLocationsReplaysOperationsGetCall { c.ifNoneMatch_ = entityTag return c } @@ -3187,21 +2311,21 @@ func (c *OrganizationsLocationsReplaysGetCall) IfNoneMatch(entityTag string) *Or // 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 *OrganizationsLocationsReplaysGetCall) Context(ctx context.Context) *OrganizationsLocationsReplaysGetCall { +func (c *OrganizationsLocationsReplaysOperationsGetCall) Context(ctx context.Context) *OrganizationsLocationsReplaysOperationsGetCall { 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 *OrganizationsLocationsReplaysGetCall) Header() http.Header { +func (c *OrganizationsLocationsReplaysOperationsGetCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } -func (c *OrganizationsLocationsReplaysGetCall) doRequest(alt string) (*http.Response, error) { +func (c *OrganizationsLocationsReplaysOperationsGetCall) 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_ { @@ -3227,15 +2351,14 @@ func (c *OrganizationsLocationsReplaysGetCall) doRequest(alt string) (*http.Resp return gensupport.SendRequest(c.ctx_, c.s.client, req) } -// Do executes the "policysimulator.organizations.locations.replays.get" call. -// Exactly one of *GoogleCloudPolicysimulatorV1beta1Replay or error will -// be non-nil. Any non-2xx status code is an error. Response headers are -// in either -// *GoogleCloudPolicysimulatorV1beta1Replay.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 "policysimulator.organizations.locations.replays.operations.get" 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 *OrganizationsLocationsReplaysGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudPolicysimulatorV1beta1Replay, error) { +func (c *OrganizationsLocationsReplaysOperationsGetCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { @@ -3254,7 +2377,7 @@ func (c *OrganizationsLocationsReplaysGetCall) Do(opts ...googleapi.CallOption) if err := googleapi.CheckResponse(res); err != nil { return nil, gensupport.WrapError(err) } - ret := &GoogleCloudPolicysimulatorV1beta1Replay{ + ret := &GoogleLongrunningOperation{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, @@ -3266,25 +2389,25 @@ func (c *OrganizationsLocationsReplaysGetCall) Do(opts ...googleapi.CallOption) } return ret, nil // { - // "description": "Gets the specified Replay. Each `Replay` is available for at least 7 days.", - // "flatPath": "v1beta1/organizations/{organizationsId}/locations/{locationsId}/replays/{replaysId}", + // "description": "Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.", + // "flatPath": "v1beta1/organizations/{organizationsId}/locations/{locationsId}/replays/{replaysId}/operations/{operationsId}", // "httpMethod": "GET", - // "id": "policysimulator.organizations.locations.replays.get", + // "id": "policysimulator.organizations.locations.replays.operations.get", // "parameterOrder": [ // "name" // ], // "parameters": { // "name": { - // "description": "Required. The name of the Replay to retrieve, in the following format: `{projects|folders|organizations}/{resource-id}/locations/global/replays/{replay-id}`, where `{resource-id}` is the ID of the project, folder, or organization that owns the `Replay`. Example: `projects/my-example-project/locations/global/replays/506a5f7f-38ce-4d7d-8e03-479ce1833c36`", + // "description": "The name of the operation resource.", // "location": "path", - // "pattern": "^organizations/[^/]+/locations/[^/]+/replays/[^/]+$", + // "pattern": "^organizations/[^/]+/locations/[^/]+/replays/[^/]+/operations/.*$", // "required": true, // "type": "string" // } // }, // "path": "v1beta1/{+name}", // "response": { - // "$ref": "GoogleCloudPolicysimulatorV1beta1Replay" + // "$ref": "GoogleLongrunningOperation" // }, // "scopes": [ // "https://www.googleapis.com/auth/cloud-platform" @@ -3293,9 +2416,9 @@ func (c *OrganizationsLocationsReplaysGetCall) Do(opts ...googleapi.CallOption) } -// method id "policysimulator.organizations.locations.replays.operations.get": +// method id "policysimulator.organizations.locations.replays.operations.list": -type OrganizationsLocationsReplaysOperationsGetCall struct { +type OrganizationsLocationsReplaysOperationsListCall struct { s *Service name string urlParams_ gensupport.URLParams @@ -3304,645 +2427,115 @@ type OrganizationsLocationsReplaysOperationsGetCall struct { header_ http.Header } -// Get: Gets the latest state of a long-running operation. Clients can -// use this method to poll the operation result at intervals as -// recommended by the API service. +// List: Lists operations that match the specified filter in the +// request. If the server doesn't support this method, it returns +// `UNIMPLEMENTED`. NOTE: the `name` binding allows API services to +// override the binding to use different resource name schemes, such as +// `users/*/operations`. To override the binding, API services can add a +// binding such as "/v1/{name=users/*}/operations" to their service +// configuration. For backwards compatibility, the default name includes +// the operations collection id, however overriding users must ensure +// the name binding is the parent resource, without the operations +// collection id. // -// - name: The name of the operation resource. -func (r *OrganizationsLocationsReplaysOperationsService) Get(name string) *OrganizationsLocationsReplaysOperationsGetCall { - c := &OrganizationsLocationsReplaysOperationsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} +// - name: The name of the operation's parent resource. +func (r *OrganizationsLocationsReplaysOperationsService) List(name string) *OrganizationsLocationsReplaysOperationsListCall { + c := &OrganizationsLocationsReplaysOperationsListCall{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 *OrganizationsLocationsReplaysOperationsGetCall) Fields(s ...googleapi.Field) *OrganizationsLocationsReplaysOperationsGetCall { - 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 *OrganizationsLocationsReplaysOperationsGetCall) IfNoneMatch(entityTag string) *OrganizationsLocationsReplaysOperationsGetCall { - c.ifNoneMatch_ = entityTag +// Filter sets the optional parameter "filter": The standard list +// filter. +func (c *OrganizationsLocationsReplaysOperationsListCall) Filter(filter string) *OrganizationsLocationsReplaysOperationsListCall { + 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 *OrganizationsLocationsReplaysOperationsGetCall) Context(ctx context.Context) *OrganizationsLocationsReplaysOperationsGetCall { - 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 *OrganizationsLocationsReplaysOperationsGetCall) Header() http.Header { - if c.header_ == nil { - c.header_ = make(http.Header) - } - return c.header_ -} - -func (c *OrganizationsLocationsReplaysOperationsGetCall) 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, "v1beta1/{+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 "policysimulator.organizations.locations.replays.operations.get" 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 *OrganizationsLocationsReplaysOperationsGetCall) 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": "Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.", - // "flatPath": "v1beta1/organizations/{organizationsId}/locations/{locationsId}/replays/{replaysId}/operations/{operationsId}", - // "httpMethod": "GET", - // "id": "policysimulator.organizations.locations.replays.operations.get", - // "parameterOrder": [ - // "name" - // ], - // "parameters": { - // "name": { - // "description": "The name of the operation resource.", - // "location": "path", - // "pattern": "^organizations/[^/]+/locations/[^/]+/replays/[^/]+/operations/.*$", - // "required": true, - // "type": "string" - // } - // }, - // "path": "v1beta1/{+name}", - // "response": { - // "$ref": "GoogleLongrunningOperation" - // }, - // "scopes": [ - // "https://www.googleapis.com/auth/cloud-platform" - // ] - // } - -} - -// method id "policysimulator.organizations.locations.replays.operations.list": - -type OrganizationsLocationsReplaysOperationsListCall struct { - s *Service - name string - urlParams_ gensupport.URLParams - ifNoneMatch_ string - ctx_ context.Context - header_ http.Header -} - -// List: Lists operations that match the specified filter in the -// request. If the server doesn't support this method, it returns -// `UNIMPLEMENTED`. NOTE: the `name` binding allows API services to -// override the binding to use different resource name schemes, such as -// `users/*/operations`. To override the binding, API services can add a -// binding such as "/v1/{name=users/*}/operations" to their service -// configuration. For backwards compatibility, the default name includes -// the operations collection id, however overriding users must ensure -// the name binding is the parent resource, without the operations -// collection id. -// -// - name: The name of the operation's parent resource. -func (r *OrganizationsLocationsReplaysOperationsService) List(name string) *OrganizationsLocationsReplaysOperationsListCall { - c := &OrganizationsLocationsReplaysOperationsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} - c.name = name - return c -} - -// Filter sets the optional parameter "filter": The standard list -// filter. -func (c *OrganizationsLocationsReplaysOperationsListCall) Filter(filter string) *OrganizationsLocationsReplaysOperationsListCall { - c.urlParams_.Set("filter", filter) - return c -} - -// PageSize sets the optional parameter "pageSize": The standard list -// page size. -func (c *OrganizationsLocationsReplaysOperationsListCall) PageSize(pageSize int64) *OrganizationsLocationsReplaysOperationsListCall { - c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) +// PageSize sets the optional parameter "pageSize": The standard list +// page size. +func (c *OrganizationsLocationsReplaysOperationsListCall) PageSize(pageSize int64) *OrganizationsLocationsReplaysOperationsListCall { + c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) return c } // PageToken sets the optional parameter "pageToken": The standard list // page token. -func (c *OrganizationsLocationsReplaysOperationsListCall) PageToken(pageToken string) *OrganizationsLocationsReplaysOperationsListCall { - 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 *OrganizationsLocationsReplaysOperationsListCall) Fields(s ...googleapi.Field) *OrganizationsLocationsReplaysOperationsListCall { - 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 *OrganizationsLocationsReplaysOperationsListCall) IfNoneMatch(entityTag string) *OrganizationsLocationsReplaysOperationsListCall { - 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 *OrganizationsLocationsReplaysOperationsListCall) Context(ctx context.Context) *OrganizationsLocationsReplaysOperationsListCall { - 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 *OrganizationsLocationsReplaysOperationsListCall) Header() http.Header { - if c.header_ == nil { - c.header_ = make(http.Header) - } - return c.header_ -} - -func (c *OrganizationsLocationsReplaysOperationsListCall) 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, "v1beta1/{+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 "policysimulator.organizations.locations.replays.operations.list" call. -// Exactly one of *GoogleLongrunningListOperationsResponse or error will -// be non-nil. Any non-2xx status code is an error. Response headers are -// in either -// *GoogleLongrunningListOperationsResponse.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 *OrganizationsLocationsReplaysOperationsListCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningListOperationsResponse, 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 := &GoogleLongrunningListOperationsResponse{ - 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 operations that match the specified filter in the request. If the server doesn't support this method, it returns `UNIMPLEMENTED`. NOTE: the `name` binding allows API services to override the binding to use different resource name schemes, such as `users/*/operations`. To override the binding, API services can add a binding such as `\"/v1/{name=users/*}/operations\"` to their service configuration. For backwards compatibility, the default name includes the operations collection id, however overriding users must ensure the name binding is the parent resource, without the operations collection id.", - // "flatPath": "v1beta1/organizations/{organizationsId}/locations/{locationsId}/replays/{replaysId}/operations", - // "httpMethod": "GET", - // "id": "policysimulator.organizations.locations.replays.operations.list", - // "parameterOrder": [ - // "name" - // ], - // "parameters": { - // "filter": { - // "description": "The standard list filter.", - // "location": "query", - // "type": "string" - // }, - // "name": { - // "description": "The name of the operation's parent resource.", - // "location": "path", - // "pattern": "^organizations/[^/]+/locations/[^/]+/replays/[^/]+/operations$", - // "required": true, - // "type": "string" - // }, - // "pageSize": { - // "description": "The standard list page size.", - // "format": "int32", - // "location": "query", - // "type": "integer" - // }, - // "pageToken": { - // "description": "The standard list page token.", - // "location": "query", - // "type": "string" - // } - // }, - // "path": "v1beta1/{+name}", - // "response": { - // "$ref": "GoogleLongrunningListOperationsResponse" - // }, - // "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 *OrganizationsLocationsReplaysOperationsListCall) Pages(ctx context.Context, f func(*GoogleLongrunningListOperationsResponse) 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 "policysimulator.organizations.locations.replays.results.list": - -type OrganizationsLocationsReplaysResultsListCall struct { - s *Service - parent string - urlParams_ gensupport.URLParams - ifNoneMatch_ string - ctx_ context.Context - header_ http.Header -} - -// List: Lists the results of running a Replay. -// -// - parent: The Replay whose results are listed, in the following -// format: -// `{projects|folders|organizations}/{resource-id}/locations/global/rep -// lays/{replay-id}` Example: -// `projects/my-project/locations/global/replays/506a5f7f-38ce-4d7d-8e0 -// 3-479ce1833c36`. -func (r *OrganizationsLocationsReplaysResultsService) List(parent string) *OrganizationsLocationsReplaysResultsListCall { - c := &OrganizationsLocationsReplaysResultsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} - c.parent = parent - return c -} - -// PageSize sets the optional parameter "pageSize": The maximum number -// of ReplayResult objects to return. Defaults to 5000. The maximum -// value is 5000; values above 5000 are rounded down to 5000. -func (c *OrganizationsLocationsReplaysResultsListCall) PageSize(pageSize int64) *OrganizationsLocationsReplaysResultsListCall { - c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) - return c -} - -// PageToken sets the optional parameter "pageToken": A page token, -// received from a previous Simulator.ListReplayResults call. Provide -// this token to retrieve the next page of results. When paginating, all -// other parameters provided to [Simulator.ListReplayResults[] must -// match the call that provided the page token. -func (c *OrganizationsLocationsReplaysResultsListCall) PageToken(pageToken string) *OrganizationsLocationsReplaysResultsListCall { - 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 *OrganizationsLocationsReplaysResultsListCall) Fields(s ...googleapi.Field) *OrganizationsLocationsReplaysResultsListCall { - 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 *OrganizationsLocationsReplaysResultsListCall) IfNoneMatch(entityTag string) *OrganizationsLocationsReplaysResultsListCall { - 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 *OrganizationsLocationsReplaysResultsListCall) Context(ctx context.Context) *OrganizationsLocationsReplaysResultsListCall { - 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 *OrganizationsLocationsReplaysResultsListCall) Header() http.Header { - if c.header_ == nil { - c.header_ = make(http.Header) - } - return c.header_ -} - -func (c *OrganizationsLocationsReplaysResultsListCall) 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, "v1beta1/{+parent}/results") - 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 "policysimulator.organizations.locations.replays.results.list" call. -// Exactly one of -// *GoogleCloudPolicysimulatorV1beta1ListReplayResultsResponse or error -// will be non-nil. Any non-2xx status code is an error. Response -// headers are in either -// *GoogleCloudPolicysimulatorV1beta1ListReplayResultsResponse.ServerResp -// onse.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 *OrganizationsLocationsReplaysResultsListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudPolicysimulatorV1beta1ListReplayResultsResponse, 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 := &GoogleCloudPolicysimulatorV1beta1ListReplayResultsResponse{ - 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 results of running a Replay.", - // "flatPath": "v1beta1/organizations/{organizationsId}/locations/{locationsId}/replays/{replaysId}/results", - // "httpMethod": "GET", - // "id": "policysimulator.organizations.locations.replays.results.list", - // "parameterOrder": [ - // "parent" - // ], - // "parameters": { - // "pageSize": { - // "description": "The maximum number of ReplayResult objects to return. Defaults to 5000. The maximum value is 5000; values above 5000 are rounded down to 5000.", - // "format": "int32", - // "location": "query", - // "type": "integer" - // }, - // "pageToken": { - // "description": "A page token, received from a previous Simulator.ListReplayResults call. Provide this token to retrieve the next page of results. When paginating, all other parameters provided to [Simulator.ListReplayResults[] must match the call that provided the page token.", - // "location": "query", - // "type": "string" - // }, - // "parent": { - // "description": "Required. The Replay whose results are listed, in the following format: `{projects|folders|organizations}/{resource-id}/locations/global/replays/{replay-id}` Example: `projects/my-project/locations/global/replays/506a5f7f-38ce-4d7d-8e03-479ce1833c36`", - // "location": "path", - // "pattern": "^organizations/[^/]+/locations/[^/]+/replays/[^/]+$", - // "required": true, - // "type": "string" - // } - // }, - // "path": "v1beta1/{+parent}/results", - // "response": { - // "$ref": "GoogleCloudPolicysimulatorV1beta1ListReplayResultsResponse" - // }, - // "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 *OrganizationsLocationsReplaysResultsListCall) Pages(ctx context.Context, f func(*GoogleCloudPolicysimulatorV1beta1ListReplayResultsResponse) 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 "policysimulator.projects.locations.replays.create": - -type ProjectsLocationsReplaysCreateCall struct { - s *Service - parent string - googlecloudpolicysimulatorv1beta1replay *GoogleCloudPolicysimulatorV1beta1Replay - urlParams_ gensupport.URLParams - ctx_ context.Context - header_ http.Header -} - -// Create: Creates and starts a Replay using the given ReplayConfig. -// -// - parent: The parent resource where this Replay will be created. This -// resource must be a project, folder, or organization with a -// location. Example: `projects/my-example-project/locations/global`. -func (r *ProjectsLocationsReplaysService) Create(parent string, googlecloudpolicysimulatorv1beta1replay *GoogleCloudPolicysimulatorV1beta1Replay) *ProjectsLocationsReplaysCreateCall { - c := &ProjectsLocationsReplaysCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} - c.parent = parent - c.googlecloudpolicysimulatorv1beta1replay = googlecloudpolicysimulatorv1beta1replay +func (c *OrganizationsLocationsReplaysOperationsListCall) PageToken(pageToken string) *OrganizationsLocationsReplaysOperationsListCall { + 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 *ProjectsLocationsReplaysCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsReplaysCreateCall { +func (c *OrganizationsLocationsReplaysOperationsListCall) Fields(s ...googleapi.Field) *OrganizationsLocationsReplaysOperationsListCall { 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 *OrganizationsLocationsReplaysOperationsListCall) IfNoneMatch(entityTag string) *OrganizationsLocationsReplaysOperationsListCall { + 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 *ProjectsLocationsReplaysCreateCall) Context(ctx context.Context) *ProjectsLocationsReplaysCreateCall { +func (c *OrganizationsLocationsReplaysOperationsListCall) Context(ctx context.Context) *OrganizationsLocationsReplaysOperationsListCall { 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 *ProjectsLocationsReplaysCreateCall) Header() http.Header { +func (c *OrganizationsLocationsReplaysOperationsListCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } -func (c *ProjectsLocationsReplaysCreateCall) doRequest(alt string) (*http.Response, error) { +func (c *OrganizationsLocationsReplaysOperationsListCall) 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.googlecloudpolicysimulatorv1beta1replay) - 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, "v1beta1/{+parent}/replays") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+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{ - "parent": c.parent, + "name": c.name, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } -// Do executes the "policysimulator.projects.locations.replays.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 +// Do executes the "policysimulator.organizations.locations.replays.operations.list" call. +// Exactly one of *GoogleLongrunningListOperationsResponse or error will +// be non-nil. Any non-2xx status code is an error. Response headers are +// in either +// *GoogleLongrunningListOperationsResponse.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 *ProjectsLocationsReplaysCreateCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) { +func (c *OrganizationsLocationsReplaysOperationsListCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningListOperationsResponse, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { @@ -3961,7 +2554,7 @@ func (c *ProjectsLocationsReplaysCreateCall) Do(opts ...googleapi.CallOption) (* if err := googleapi.CheckResponse(res); err != nil { return nil, gensupport.WrapError(err) } - ret := &GoogleLongrunningOperation{ + ret := &GoogleLongrunningListOperationsResponse{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, @@ -3973,28 +2566,41 @@ func (c *ProjectsLocationsReplaysCreateCall) Do(opts ...googleapi.CallOption) (* } return ret, nil // { - // "description": "Creates and starts a Replay using the given ReplayConfig.", - // "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/replays", - // "httpMethod": "POST", - // "id": "policysimulator.projects.locations.replays.create", + // "description": "Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns `UNIMPLEMENTED`. NOTE: the `name` binding allows API services to override the binding to use different resource name schemes, such as `users/*/operations`. To override the binding, API services can add a binding such as `\"/v1/{name=users/*}/operations\"` to their service configuration. For backwards compatibility, the default name includes the operations collection id, however overriding users must ensure the name binding is the parent resource, without the operations collection id.", + // "flatPath": "v1beta1/organizations/{organizationsId}/locations/{locationsId}/replays/{replaysId}/operations", + // "httpMethod": "GET", + // "id": "policysimulator.organizations.locations.replays.operations.list", // "parameterOrder": [ - // "parent" + // "name" // ], // "parameters": { - // "parent": { - // "description": "Required. The parent resource where this Replay will be created. This resource must be a project, folder, or organization with a location. Example: `projects/my-example-project/locations/global`", + // "filter": { + // "description": "The standard list filter.", + // "location": "query", + // "type": "string" + // }, + // "name": { + // "description": "The name of the operation's parent resource.", // "location": "path", - // "pattern": "^projects/[^/]+/locations/[^/]+$", + // "pattern": "^organizations/[^/]+/locations/[^/]+/replays/[^/]+/operations$", // "required": true, // "type": "string" + // }, + // "pageSize": { + // "description": "The standard list page size.", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "pageToken": { + // "description": "The standard list page token.", + // "location": "query", + // "type": "string" // } // }, - // "path": "v1beta1/{+parent}/replays", - // "request": { - // "$ref": "GoogleCloudPolicysimulatorV1beta1Replay" - // }, + // "path": "v1beta1/{+name}", // "response": { - // "$ref": "GoogleLongrunningOperation" + // "$ref": "GoogleLongrunningListOperationsResponse" // }, // "scopes": [ // "https://www.googleapis.com/auth/cloud-platform" @@ -4003,9 +2609,30 @@ func (c *ProjectsLocationsReplaysCreateCall) Do(opts ...googleapi.CallOption) (* } -// method id "policysimulator.projects.locations.replays.get": +// 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 *OrganizationsLocationsReplaysOperationsListCall) Pages(ctx context.Context, f func(*GoogleLongrunningListOperationsResponse) 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 "policysimulator.projects.locations.orgPolicyViolationsPreviews.operations.get": -type ProjectsLocationsReplaysGetCall struct { +type ProjectsLocationsOrgPolicyViolationsPreviewsOperationsGetCall struct { s *Service name string urlParams_ gensupport.URLParams @@ -4014,17 +2641,13 @@ type ProjectsLocationsReplaysGetCall struct { header_ http.Header } -// Get: Gets the specified Replay. Each `Replay` is available for at -// least 7 days. +// Get: Gets the latest state of a long-running operation. Clients can +// use this method to poll the operation result at intervals as +// recommended by the API service. // -// - name: The name of the Replay to retrieve, in the following format: -// `{projects|folders|organizations}/{resource-id}/locations/global/rep -// lays/{replay-id}`, where `{resource-id}` is the ID of the project, -// folder, or organization that owns the `Replay`. Example: -// `projects/my-example-project/locations/global/replays/506a5f7f-38ce- -// 4d7d-8e03-479ce1833c36`. -func (r *ProjectsLocationsReplaysService) Get(name string) *ProjectsLocationsReplaysGetCall { - c := &ProjectsLocationsReplaysGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} +// - name: The name of the operation resource. +func (r *ProjectsLocationsOrgPolicyViolationsPreviewsOperationsService) Get(name string) *ProjectsLocationsOrgPolicyViolationsPreviewsOperationsGetCall { + c := &ProjectsLocationsOrgPolicyViolationsPreviewsOperationsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.name = name return c } @@ -4032,7 +2655,7 @@ func (r *ProjectsLocationsReplaysService) Get(name string) *ProjectsLocationsRep // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse // for more information. -func (c *ProjectsLocationsReplaysGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsReplaysGetCall { +func (c *ProjectsLocationsOrgPolicyViolationsPreviewsOperationsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsOrgPolicyViolationsPreviewsOperationsGetCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } @@ -4042,7 +2665,7 @@ func (c *ProjectsLocationsReplaysGetCall) Fields(s ...googleapi.Field) *Projects // 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 *ProjectsLocationsReplaysGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsReplaysGetCall { +func (c *ProjectsLocationsOrgPolicyViolationsPreviewsOperationsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsOrgPolicyViolationsPreviewsOperationsGetCall { c.ifNoneMatch_ = entityTag return c } @@ -4050,21 +2673,21 @@ func (c *ProjectsLocationsReplaysGetCall) IfNoneMatch(entityTag string) *Project // 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 *ProjectsLocationsReplaysGetCall) Context(ctx context.Context) *ProjectsLocationsReplaysGetCall { +func (c *ProjectsLocationsOrgPolicyViolationsPreviewsOperationsGetCall) Context(ctx context.Context) *ProjectsLocationsOrgPolicyViolationsPreviewsOperationsGetCall { 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 *ProjectsLocationsReplaysGetCall) Header() http.Header { +func (c *ProjectsLocationsOrgPolicyViolationsPreviewsOperationsGetCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } -func (c *ProjectsLocationsReplaysGetCall) doRequest(alt string) (*http.Response, error) { +func (c *ProjectsLocationsOrgPolicyViolationsPreviewsOperationsGetCall) 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_ { @@ -4090,15 +2713,14 @@ func (c *ProjectsLocationsReplaysGetCall) doRequest(alt string) (*http.Response, return gensupport.SendRequest(c.ctx_, c.s.client, req) } -// Do executes the "policysimulator.projects.locations.replays.get" call. -// Exactly one of *GoogleCloudPolicysimulatorV1beta1Replay or error will -// be non-nil. Any non-2xx status code is an error. Response headers are -// in either -// *GoogleCloudPolicysimulatorV1beta1Replay.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 "policysimulator.projects.locations.orgPolicyViolationsPreviews.operations.get" 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 *ProjectsLocationsReplaysGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudPolicysimulatorV1beta1Replay, error) { +func (c *ProjectsLocationsOrgPolicyViolationsPreviewsOperationsGetCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { @@ -4117,7 +2739,7 @@ func (c *ProjectsLocationsReplaysGetCall) Do(opts ...googleapi.CallOption) (*Goo if err := googleapi.CheckResponse(res); err != nil { return nil, gensupport.WrapError(err) } - ret := &GoogleCloudPolicysimulatorV1beta1Replay{ + ret := &GoogleLongrunningOperation{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, @@ -4129,25 +2751,25 @@ func (c *ProjectsLocationsReplaysGetCall) Do(opts ...googleapi.CallOption) (*Goo } return ret, nil // { - // "description": "Gets the specified Replay. Each `Replay` is available for at least 7 days.", - // "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/replays/{replaysId}", + // "description": "Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.", + // "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/orgPolicyViolationsPreviews/{orgPolicyViolationsPreviewsId}/operations/{operationsId}", // "httpMethod": "GET", - // "id": "policysimulator.projects.locations.replays.get", + // "id": "policysimulator.projects.locations.orgPolicyViolationsPreviews.operations.get", // "parameterOrder": [ // "name" // ], // "parameters": { // "name": { - // "description": "Required. The name of the Replay to retrieve, in the following format: `{projects|folders|organizations}/{resource-id}/locations/global/replays/{replay-id}`, where `{resource-id}` is the ID of the project, folder, or organization that owns the `Replay`. Example: `projects/my-example-project/locations/global/replays/506a5f7f-38ce-4d7d-8e03-479ce1833c36`", + // "description": "The name of the operation resource.", // "location": "path", - // "pattern": "^projects/[^/]+/locations/[^/]+/replays/[^/]+$", + // "pattern": "^projects/[^/]+/locations/[^/]+/orgPolicyViolationsPreviews/[^/]+/operations/.*$", // "required": true, // "type": "string" // } // }, // "path": "v1beta1/{+name}", // "response": { - // "$ref": "GoogleCloudPolicysimulatorV1beta1Replay" + // "$ref": "GoogleLongrunningOperation" // }, // "scopes": [ // "https://www.googleapis.com/auth/cloud-platform" @@ -4517,207 +3139,3 @@ func (c *ProjectsLocationsReplaysOperationsListCall) Pages(ctx context.Context, c.PageToken(x.NextPageToken) } } - -// method id "policysimulator.projects.locations.replays.results.list": - -type ProjectsLocationsReplaysResultsListCall struct { - s *Service - parent string - urlParams_ gensupport.URLParams - ifNoneMatch_ string - ctx_ context.Context - header_ http.Header -} - -// List: Lists the results of running a Replay. -// -// - parent: The Replay whose results are listed, in the following -// format: -// `{projects|folders|organizations}/{resource-id}/locations/global/rep -// lays/{replay-id}` Example: -// `projects/my-project/locations/global/replays/506a5f7f-38ce-4d7d-8e0 -// 3-479ce1833c36`. -func (r *ProjectsLocationsReplaysResultsService) List(parent string) *ProjectsLocationsReplaysResultsListCall { - c := &ProjectsLocationsReplaysResultsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} - c.parent = parent - return c -} - -// PageSize sets the optional parameter "pageSize": The maximum number -// of ReplayResult objects to return. Defaults to 5000. The maximum -// value is 5000; values above 5000 are rounded down to 5000. -func (c *ProjectsLocationsReplaysResultsListCall) PageSize(pageSize int64) *ProjectsLocationsReplaysResultsListCall { - c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) - return c -} - -// PageToken sets the optional parameter "pageToken": A page token, -// received from a previous Simulator.ListReplayResults call. Provide -// this token to retrieve the next page of results. When paginating, all -// other parameters provided to [Simulator.ListReplayResults[] must -// match the call that provided the page token. -func (c *ProjectsLocationsReplaysResultsListCall) PageToken(pageToken string) *ProjectsLocationsReplaysResultsListCall { - 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 *ProjectsLocationsReplaysResultsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsReplaysResultsListCall { - 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 *ProjectsLocationsReplaysResultsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsReplaysResultsListCall { - 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 *ProjectsLocationsReplaysResultsListCall) Context(ctx context.Context) *ProjectsLocationsReplaysResultsListCall { - 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 *ProjectsLocationsReplaysResultsListCall) Header() http.Header { - if c.header_ == nil { - c.header_ = make(http.Header) - } - return c.header_ -} - -func (c *ProjectsLocationsReplaysResultsListCall) 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, "v1beta1/{+parent}/results") - 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 "policysimulator.projects.locations.replays.results.list" call. -// Exactly one of -// *GoogleCloudPolicysimulatorV1beta1ListReplayResultsResponse or error -// will be non-nil. Any non-2xx status code is an error. Response -// headers are in either -// *GoogleCloudPolicysimulatorV1beta1ListReplayResultsResponse.ServerResp -// onse.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 *ProjectsLocationsReplaysResultsListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudPolicysimulatorV1beta1ListReplayResultsResponse, 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 := &GoogleCloudPolicysimulatorV1beta1ListReplayResultsResponse{ - 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 results of running a Replay.", - // "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/replays/{replaysId}/results", - // "httpMethod": "GET", - // "id": "policysimulator.projects.locations.replays.results.list", - // "parameterOrder": [ - // "parent" - // ], - // "parameters": { - // "pageSize": { - // "description": "The maximum number of ReplayResult objects to return. Defaults to 5000. The maximum value is 5000; values above 5000 are rounded down to 5000.", - // "format": "int32", - // "location": "query", - // "type": "integer" - // }, - // "pageToken": { - // "description": "A page token, received from a previous Simulator.ListReplayResults call. Provide this token to retrieve the next page of results. When paginating, all other parameters provided to [Simulator.ListReplayResults[] must match the call that provided the page token.", - // "location": "query", - // "type": "string" - // }, - // "parent": { - // "description": "Required. The Replay whose results are listed, in the following format: `{projects|folders|organizations}/{resource-id}/locations/global/replays/{replay-id}` Example: `projects/my-project/locations/global/replays/506a5f7f-38ce-4d7d-8e03-479ce1833c36`", - // "location": "path", - // "pattern": "^projects/[^/]+/locations/[^/]+/replays/[^/]+$", - // "required": true, - // "type": "string" - // } - // }, - // "path": "v1beta1/{+parent}/results", - // "response": { - // "$ref": "GoogleCloudPolicysimulatorV1beta1ListReplayResultsResponse" - // }, - // "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 *ProjectsLocationsReplaysResultsListCall) Pages(ctx context.Context, f func(*GoogleCloudPolicysimulatorV1beta1ListReplayResultsResponse) 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/recaptchaenterprise/v1/recaptchaenterprise-api.json b/recaptchaenterprise/v1/recaptchaenterprise-api.json index 5691d232210..b5135fa2ea3 100644 --- a/recaptchaenterprise/v1/recaptchaenterprise-api.json +++ b/recaptchaenterprise/v1/recaptchaenterprise-api.json @@ -514,7 +514,7 @@ } } }, - "revision": "20230212", + "revision": "20230219", "rootUrl": "https://recaptchaenterprise.googleapis.com/", "schemas": { "GoogleCloudRecaptchaenterpriseV1AccountDefenderAssessment": { @@ -711,6 +711,10 @@ "$ref": "GoogleCloudRecaptchaenterpriseV1Event", "description": "The event being assessed." }, + "fraudPreventionAssessment": { + "$ref": "GoogleCloudRecaptchaenterpriseV1FraudPreventionAssessment", + "description": "Assessment returned by Fraud Prevention when TransactionData is provided." + }, "name": { "description": "Output only. The resource name for the Assessment in the format \"projects/{project}/assessments/{assessment}\".", "readOnly": true, @@ -806,6 +810,10 @@ "description": "Optional. The user response token provided by the reCAPTCHA Enterprise client-side integration on your site.", "type": "string" }, + "transactionData": { + "$ref": "GoogleCloudRecaptchaenterpriseV1TransactionData", + "description": "Optional. Data describing a payment transaction to be assessed. Sending this data enables reCAPTCHA Enterprise Fraud Prevention and the FraudPreventionAssessment component in the response." + }, "userAgent": { "description": "Optional. The user agent present in the request from the user's device related to this event.", "type": "string" @@ -817,6 +825,50 @@ }, "type": "object" }, + "GoogleCloudRecaptchaenterpriseV1FraudPreventionAssessment": { + "description": "Assessment for Fraud Prevention.", + "id": "GoogleCloudRecaptchaenterpriseV1FraudPreventionAssessment", + "properties": { + "cardTestingVerdict": { + "$ref": "GoogleCloudRecaptchaenterpriseV1FraudPreventionAssessmentCardTestingVerdict", + "description": "Assessment of this transaction for risk of being part of a card testing attack." + }, + "stolenInstrumentVerdict": { + "$ref": "GoogleCloudRecaptchaenterpriseV1FraudPreventionAssessmentStolenInstrumentVerdict", + "description": "Assessment of this transaction for risk of a stolen instrument." + }, + "transactionRisk": { + "description": "Probability (0-1) of this transaction being fraudulent. Summarizes the combined risk of attack vectors below.", + "format": "float", + "type": "number" + } + }, + "type": "object" + }, + "GoogleCloudRecaptchaenterpriseV1FraudPreventionAssessmentCardTestingVerdict": { + "description": "Information about card testing fraud, where an adversary is testing fraudulently obtained cards or brute forcing their details.", + "id": "GoogleCloudRecaptchaenterpriseV1FraudPreventionAssessmentCardTestingVerdict", + "properties": { + "risk": { + "description": "Probability (0-1) of this transaction attempt being part of a card testing attack.", + "format": "float", + "type": "number" + } + }, + "type": "object" + }, + "GoogleCloudRecaptchaenterpriseV1FraudPreventionAssessmentStolenInstrumentVerdict": { + "description": "Information about stolen instrument fraud, where the user is not the legitimate owner of the instrument being used for the purchase.", + "id": "GoogleCloudRecaptchaenterpriseV1FraudPreventionAssessmentStolenInstrumentVerdict", + "properties": { + "risk": { + "description": "Probability (0-1) of this transaction being executed with a stolen instrument.", + "format": "float", + "type": "number" + } + }, + "type": "object" + }, "GoogleCloudRecaptchaenterpriseV1IOSKeySettings": { "description": "Settings specific to keys that can be used by iOS apps.", "id": "GoogleCloudRecaptchaenterpriseV1IOSKeySettings", @@ -1061,7 +1113,9 @@ "UNEXPECTED_ENVIRONMENT", "TOO_MUCH_TRAFFIC", "UNEXPECTED_USAGE_PATTERNS", - "LOW_CONFIDENCE_SCORE" + "LOW_CONFIDENCE_SCORE", + "SUSPECTED_CARDING", + "SUSPECTED_CHARGEBACK" ], "enumDescriptions": [ "Default unspecified type.", @@ -1069,7 +1123,9 @@ "The event originated from an illegitimate environment.", "Traffic volume from the event source is higher than normal.", "Interactions with the site were significantly different than expected patterns.", - "Too little traffic has been received from this site thus far to generate quality risk analysis." + "Too little traffic has been received from this site thus far to generate quality risk analysis.", + "The request matches behavioral characteristics of a carding attack.", + "The request matches behavioral characteristics of chargebacks for fraud." ], "type": "string" }, @@ -1234,6 +1290,187 @@ }, "type": "object" }, + "GoogleCloudRecaptchaenterpriseV1TransactionData": { + "description": "Transaction data associated with a payment protected by reCAPTCHA Enterprise. All fields are optional.", + "id": "GoogleCloudRecaptchaenterpriseV1TransactionData", + "properties": { + "billingAddress": { + "$ref": "GoogleCloudRecaptchaenterpriseV1TransactionDataAddress", + "description": "Address associated with the payment method when applicable." + }, + "cardBin": { + "description": "The Bank Identification Number - generally the first 6 or 8 digits of the card.", + "type": "string" + }, + "cardLastFour": { + "description": "The last four digits of the card.", + "type": "string" + }, + "currencyCode": { + "description": "The currency code in ISO-4217 format.", + "type": "string" + }, + "gatewayInfo": { + "$ref": "GoogleCloudRecaptchaenterpriseV1TransactionDataGatewayInfo", + "description": "Information about the payment gateway's response to the transaction." + }, + "items": { + "description": "Items purchased in this transaction.", + "items": { + "$ref": "GoogleCloudRecaptchaenterpriseV1TransactionDataItem" + }, + "type": "array" + }, + "merchants": { + "description": "Information about the user or users fulfilling the transaction.", + "items": { + "$ref": "GoogleCloudRecaptchaenterpriseV1TransactionDataUser" + }, + "type": "array" + }, + "paymentMethod": { + "description": "The payment method for the transaction. The allowed values are: * credit-card * debit-card * gift-card * processor-{name} (If a third-party is used, for example, processor-paypal) * custom-{name} (If an alternative method is used, for example, custom-crypto)", + "type": "string" + }, + "shippingAddress": { + "$ref": "GoogleCloudRecaptchaenterpriseV1TransactionDataAddress", + "description": "Destination address if this transaction involves shipping a physical item." + }, + "shippingValue": { + "description": "The value of shipping in the specified currency. 0 for free or no shipping.", + "format": "double", + "type": "number" + }, + "transactionId": { + "description": "Unique identifier for the transaction. This custom identifier can be used to reference this transaction in the future, for example, labeling a refund or chargeback event. Two attempts at the same transaction should use the same transaction id.", + "type": "string" + }, + "user": { + "$ref": "GoogleCloudRecaptchaenterpriseV1TransactionDataUser", + "description": "Information about the user paying/initiating the transaction." + }, + "value": { + "description": "The decimal value of the transaction in the specified currency.", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "GoogleCloudRecaptchaenterpriseV1TransactionDataAddress": { + "description": "Structured address format for billing and shipping addresses.", + "id": "GoogleCloudRecaptchaenterpriseV1TransactionDataAddress", + "properties": { + "address": { + "description": "The first lines of the address. The first line generally contains the street name and number, and further lines may include information such as an apartment number.", + "items": { + "type": "string" + }, + "type": "array" + }, + "administrativeArea": { + "description": "The state, province, or otherwise administrative area of the address.", + "type": "string" + }, + "locality": { + "description": "The town/city of the address.", + "type": "string" + }, + "postalCode": { + "description": "The postal or ZIP code of the address.", + "type": "string" + }, + "recipient": { + "description": "The recipient name, potentially including information such as \"care of\".", + "type": "string" + }, + "regionCode": { + "description": "The CLDR country/region of the address.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudRecaptchaenterpriseV1TransactionDataGatewayInfo": { + "description": "Details about the transaction from the gateway.", + "id": "GoogleCloudRecaptchaenterpriseV1TransactionDataGatewayInfo", + "properties": { + "avsResponseCode": { + "description": "AVS response code from the gateway (available only when reCAPTCHA Enterprise is called after authorization).", + "type": "string" + }, + "cvvResponseCode": { + "description": "CVV response code from the gateway (available only when reCAPTCHA Enterprise is called after authorization).", + "type": "string" + }, + "gatewayResponseCode": { + "description": "Gateway response code describing the state of the transaction.", + "type": "string" + }, + "name": { + "description": "Name of the gateway service (for example, stripe, square, paypal).", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudRecaptchaenterpriseV1TransactionDataItem": { + "description": "Line items being purchased in this transaction.", + "id": "GoogleCloudRecaptchaenterpriseV1TransactionDataItem", + "properties": { + "merchantAccountId": { + "description": "When a merchant is specified, its corresponding account_id. Necessary to populate marketplace-style transactions.", + "type": "string" + }, + "name": { + "description": "The full name of the item.", + "type": "string" + }, + "quantity": { + "description": "The quantity of this item that is being purchased.", + "format": "int64", + "type": "string" + }, + "value": { + "description": "The value per item that the user is paying, in the transaction currency, after discounts.", + "format": "double", + "type": "number" + } + }, + "type": "object" + }, + "GoogleCloudRecaptchaenterpriseV1TransactionDataUser": { + "description": "Details about a user's account involved in the transaction.", + "id": "GoogleCloudRecaptchaenterpriseV1TransactionDataUser", + "properties": { + "accountId": { + "description": "Unique account identifier for this user. If using account defender, this should match the hashed_account_id field. Otherwise, a unique and persistent identifier for this account.", + "type": "string" + }, + "creationMs": { + "description": "The epoch milliseconds of the user's account creation.", + "format": "int64", + "type": "string" + }, + "email": { + "description": "The email address of the user.", + "type": "string" + }, + "emailVerified": { + "description": "Whether the email has been verified to be accessible by the user (OTP or similar).", + "type": "boolean" + }, + "phoneNumber": { + "description": "The phone number of the user, with country code.", + "type": "string" + }, + "phoneVerified": { + "description": "Whether the phone number has been verified to be accessible by the user (OTP or similar).", + "type": "boolean" + } + }, + "type": "object" + }, "GoogleCloudRecaptchaenterpriseV1TransactionEvent": { "description": "Describes an event in the lifecycle of a payment transaction.", "id": "GoogleCloudRecaptchaenterpriseV1TransactionEvent", @@ -1325,11 +1562,13 @@ "description": "Required. The WAF service that uses this key.", "enum": [ "WAF_SERVICE_UNSPECIFIED", - "CA" + "CA", + "FASTLY" ], "enumDescriptions": [ "Undefined WAF", - "Cloud Armor" + "Cloud Armor", + "Fastly" ], "type": "string" } diff --git a/recaptchaenterprise/v1/recaptchaenterprise-gen.go b/recaptchaenterprise/v1/recaptchaenterprise-gen.go index 68e9a109763..8f5b9de5cef 100644 --- a/recaptchaenterprise/v1/recaptchaenterprise-gen.go +++ b/recaptchaenterprise/v1/recaptchaenterprise-gen.go @@ -480,6 +480,10 @@ type GoogleCloudRecaptchaenterpriseV1Assessment struct { // Event: The event being assessed. Event *GoogleCloudRecaptchaenterpriseV1Event `json:"event,omitempty"` + // FraudPreventionAssessment: Assessment returned by Fraud Prevention + // when TransactionData is provided. + FraudPreventionAssessment *GoogleCloudRecaptchaenterpriseV1FraudPreventionAssessment `json:"fraudPreventionAssessment,omitempty"` + // Name: Output only. The resource name for the Assessment in the format // "projects/{project}/assessments/{assessment}". Name string `json:"name,omitempty"` @@ -631,6 +635,12 @@ type GoogleCloudRecaptchaenterpriseV1Event struct { // Enterprise client-side integration on your site. Token string `json:"token,omitempty"` + // TransactionData: Optional. Data describing a payment transaction to + // be assessed. Sending this data enables reCAPTCHA Enterprise Fraud + // Prevention and the FraudPreventionAssessment component in the + // response. + TransactionData *GoogleCloudRecaptchaenterpriseV1TransactionData `json:"transactionData,omitempty"` + // UserAgent: Optional. The user agent present in the request from the // user's device related to this event. UserAgent string `json:"userAgent,omitempty"` @@ -663,6 +673,150 @@ func (s *GoogleCloudRecaptchaenterpriseV1Event) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// GoogleCloudRecaptchaenterpriseV1FraudPreventionAssessment: Assessment +// for Fraud Prevention. +type GoogleCloudRecaptchaenterpriseV1FraudPreventionAssessment struct { + // CardTestingVerdict: Assessment of this transaction for risk of being + // part of a card testing attack. + CardTestingVerdict *GoogleCloudRecaptchaenterpriseV1FraudPreventionAssessmentCardTestingVerdict `json:"cardTestingVerdict,omitempty"` + + // StolenInstrumentVerdict: Assessment of this transaction for risk of a + // stolen instrument. + StolenInstrumentVerdict *GoogleCloudRecaptchaenterpriseV1FraudPreventionAssessmentStolenInstrumentVerdict `json:"stolenInstrumentVerdict,omitempty"` + + // TransactionRisk: Probability (0-1) of this transaction being + // fraudulent. Summarizes the combined risk of attack vectors below. + TransactionRisk float64 `json:"transactionRisk,omitempty"` + + // ForceSendFields is a list of field names (e.g. "CardTestingVerdict") + // 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. "CardTestingVerdict") 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 *GoogleCloudRecaptchaenterpriseV1FraudPreventionAssessment) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudRecaptchaenterpriseV1FraudPreventionAssessment + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +func (s *GoogleCloudRecaptchaenterpriseV1FraudPreventionAssessment) UnmarshalJSON(data []byte) error { + type NoMethod GoogleCloudRecaptchaenterpriseV1FraudPreventionAssessment + var s1 struct { + TransactionRisk gensupport.JSONFloat64 `json:"transactionRisk"` + *NoMethod + } + s1.NoMethod = (*NoMethod)(s) + if err := json.Unmarshal(data, &s1); err != nil { + return err + } + s.TransactionRisk = float64(s1.TransactionRisk) + return nil +} + +// GoogleCloudRecaptchaenterpriseV1FraudPreventionAssessmentCardTestingVe +// rdict: Information about card testing fraud, where an adversary is +// testing fraudulently obtained cards or brute forcing their details. +type GoogleCloudRecaptchaenterpriseV1FraudPreventionAssessmentCardTestingVerdict struct { + // Risk: Probability (0-1) of this transaction attempt being part of a + // card testing attack. + Risk float64 `json:"risk,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Risk") 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. "Risk") 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 *GoogleCloudRecaptchaenterpriseV1FraudPreventionAssessmentCardTestingVerdict) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudRecaptchaenterpriseV1FraudPreventionAssessmentCardTestingVerdict + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +func (s *GoogleCloudRecaptchaenterpriseV1FraudPreventionAssessmentCardTestingVerdict) UnmarshalJSON(data []byte) error { + type NoMethod GoogleCloudRecaptchaenterpriseV1FraudPreventionAssessmentCardTestingVerdict + var s1 struct { + Risk gensupport.JSONFloat64 `json:"risk"` + *NoMethod + } + s1.NoMethod = (*NoMethod)(s) + if err := json.Unmarshal(data, &s1); err != nil { + return err + } + s.Risk = float64(s1.Risk) + return nil +} + +// GoogleCloudRecaptchaenterpriseV1FraudPreventionAssessmentStolenInstrum +// entVerdict: Information about stolen instrument fraud, where the user +// is not the legitimate owner of the instrument being used for the +// purchase. +type GoogleCloudRecaptchaenterpriseV1FraudPreventionAssessmentStolenInstrumentVerdict struct { + // Risk: Probability (0-1) of this transaction being executed with a + // stolen instrument. + Risk float64 `json:"risk,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Risk") 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. "Risk") 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 *GoogleCloudRecaptchaenterpriseV1FraudPreventionAssessmentStolenInstrumentVerdict) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudRecaptchaenterpriseV1FraudPreventionAssessmentStolenInstrumentVerdict + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +func (s *GoogleCloudRecaptchaenterpriseV1FraudPreventionAssessmentStolenInstrumentVerdict) UnmarshalJSON(data []byte) error { + type NoMethod GoogleCloudRecaptchaenterpriseV1FraudPreventionAssessmentStolenInstrumentVerdict + var s1 struct { + Risk gensupport.JSONFloat64 `json:"risk"` + *NoMethod + } + s1.NoMethod = (*NoMethod)(s) + if err := json.Unmarshal(data, &s1); err != nil { + return err + } + s.Risk = float64(s1.Risk) + return nil +} + // GoogleCloudRecaptchaenterpriseV1IOSKeySettings: Settings specific to // keys that can be used by iOS apps. type GoogleCloudRecaptchaenterpriseV1IOSKeySettings struct { @@ -1131,6 +1285,10 @@ type GoogleCloudRecaptchaenterpriseV1RiskAnalysis struct { // significantly different than expected patterns. // "LOW_CONFIDENCE_SCORE" - Too little traffic has been received from // this site thus far to generate quality risk analysis. + // "SUSPECTED_CARDING" - The request matches behavioral + // characteristics of a carding attack. + // "SUSPECTED_CHARGEBACK" - The request matches behavioral + // characteristics of chargebacks for fraud. Reasons []string `json:"reasons,omitempty"` // Score: Legitimate event score from 0.0 to 1.0. (1.0 means very likely @@ -1451,6 +1609,297 @@ func (s *GoogleCloudRecaptchaenterpriseV1TokenProperties) MarshalJSON() ([]byte, return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// GoogleCloudRecaptchaenterpriseV1TransactionData: Transaction data +// associated with a payment protected by reCAPTCHA Enterprise. All +// fields are optional. +type GoogleCloudRecaptchaenterpriseV1TransactionData struct { + // BillingAddress: Address associated with the payment method when + // applicable. + BillingAddress *GoogleCloudRecaptchaenterpriseV1TransactionDataAddress `json:"billingAddress,omitempty"` + + // CardBin: The Bank Identification Number - generally the first 6 or 8 + // digits of the card. + CardBin string `json:"cardBin,omitempty"` + + // CardLastFour: The last four digits of the card. + CardLastFour string `json:"cardLastFour,omitempty"` + + // CurrencyCode: The currency code in ISO-4217 format. + CurrencyCode string `json:"currencyCode,omitempty"` + + // GatewayInfo: Information about the payment gateway's response to the + // transaction. + GatewayInfo *GoogleCloudRecaptchaenterpriseV1TransactionDataGatewayInfo `json:"gatewayInfo,omitempty"` + + // Items: Items purchased in this transaction. + Items []*GoogleCloudRecaptchaenterpriseV1TransactionDataItem `json:"items,omitempty"` + + // Merchants: Information about the user or users fulfilling the + // transaction. + Merchants []*GoogleCloudRecaptchaenterpriseV1TransactionDataUser `json:"merchants,omitempty"` + + // PaymentMethod: The payment method for the transaction. The allowed + // values are: * credit-card * debit-card * gift-card * processor-{name} + // (If a third-party is used, for example, processor-paypal) * + // custom-{name} (If an alternative method is used, for example, + // custom-crypto) + PaymentMethod string `json:"paymentMethod,omitempty"` + + // ShippingAddress: Destination address if this transaction involves + // shipping a physical item. + ShippingAddress *GoogleCloudRecaptchaenterpriseV1TransactionDataAddress `json:"shippingAddress,omitempty"` + + // ShippingValue: The value of shipping in the specified currency. 0 for + // free or no shipping. + ShippingValue float64 `json:"shippingValue,omitempty"` + + // TransactionId: Unique identifier for the transaction. This custom + // identifier can be used to reference this transaction in the future, + // for example, labeling a refund or chargeback event. Two attempts at + // the same transaction should use the same transaction id. + TransactionId string `json:"transactionId,omitempty"` + + // User: Information about the user paying/initiating the transaction. + User *GoogleCloudRecaptchaenterpriseV1TransactionDataUser `json:"user,omitempty"` + + // Value: The decimal value of the transaction in the specified + // currency. + Value float64 `json:"value,omitempty"` + + // ForceSendFields is a list of field names (e.g. "BillingAddress") 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. "BillingAddress") 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 *GoogleCloudRecaptchaenterpriseV1TransactionData) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudRecaptchaenterpriseV1TransactionData + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +func (s *GoogleCloudRecaptchaenterpriseV1TransactionData) UnmarshalJSON(data []byte) error { + type NoMethod GoogleCloudRecaptchaenterpriseV1TransactionData + var s1 struct { + ShippingValue gensupport.JSONFloat64 `json:"shippingValue"` + Value gensupport.JSONFloat64 `json:"value"` + *NoMethod + } + s1.NoMethod = (*NoMethod)(s) + if err := json.Unmarshal(data, &s1); err != nil { + return err + } + s.ShippingValue = float64(s1.ShippingValue) + s.Value = float64(s1.Value) + return nil +} + +// GoogleCloudRecaptchaenterpriseV1TransactionDataAddress: Structured +// address format for billing and shipping addresses. +type GoogleCloudRecaptchaenterpriseV1TransactionDataAddress struct { + // Address: The first lines of the address. The first line generally + // contains the street name and number, and further lines may include + // information such as an apartment number. + Address []string `json:"address,omitempty"` + + // AdministrativeArea: The state, province, or otherwise administrative + // area of the address. + AdministrativeArea string `json:"administrativeArea,omitempty"` + + // Locality: The town/city of the address. + Locality string `json:"locality,omitempty"` + + // PostalCode: The postal or ZIP code of the address. + PostalCode string `json:"postalCode,omitempty"` + + // Recipient: The recipient name, potentially including information such + // as "care of". + Recipient string `json:"recipient,omitempty"` + + // RegionCode: The CLDR country/region of the address. + RegionCode string `json:"regionCode,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Address") 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. "Address") 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 *GoogleCloudRecaptchaenterpriseV1TransactionDataAddress) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudRecaptchaenterpriseV1TransactionDataAddress + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudRecaptchaenterpriseV1TransactionDataGatewayInfo: Details +// about the transaction from the gateway. +type GoogleCloudRecaptchaenterpriseV1TransactionDataGatewayInfo struct { + // AvsResponseCode: AVS response code from the gateway (available only + // when reCAPTCHA Enterprise is called after authorization). + AvsResponseCode string `json:"avsResponseCode,omitempty"` + + // CvvResponseCode: CVV response code from the gateway (available only + // when reCAPTCHA Enterprise is called after authorization). + CvvResponseCode string `json:"cvvResponseCode,omitempty"` + + // GatewayResponseCode: Gateway response code describing the state of + // the transaction. + GatewayResponseCode string `json:"gatewayResponseCode,omitempty"` + + // Name: Name of the gateway service (for example, stripe, square, + // paypal). + Name string `json:"name,omitempty"` + + // ForceSendFields is a list of field names (e.g. "AvsResponseCode") 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. "AvsResponseCode") 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 *GoogleCloudRecaptchaenterpriseV1TransactionDataGatewayInfo) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudRecaptchaenterpriseV1TransactionDataGatewayInfo + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudRecaptchaenterpriseV1TransactionDataItem: Line items being +// purchased in this transaction. +type GoogleCloudRecaptchaenterpriseV1TransactionDataItem struct { + // MerchantAccountId: When a merchant is specified, its corresponding + // account_id. Necessary to populate marketplace-style transactions. + MerchantAccountId string `json:"merchantAccountId,omitempty"` + + // Name: The full name of the item. + Name string `json:"name,omitempty"` + + // Quantity: The quantity of this item that is being purchased. + Quantity int64 `json:"quantity,omitempty,string"` + + // Value: The value per item that the user is paying, in the transaction + // currency, after discounts. + Value float64 `json:"value,omitempty"` + + // ForceSendFields is a list of field names (e.g. "MerchantAccountId") + // 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. "MerchantAccountId") 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 *GoogleCloudRecaptchaenterpriseV1TransactionDataItem) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudRecaptchaenterpriseV1TransactionDataItem + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +func (s *GoogleCloudRecaptchaenterpriseV1TransactionDataItem) UnmarshalJSON(data []byte) error { + type NoMethod GoogleCloudRecaptchaenterpriseV1TransactionDataItem + var s1 struct { + Value gensupport.JSONFloat64 `json:"value"` + *NoMethod + } + s1.NoMethod = (*NoMethod)(s) + if err := json.Unmarshal(data, &s1); err != nil { + return err + } + s.Value = float64(s1.Value) + return nil +} + +// GoogleCloudRecaptchaenterpriseV1TransactionDataUser: Details about a +// user's account involved in the transaction. +type GoogleCloudRecaptchaenterpriseV1TransactionDataUser struct { + // AccountId: Unique account identifier for this user. If using account + // defender, this should match the hashed_account_id field. Otherwise, a + // unique and persistent identifier for this account. + AccountId string `json:"accountId,omitempty"` + + // CreationMs: The epoch milliseconds of the user's account creation. + CreationMs int64 `json:"creationMs,omitempty,string"` + + // Email: The email address of the user. + Email string `json:"email,omitempty"` + + // EmailVerified: Whether the email has been verified to be accessible + // by the user (OTP or similar). + EmailVerified bool `json:"emailVerified,omitempty"` + + // PhoneNumber: The phone number of the user, with country code. + PhoneNumber string `json:"phoneNumber,omitempty"` + + // PhoneVerified: Whether the phone number has been verified to be + // accessible by the user (OTP or similar). + PhoneVerified bool `json:"phoneVerified,omitempty"` + + // ForceSendFields is a list of field names (e.g. "AccountId") 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. "AccountId") 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 *GoogleCloudRecaptchaenterpriseV1TransactionDataUser) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudRecaptchaenterpriseV1TransactionDataUser + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // GoogleCloudRecaptchaenterpriseV1TransactionEvent: Describes an event // in the lifecycle of a payment transaction. type GoogleCloudRecaptchaenterpriseV1TransactionEvent struct { @@ -1598,6 +2047,7 @@ type GoogleCloudRecaptchaenterpriseV1WafSettings struct { // Possible values: // "WAF_SERVICE_UNSPECIFIED" - Undefined WAF // "CA" - Cloud Armor + // "FASTLY" - Fastly WafService string `json:"wafService,omitempty"` // ForceSendFields is a list of field names (e.g. "WafFeature") to diff --git a/run/v1/run-api.json b/run/v1/run-api.json index 776c377c1ad..9bd127b646b 100644 --- a/run/v1/run-api.json +++ b/run/v1/run-api.json @@ -2289,7 +2289,7 @@ } } }, - "revision": "20230205", + "revision": "20230219", "rootUrl": "https://run.googleapis.com/", "schemas": { "Addressable": { @@ -2856,7 +2856,7 @@ "type": "integer" }, "taskCount": { - "description": "Optional. Specifies the desired number of tasks the execution should run. Setting to 1 means that parallelism is limited to 1 and the success of that task signals the success of the execution.", + "description": "Optional. Specifies the desired number of tasks the execution should run. Setting to 1 means that parallelism is limited to 1 and the success of that task signals the success of the execution. Defaults to 1.", "format": "int32", "type": "integer" }, @@ -4321,7 +4321,7 @@ "type": "array" }, "maxRetries": { - "description": "Optional. Number of retries allowed per task, before marking this job failed.", + "description": "Optional. Number of retries allowed per task, before marking this job failed. Defaults to 3.", "format": "int32", "type": "integer" }, @@ -4330,7 +4330,7 @@ "type": "string" }, "timeoutSeconds": { - "description": "Optional. Duration in seconds the task may be active before the system will actively try to mark it failed and kill associated containers. This applies per attempt of a task, meaning each retry can run for the full timeout.", + "description": "Optional. Duration in seconds the task may be active before the system will actively try to mark it failed and kill associated containers. This applies per attempt of a task, meaning each retry can run for the full timeout. Defaults to 600 seconds.", "format": "int64", "type": "string" }, diff --git a/run/v1/run-gen.go b/run/v1/run-gen.go index 407fbbf42f3..6560cfde153 100644 --- a/run/v1/run-gen.go +++ b/run/v1/run-gen.go @@ -1441,7 +1441,7 @@ type ExecutionSpec struct { // TaskCount: Optional. Specifies the desired number of tasks the // execution should run. Setting to 1 means that parallelism is limited // to 1 and the success of that task signals the success of the - // execution. + // execution. Defaults to 1. TaskCount int64 `json:"taskCount,omitempty"` // Template: Optional. The template used to create tasks for this @@ -4087,7 +4087,7 @@ type TaskSpec struct { Containers []*Container `json:"containers,omitempty"` // MaxRetries: Optional. Number of retries allowed per task, before - // marking this job failed. + // marking this job failed. Defaults to 3. MaxRetries int64 `json:"maxRetries,omitempty"` // ServiceAccountName: Optional. Email address of the IAM service @@ -4100,7 +4100,7 @@ type TaskSpec struct { // TimeoutSeconds: Optional. Duration in seconds the task may be active // before the system will actively try to mark it failed and kill // associated containers. This applies per attempt of a task, meaning - // each retry can run for the full timeout. + // each retry can run for the full timeout. Defaults to 600 seconds. TimeoutSeconds int64 `json:"timeoutSeconds,omitempty,string"` // Volumes: Optional. List of volumes that can be mounted by containers diff --git a/run/v2/run-api.json b/run/v2/run-api.json index 52d155f4b0b..fccdda277b1 100644 --- a/run/v2/run-api.json +++ b/run/v2/run-api.json @@ -1087,7 +1087,7 @@ } } }, - "revision": "20230212", + "revision": "20230219", "rootUrl": "https://run.googleapis.com/", "schemas": { "GoogleCloudRunV2BinaryAuthorization": { @@ -1596,7 +1596,7 @@ "type": "integer" }, "taskCount": { - "description": "Specifies the desired number of tasks the execution should run. Setting to 1 means that parallelism is limited to 1 and the success of that task signals the success of the execution. More info: https://kubernetes.io/docs/concepts/workloads/controllers/jobs-run-to-completion/", + "description": "Specifies the desired number of tasks the execution should run. Setting to 1 means that parallelism is limited to 1 and the success of that task signals the success of the execution. Defaults to 1.", "format": "int32", "type": "integer" }, @@ -2729,7 +2729,7 @@ "type": "string" }, "maxRetries": { - "description": "Number of retries allowed per Task, before marking this Task failed.", + "description": "Number of retries allowed per Task, before marking this Task failed. Defaults to 3.", "format": "int32", "type": "integer" }, @@ -2738,7 +2738,7 @@ "type": "string" }, "timeout": { - "description": "Max allowed time duration the Task may be active before the system will actively try to mark it failed and kill associated containers. This applies per attempt of a task, meaning each retry can run for the full timeout.", + "description": "Max allowed time duration the Task may be active before the system will actively try to mark it failed and kill associated containers. This applies per attempt of a task, meaning each retry can run for the full timeout. Defaults to 600 seconds.", "format": "google-duration", "type": "string" }, diff --git a/run/v2/run-gen.go b/run/v2/run-gen.go index a2988917afb..d64cd384187 100644 --- a/run/v2/run-gen.go +++ b/run/v2/run-gen.go @@ -893,8 +893,8 @@ type GoogleCloudRunV2ExecutionTemplate struct { // TaskCount: Specifies the desired number of tasks the execution should // run. Setting to 1 means that parallelism is limited to 1 and the - // success of that task signals the success of the execution. More info: - // https://kubernetes.io/docs/concepts/workloads/controllers/jobs-run-to-completion/ + // success of that task signals the success of the execution. Defaults + // to 1. TaskCount int64 `json:"taskCount,omitempty"` // Template: Required. Describes the task(s) that will be created when @@ -2446,7 +2446,7 @@ type GoogleCloudRunV2TaskTemplate struct { ExecutionEnvironment string `json:"executionEnvironment,omitempty"` // MaxRetries: Number of retries allowed per Task, before marking this - // Task failed. + // Task failed. Defaults to 3. MaxRetries int64 `json:"maxRetries,omitempty"` // ServiceAccount: Email address of the IAM service account associated @@ -2459,7 +2459,7 @@ type GoogleCloudRunV2TaskTemplate struct { // Timeout: Max allowed time duration the Task may be active before the // system will actively try to mark it failed and kill associated // containers. This applies per attempt of a task, meaning each retry - // can run for the full timeout. + // can run for the full timeout. Defaults to 600 seconds. Timeout string `json:"timeout,omitempty"` // Volumes: A list of Volumes to make available to containers. diff --git a/spanner/v1/spanner-api.json b/spanner/v1/spanner-api.json index 7fc7a413c9e..e8024501bd6 100644 --- a/spanner/v1/spanner-api.json +++ b/spanner/v1/spanner-api.json @@ -2578,7 +2578,7 @@ "description": "The condition that is associated with this binding. If the condition evaluates to `true`, then this binding applies to the current request. If the condition evaluates to `false`, then this binding does not apply to the current request. However, a different role binding might grant the same role to one or more of the principals in this binding. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies)." }, "members": { - "description": "Specifies the principals requesting access for a Google Cloud resource. `members` can have the following values: * `allUsers`: A special identifier that represents anyone who is on the internet; with or without a Google account. * `allAuthenticatedUsers`: A special identifier that represents anyone who is authenticated with a Google account or a service account. Does not include identities that come from external identity providers (IdPs) through identity federation. * `user:{emailid}`: An email address that represents a specific Google account. For example, `alice@example.com` . * `serviceAccount:{emailid}`: An email address that represents a Google service account. For example, `my-other-app@appspot.gserviceaccount.com`. * `serviceAccount:{projectid}.svc.id.goog[{namespace}/{kubernetes-sa}]`: An identifier for a [Kubernetes service account](https://cloud.google.com/kubernetes-engine/docs/how-to/kubernetes-service-accounts). For example, `my-project.svc.id.goog[my-namespace/my-kubernetes-sa]`. * `group:{emailid}`: An email address that represents a Google group. For example, `admins@example.com`. * `domain:{domain}`: The G Suite domain (primary) that represents all the users of that domain. For example, `google.com` or `example.com`. * `deleted:user:{emailid}?uid={uniqueid}`: An email address (plus unique identifier) representing a user that has been recently deleted. For example, `alice@example.com?uid=123456789012345678901`. If the user is recovered, this value reverts to `user:{emailid}` and the recovered user retains the role in the binding. * `deleted:serviceAccount:{emailid}?uid={uniqueid}`: An email address (plus unique identifier) representing a service account that has been recently deleted. For example, `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`. If the service account is undeleted, this value reverts to `serviceAccount:{emailid}` and the undeleted service account retains the role in the binding. * `deleted:group:{emailid}?uid={uniqueid}`: An email address (plus unique identifier) representing a Google group that has been recently deleted. For example, `admins@example.com?uid=123456789012345678901`. If the group is recovered, this value reverts to `group:{emailid}` and the recovered group retains the role in the binding.", + "description": "Specifies the principals requesting access for a Google Cloud resource. `members` can have the following values: * `allUsers`: A special identifier that represents anyone who is on the internet; with or without a Google account. * `allAuthenticatedUsers`: A special identifier that represents anyone who is authenticated with a Google account or a service account. Does not include identities that come from external identity providers (IdPs) through identity federation. * `user:{emailid}`: An email address that represents a specific Google account. For example, `alice@example.com` . * `serviceAccount:{emailid}`: An email address that represents a Google service account. For example, `my-other-app@appspot.gserviceaccount.com`. * `serviceAccount:{projectid}.svc.id.goog[{namespace}/{kubernetes-sa}]`: An identifier for a [Kubernetes service account](https://cloud.google.com/kubernetes-engine/docs/how-to/kubernetes-service-accounts). For example, `my-project.svc.id.goog[my-namespace/my-kubernetes-sa]`. * `group:{emailid}`: An email address that represents a Google group. For example, `admins@example.com`. * `deleted:user:{emailid}?uid={uniqueid}`: An email address (plus unique identifier) representing a user that has been recently deleted. For example, `alice@example.com?uid=123456789012345678901`. If the user is recovered, this value reverts to `user:{emailid}` and the recovered user retains the role in the binding. * `deleted:serviceAccount:{emailid}?uid={uniqueid}`: An email address (plus unique identifier) representing a service account that has been recently deleted. For example, `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`. If the service account is undeleted, this value reverts to `serviceAccount:{emailid}` and the undeleted service account retains the role in the binding. * `deleted:group:{emailid}?uid={uniqueid}`: An email address (plus unique identifier) representing a Google group that has been recently deleted. For example, `admins@example.com?uid=123456789012345678901`. If the group is recovered, this value reverts to `group:{emailid}` and the recovered group retains the role in the binding. * `domain:{domain}`: The G Suite domain (primary) that represents all the users of that domain. For example, `google.com` or `example.com`. ", "items": { "type": "string" }, diff --git a/spanner/v1/spanner-gen.go b/spanner/v1/spanner-gen.go index bfd0c1d01ea..6d3ecbd688f 100644 --- a/spanner/v1/spanner-gen.go +++ b/spanner/v1/spanner-gen.go @@ -613,9 +613,7 @@ type Binding struct { // (https://cloud.google.com/kubernetes-engine/docs/how-to/kubernetes-service-accounts). // For example, `my-project.svc.id.goog[my-namespace/my-kubernetes-sa]`. // * `group:{emailid}`: An email address that represents a Google group. - // For example, `admins@example.com`. * `domain:{domain}`: The G Suite - // domain (primary) that represents all the users of that domain. For - // example, `google.com` or `example.com`. * + // For example, `admins@example.com`. * // `deleted:user:{emailid}?uid={uniqueid}`: An email address (plus // unique identifier) representing a user that has been recently // deleted. For example, `alice@example.com?uid=123456789012345678901`. @@ -632,7 +630,9 @@ type Binding struct { // that has been recently deleted. For example, // `admins@example.com?uid=123456789012345678901`. If the group is // recovered, this value reverts to `group:{emailid}` and the recovered - // group retains the role in the binding. + // group retains the role in the binding. * `domain:{domain}`: The G + // Suite domain (primary) that represents all the users of that domain. + // For example, `google.com` or `example.com`. Members []string `json:"members,omitempty"` // Role: Role that is assigned to the list of `members`, or principals. diff --git a/vpcaccess/v1/vpcaccess-api.json b/vpcaccess/v1/vpcaccess-api.json new file mode 100644 index 00000000000..c632d6f2c72 --- /dev/null +++ b/vpcaccess/v1/vpcaccess-api.json @@ -0,0 +1,689 @@ +{ + "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://vpcaccess.googleapis.com/", + "batchPath": "batch", + "canonicalName": "Serverless VPC Access", + "description": "API for managing VPC access connectors.", + "discoveryVersion": "v1", + "documentationLink": "https://cloud.google.com/vpc/docs/configure-serverless-vpc-access", + "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": "vpcaccess:v1", + "kind": "discovery#restDescription", + "mtlsRootUrl": "https://vpcaccess.mtls.googleapis.com/", + "name": "vpcaccess", + "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": { + "projects": { + "resources": { + "locations": { + "methods": { + "list": { + "description": "Lists information about the supported locations for this service.", + "flatPath": "v1/projects/{projectsId}/locations", + "httpMethod": "GET", + "id": "vpcaccess.projects.locations.list", + "parameterOrder": [ + "name" + ], + "parameters": { + "filter": { + "description": "A filter to narrow down results to a preferred subset. The filtering language accepts strings like `\"displayName=tokyo\"`, and is documented in more detail in [AIP-160](https://google.aip.dev/160).", + "location": "query", + "type": "string" + }, + "name": { + "description": "The resource that owns the locations collection, if applicable.", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "The maximum number of results to return. If not set, the service selects a default.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "A page token received from the `next_page_token` field in the response. Send that page token to receive the subsequent page.", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}/locations", + "response": { + "$ref": "ListLocationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, + "resources": { + "connectors": { + "methods": { + "create": { + "description": "Creates a Serverless VPC Access connector, returns an operation.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/connectors", + "httpMethod": "POST", + "id": "vpcaccess.projects.locations.connectors.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "connectorId": { + "description": "Required. The ID to use for this connector.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The project and location in which the configuration should be created, specified in the format `projects/*/locations/*`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/connectors", + "request": { + "$ref": "Connector" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a Serverless VPC Access connector. Returns NOT_FOUND if the resource does not exist.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/connectors/{connectorsId}", + "httpMethod": "DELETE", + "id": "vpcaccess.projects.locations.connectors.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. Name of a Serverless VPC Access connector to delete.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/connectors/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets a Serverless VPC Access connector. Returns NOT_FOUND if the resource does not exist.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/connectors/{connectorsId}", + "httpMethod": "GET", + "id": "vpcaccess.projects.locations.connectors.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. Name of a Serverless VPC Access connector to get.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/connectors/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Connector" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists Serverless VPC Access connectors.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/connectors", + "httpMethod": "GET", + "id": "vpcaccess.projects.locations.connectors.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "Maximum number of functions to return per call.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Continuation token.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The project and location from which the routes should be listed.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/connectors", + "response": { + "$ref": "ListConnectorsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "operations": { + "methods": { + "get": { + "description": "Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}", + "httpMethod": "GET", + "id": "vpcaccess.projects.locations.operations.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns `UNIMPLEMENTED`. NOTE: the `name` binding allows API services to override the binding to use different resource name schemes, such as `users/*/operations`. To override the binding, API services can add a binding such as `\"/v1/{name=users/*}/operations\"` to their service configuration. For backwards compatibility, the default name includes the operations collection id, however overriding users must ensure the name binding is the parent resource, without the operations collection id.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/operations", + "httpMethod": "GET", + "id": "vpcaccess.projects.locations.operations.list", + "parameterOrder": [ + "name" + ], + "parameters": { + "filter": { + "description": "The standard list filter.", + "location": "query", + "type": "string" + }, + "name": { + "description": "The name of the operation's parent resource.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "The standard list page size.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The standard list page token.", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}/operations", + "response": { + "$ref": "ListOperationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } + } + } + } + }, + "revision": "20230105", + "rootUrl": "https://vpcaccess.googleapis.com/", + "schemas": { + "Connector": { + "description": "Definition of a Serverless VPC Access connector.", + "id": "Connector", + "properties": { + "connectedProjects": { + "description": "Output only. List of projects using the connector.", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "ipCidrRange": { + "description": "The range of internal addresses that follows RFC 4632 notation. Example: `10.132.0.0/28`.", + "type": "string" + }, + "machineType": { + "description": "Machine type of VM Instance underlying connector. Default is e2-micro", + "type": "string" + }, + "maxInstances": { + "description": "Maximum value of instances in autoscaling group underlying the connector.", + "format": "int32", + "type": "integer" + }, + "maxThroughput": { + "description": "Maximum throughput of the connector in Mbps. Default is 300, max is 1000.", + "format": "int32", + "type": "integer" + }, + "minInstances": { + "description": "Minimum value of instances in autoscaling group underlying the connector.", + "format": "int32", + "type": "integer" + }, + "minThroughput": { + "description": "Minimum throughput of the connector in Mbps. Default and min is 200.", + "format": "int32", + "type": "integer" + }, + "name": { + "description": "The resource name in the format `projects/*/locations/*/connectors/*`.", + "type": "string" + }, + "network": { + "description": "Name of a VPC network.", + "type": "string" + }, + "state": { + "description": "Output only. State of the VPC access connector.", + "enum": [ + "STATE_UNSPECIFIED", + "READY", + "CREATING", + "DELETING", + "ERROR", + "UPDATING" + ], + "enumDescriptions": [ + "Invalid state.", + "Connector is deployed and ready to receive traffic.", + "An Insert operation is in progress. Transient condition.", + "A Delete operation is in progress. Transient condition.", + "Connector is in a bad state, manual deletion recommended.", + "The connector is being updated." + ], + "readOnly": true, + "type": "string" + }, + "subnet": { + "$ref": "Subnet", + "description": "The subnet in which to house the VPC Access Connector." + } + }, + "type": "object" + }, + "ListConnectorsResponse": { + "description": "Response for listing Serverless VPC Access connectors.", + "id": "ListConnectorsResponse", + "properties": { + "connectors": { + "description": "List of Serverless VPC Access connectors.", + "items": { + "$ref": "Connector" + }, + "type": "array" + }, + "nextPageToken": { + "description": "Continuation token.", + "type": "string" + } + }, + "type": "object" + }, + "ListLocationsResponse": { + "description": "The response message for Locations.ListLocations.", + "id": "ListLocationsResponse", + "properties": { + "locations": { + "description": "A list of locations that matches the specified filter in the request.", + "items": { + "$ref": "Location" + }, + "type": "array" + }, + "nextPageToken": { + "description": "The standard List next-page token.", + "type": "string" + } + }, + "type": "object" + }, + "ListOperationsResponse": { + "description": "The response message for Operations.ListOperations.", + "id": "ListOperationsResponse", + "properties": { + "nextPageToken": { + "description": "The standard List next-page token.", + "type": "string" + }, + "operations": { + "description": "A list of operations that matches the specified filter in the request.", + "items": { + "$ref": "Operation" + }, + "type": "array" + } + }, + "type": "object" + }, + "Location": { + "description": "A resource that represents Google Cloud Platform location.", + "id": "Location", + "properties": { + "displayName": { + "description": "The friendly name for this location, typically a nearby city name. For example, \"Tokyo\".", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Cross-service attributes for the location. For example {\"cloud.googleapis.com/region\": \"us-east1\"}", + "type": "object" + }, + "locationId": { + "description": "The canonical id for this location. For example: `\"us-east1\"`.", + "type": "string" + }, + "metadata": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "Service-specific metadata. For example the available capacity at the given location.", + "type": "object" + }, + "name": { + "description": "Resource name for the location, which may vary between implementations. For example: `\"projects/example-project/locations/us-east1\"`", + "type": "string" + } + }, + "type": "object" + }, + "Operation": { + "description": "This resource represents a long-running operation that is the result of a network API call.", + "id": "Operation", + "properties": { + "done": { + "description": "If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available.", + "type": "boolean" + }, + "error": { + "$ref": "Status", + "description": "The error result of the operation in case of failure or cancellation." + }, + "metadata": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.", + "type": "object" + }, + "name": { + "description": "The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id}`.", + "type": "string" + }, + "response": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "The normal response of the operation in case of success. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.", + "type": "object" + } + }, + "type": "object" + }, + "OperationMetadata": { + "description": "Metadata for google.longrunning.Operation.", + "id": "OperationMetadata", + "properties": { + "createTime": { + "description": "Output only. Time when the operation was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "endTime": { + "description": "Output only. Time when the operation completed.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "method": { + "description": "Output only. Method that initiated the operation e.g. google.cloud.vpcaccess.v1.Connectors.CreateConnector.", + "readOnly": true, + "type": "string" + }, + "target": { + "description": "Output only. Name of the resource that this operation is acting on e.g. projects/my-project/locations/us-central1/connectors/v1.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "OperationMetadataV1Alpha1": { + "description": "Metadata for google.longrunning.Operation.", + "id": "OperationMetadataV1Alpha1", + "properties": { + "endTime": { + "description": "Output only. Time when the operation completed.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "insertTime": { + "description": "Output only. Time when the operation was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "method": { + "description": "Output only. Method that initiated the operation e.g. google.cloud.vpcaccess.v1alpha1.Connectors.CreateConnector.", + "readOnly": true, + "type": "string" + }, + "target": { + "description": "Output only. Name of the resource that this operation is acting on e.g. projects/my-project/locations/us-central1/connectors/v1.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "OperationMetadataV1Beta1": { + "description": "Metadata for google.longrunning.Operation.", + "id": "OperationMetadataV1Beta1", + "properties": { + "createTime": { + "description": "Output only. Time when the operation was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "endTime": { + "description": "Output only. Time when the operation completed.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "method": { + "description": "Output only. Method that initiated the operation e.g. google.cloud.vpcaccess.v1beta1.Connectors.CreateConnector.", + "readOnly": true, + "type": "string" + }, + "target": { + "description": "Output only. Name of the resource that this operation is acting on e.g. projects/my-project/locations/us-central1/connectors/v1.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "Status": { + "description": "The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors).", + "id": "Status", + "properties": { + "code": { + "description": "The status code, which should be an enum value of google.rpc.Code.", + "format": "int32", + "type": "integer" + }, + "details": { + "description": "A list of messages that carry the error details. There is a common set of message types for APIs to use.", + "items": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.", + "type": "string" + } + }, + "type": "object" + }, + "Subnet": { + "description": "The subnet in which to house the connector", + "id": "Subnet", + "properties": { + "name": { + "description": "Subnet name (relative, not fully qualified). E.g. if the full subnet selfLink is https://compute.googleapis.com/compute/v1/projects/{project}/regions/{region}/subnetworks/{subnetName} the correct input for this field would be {subnetName}", + "type": "string" + }, + "projectId": { + "description": "Project in which the subnet exists. If not set, this project is assumed to be the project for which the connector create request was issued.", + "type": "string" + } + }, + "type": "object" + } + }, + "servicePath": "", + "title": "Serverless VPC Access API", + "version": "v1", + "version_module": true +} \ No newline at end of file diff --git a/vpcaccess/v1/vpcaccess-gen.go b/vpcaccess/v1/vpcaccess-gen.go new file mode 100644 index 00000000000..08776015f6c --- /dev/null +++ b/vpcaccess/v1/vpcaccess-gen.go @@ -0,0 +1,1880 @@ +// 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 vpcaccess provides access to the Serverless VPC Access API. +// +// For product documentation, see: https://cloud.google.com/vpc/docs/configure-serverless-vpc-access +// +// # Creating a client +// +// Usage example: +// +// import "google.golang.org/api/vpcaccess/v1" +// ... +// ctx := context.Background() +// vpcaccessService, err := vpcaccess.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: +// +// vpcaccessService, err := vpcaccess.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, ...) +// vpcaccessService, err := vpcaccess.NewService(ctx, option.WithTokenSource(config.TokenSource(ctx, token))) +// +// See https://godoc.org/google.golang.org/api/option/ for details on options. +package vpcaccess // import "google.golang.org/api/vpcaccess/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 = "vpcaccess:v1" +const apiName = "vpcaccess" +const apiVersion = "v1" +const basePath = "https://vpcaccess.googleapis.com/" +const mtlsBasePath = "https://vpcaccess.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.Projects = NewProjectsService(s) + return s, nil +} + +type Service struct { + client *http.Client + BasePath string // API endpoint base URL + UserAgent string // optional additional User-Agent fragment + + Projects *ProjectsService +} + +func (s *Service) userAgent() string { + if s.UserAgent == "" { + return googleapi.UserAgent + } + return googleapi.UserAgent + " " + s.UserAgent +} + +func NewProjectsService(s *Service) *ProjectsService { + rs := &ProjectsService{s: s} + rs.Locations = NewProjectsLocationsService(s) + return rs +} + +type ProjectsService struct { + s *Service + + Locations *ProjectsLocationsService +} + +func NewProjectsLocationsService(s *Service) *ProjectsLocationsService { + rs := &ProjectsLocationsService{s: s} + rs.Connectors = NewProjectsLocationsConnectorsService(s) + rs.Operations = NewProjectsLocationsOperationsService(s) + return rs +} + +type ProjectsLocationsService struct { + s *Service + + Connectors *ProjectsLocationsConnectorsService + + Operations *ProjectsLocationsOperationsService +} + +func NewProjectsLocationsConnectorsService(s *Service) *ProjectsLocationsConnectorsService { + rs := &ProjectsLocationsConnectorsService{s: s} + return rs +} + +type ProjectsLocationsConnectorsService struct { + s *Service +} + +func NewProjectsLocationsOperationsService(s *Service) *ProjectsLocationsOperationsService { + rs := &ProjectsLocationsOperationsService{s: s} + return rs +} + +type ProjectsLocationsOperationsService struct { + s *Service +} + +// Connector: Definition of a Serverless VPC Access connector. +type Connector struct { + // ConnectedProjects: Output only. List of projects using the connector. + ConnectedProjects []string `json:"connectedProjects,omitempty"` + + // IpCidrRange: The range of internal addresses that follows RFC 4632 + // notation. Example: `10.132.0.0/28`. + IpCidrRange string `json:"ipCidrRange,omitempty"` + + // MachineType: Machine type of VM Instance underlying connector. + // Default is e2-micro + MachineType string `json:"machineType,omitempty"` + + // MaxInstances: Maximum value of instances in autoscaling group + // underlying the connector. + MaxInstances int64 `json:"maxInstances,omitempty"` + + // MaxThroughput: Maximum throughput of the connector in Mbps. Default + // is 300, max is 1000. + MaxThroughput int64 `json:"maxThroughput,omitempty"` + + // MinInstances: Minimum value of instances in autoscaling group + // underlying the connector. + MinInstances int64 `json:"minInstances,omitempty"` + + // MinThroughput: Minimum throughput of the connector in Mbps. Default + // and min is 200. + MinThroughput int64 `json:"minThroughput,omitempty"` + + // Name: The resource name in the format + // `projects/*/locations/*/connectors/*`. + Name string `json:"name,omitempty"` + + // Network: Name of a VPC network. + Network string `json:"network,omitempty"` + + // State: Output only. State of the VPC access connector. + // + // Possible values: + // "STATE_UNSPECIFIED" - Invalid state. + // "READY" - Connector is deployed and ready to receive traffic. + // "CREATING" - An Insert operation is in progress. Transient + // condition. + // "DELETING" - A Delete operation is in progress. Transient + // condition. + // "ERROR" - Connector is in a bad state, manual deletion recommended. + // "UPDATING" - The connector is being updated. + State string `json:"state,omitempty"` + + // Subnet: The subnet in which to house the VPC Access Connector. + Subnet *Subnet `json:"subnet,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "ConnectedProjects") + // 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. "ConnectedProjects") 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 *Connector) MarshalJSON() ([]byte, error) { + type NoMethod Connector + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// ListConnectorsResponse: Response for listing Serverless VPC Access +// connectors. +type ListConnectorsResponse struct { + // Connectors: List of Serverless VPC Access connectors. + Connectors []*Connector `json:"connectors,omitempty"` + + // NextPageToken: Continuation token. + 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. "Connectors") 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. "Connectors") 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 *ListConnectorsResponse) MarshalJSON() ([]byte, error) { + type NoMethod ListConnectorsResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// ListLocationsResponse: The response message for +// Locations.ListLocations. +type ListLocationsResponse struct { + // Locations: A list of locations that matches the specified filter in + // the request. + Locations []*Location `json:"locations,omitempty"` + + // NextPageToken: The standard List next-page token. + 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. "Locations") 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. "Locations") 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 *ListLocationsResponse) MarshalJSON() ([]byte, error) { + type NoMethod ListLocationsResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// ListOperationsResponse: The response message for +// Operations.ListOperations. +type ListOperationsResponse struct { + // NextPageToken: The standard List next-page token. + NextPageToken string `json:"nextPageToken,omitempty"` + + // Operations: A list of operations that matches the specified filter in + // the request. + Operations []*Operation `json:"operations,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 *ListOperationsResponse) MarshalJSON() ([]byte, error) { + type NoMethod ListOperationsResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Location: A resource that represents Google Cloud Platform location. +type Location struct { + // DisplayName: The friendly name for this location, typically a nearby + // city name. For example, "Tokyo". + DisplayName string `json:"displayName,omitempty"` + + // Labels: Cross-service attributes for the location. For example + // {"cloud.googleapis.com/region": "us-east1"} + Labels map[string]string `json:"labels,omitempty"` + + // LocationId: The canonical id for this location. For example: + // "us-east1". + LocationId string `json:"locationId,omitempty"` + + // Metadata: Service-specific metadata. For example the available + // capacity at the given location. + Metadata googleapi.RawMessage `json:"metadata,omitempty"` + + // Name: Resource name for the location, which may vary between + // implementations. For example: + // "projects/example-project/locations/us-east1" + Name string `json:"name,omitempty"` + + // ForceSendFields is a list of field names (e.g. "DisplayName") 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. "DisplayName") 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 *Location) MarshalJSON() ([]byte, error) { + type NoMethod Location + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Operation: This resource represents a long-running operation that is +// the result of a network API call. +type Operation struct { + // Done: If the value is `false`, it means the operation is still in + // progress. If `true`, the operation is completed, and either `error` + // or `response` is available. + Done bool `json:"done,omitempty"` + + // Error: The error result of the operation in case of failure or + // cancellation. + Error *Status `json:"error,omitempty"` + + // Metadata: Service-specific metadata associated with the operation. It + // typically contains progress information and common metadata such as + // create time. Some services might not provide such metadata. Any + // method that returns a long-running operation should document the + // metadata type, if any. + Metadata googleapi.RawMessage `json:"metadata,omitempty"` + + // Name: The server-assigned name, which is only unique within the same + // service that originally returns it. If you use the default HTTP + // mapping, the `name` should be a resource name ending with + // `operations/{unique_id}`. + Name string `json:"name,omitempty"` + + // Response: The normal response of the operation in case of success. If + // the original method returns no data on success, such as `Delete`, the + // response is `google.protobuf.Empty`. If the original method is + // standard `Get`/`Create`/`Update`, the response should be the + // resource. For other methods, the response should have the type + // `XxxResponse`, where `Xxx` is the original method name. For example, + // if the original method name is `TakeSnapshot()`, the inferred + // response type is `TakeSnapshotResponse`. + Response googleapi.RawMessage `json:"response,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "Done") 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. "Done") 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 *Operation) MarshalJSON() ([]byte, error) { + type NoMethod Operation + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// OperationMetadata: Metadata for google.longrunning.Operation. +type OperationMetadata struct { + // CreateTime: Output only. Time when the operation was created. + CreateTime string `json:"createTime,omitempty"` + + // EndTime: Output only. Time when the operation completed. + EndTime string `json:"endTime,omitempty"` + + // Method: Output only. Method that initiated the operation e.g. + // google.cloud.vpcaccess.v1.Connectors.CreateConnector. + Method string `json:"method,omitempty"` + + // Target: Output only. Name of the resource that this operation is + // acting on e.g. + // projects/my-project/locations/us-central1/connectors/v1. + Target string `json:"target,omitempty"` + + // ForceSendFields is a list of field names (e.g. "CreateTime") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "CreateTime") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *OperationMetadata) MarshalJSON() ([]byte, error) { + type NoMethod OperationMetadata + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// OperationMetadataV1Alpha1: Metadata for google.longrunning.Operation. +type OperationMetadataV1Alpha1 struct { + // EndTime: Output only. Time when the operation completed. + EndTime string `json:"endTime,omitempty"` + + // InsertTime: Output only. Time when the operation was created. + InsertTime string `json:"insertTime,omitempty"` + + // Method: Output only. Method that initiated the operation e.g. + // google.cloud.vpcaccess.v1alpha1.Connectors.CreateConnector. + Method string `json:"method,omitempty"` + + // Target: Output only. Name of the resource that this operation is + // acting on e.g. + // projects/my-project/locations/us-central1/connectors/v1. + Target string `json:"target,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 *OperationMetadataV1Alpha1) MarshalJSON() ([]byte, error) { + type NoMethod OperationMetadataV1Alpha1 + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// OperationMetadataV1Beta1: Metadata for google.longrunning.Operation. +type OperationMetadataV1Beta1 struct { + // CreateTime: Output only. Time when the operation was created. + CreateTime string `json:"createTime,omitempty"` + + // EndTime: Output only. Time when the operation completed. + EndTime string `json:"endTime,omitempty"` + + // Method: Output only. Method that initiated the operation e.g. + // google.cloud.vpcaccess.v1beta1.Connectors.CreateConnector. + Method string `json:"method,omitempty"` + + // Target: Output only. Name of the resource that this operation is + // acting on e.g. + // projects/my-project/locations/us-central1/connectors/v1. + Target string `json:"target,omitempty"` + + // ForceSendFields is a list of field names (e.g. "CreateTime") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "CreateTime") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *OperationMetadataV1Beta1) MarshalJSON() ([]byte, error) { + type NoMethod OperationMetadataV1Beta1 + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Status: The `Status` type defines a logical error model that is +// suitable for different programming environments, including REST APIs +// and RPC APIs. It is used by gRPC (https://github.com/grpc). Each +// `Status` message contains three pieces of data: error code, error +// message, and error details. You can find out more about this error +// model and how to work with it in the API Design Guide +// (https://cloud.google.com/apis/design/errors). +type Status struct { + // Code: The status code, which should be an enum value of + // google.rpc.Code. + Code int64 `json:"code,omitempty"` + + // Details: A list of messages that carry the error details. There is a + // common set of message types for APIs to use. + Details []googleapi.RawMessage `json:"details,omitempty"` + + // Message: A developer-facing error message, which should be in + // English. Any user-facing error message should be localized and sent + // in the google.rpc.Status.details field, or localized by the client. + Message string `json:"message,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Code") 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. "Code") 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 *Status) MarshalJSON() ([]byte, error) { + type NoMethod Status + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Subnet: The subnet in which to house the connector +type Subnet struct { + // Name: Subnet name (relative, not fully qualified). E.g. if the full + // subnet selfLink is + // https://compute.googleapis.com/compute/v1/projects/{project}/regions/{region}/subnetworks/{subnetName} + // the correct input for this field would be {subnetName} + Name string `json:"name,omitempty"` + + // ProjectId: Project in which the subnet exists. If not set, this + // project is assumed to be the project for which the connector create + // request was issued. + ProjectId string `json:"projectId,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Name") 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. "Name") 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 *Subnet) MarshalJSON() ([]byte, error) { + type NoMethod Subnet + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// method id "vpcaccess.projects.locations.list": + +type ProjectsLocationsListCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// List: Lists information about the supported locations for this +// service. +// +// - name: The resource that owns the locations collection, if +// applicable. +func (r *ProjectsLocationsService) List(name string) *ProjectsLocationsListCall { + c := &ProjectsLocationsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// Filter sets the optional parameter "filter": A filter to narrow down +// results to a preferred subset. The filtering language accepts strings +// like "displayName=tokyo", and is documented in more detail in +// AIP-160 (https://google.aip.dev/160). +func (c *ProjectsLocationsListCall) Filter(filter string) *ProjectsLocationsListCall { + c.urlParams_.Set("filter", filter) + return c +} + +// PageSize sets the optional parameter "pageSize": The maximum number +// of results to return. If not set, the service selects a default. +func (c *ProjectsLocationsListCall) PageSize(pageSize int64) *ProjectsLocationsListCall { + c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) + return c +} + +// PageToken sets the optional parameter "pageToken": A page token +// received from the `next_page_token` field in the response. Send that +// page token to receive the subsequent page. +func (c *ProjectsLocationsListCall) PageToken(pageToken string) *ProjectsLocationsListCall { + 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 *ProjectsLocationsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsListCall { + 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 *ProjectsLocationsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsListCall { + 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 *ProjectsLocationsListCall) Context(ctx context.Context) *ProjectsLocationsListCall { + 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 *ProjectsLocationsListCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsListCall) 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}/locations") + 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 "vpcaccess.projects.locations.list" call. +// Exactly one of *ListLocationsResponse or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *ListLocationsResponse.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 *ProjectsLocationsListCall) Do(opts ...googleapi.CallOption) (*ListLocationsResponse, 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 := &ListLocationsResponse{ + 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 information about the supported locations for this service.", + // "flatPath": "v1/projects/{projectsId}/locations", + // "httpMethod": "GET", + // "id": "vpcaccess.projects.locations.list", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "filter": { + // "description": "A filter to narrow down results to a preferred subset. The filtering language accepts strings like `\"displayName=tokyo\"`, and is documented in more detail in [AIP-160](https://google.aip.dev/160).", + // "location": "query", + // "type": "string" + // }, + // "name": { + // "description": "The resource that owns the locations collection, if applicable.", + // "location": "path", + // "pattern": "^projects/[^/]+$", + // "required": true, + // "type": "string" + // }, + // "pageSize": { + // "description": "The maximum number of results to return. If not set, the service selects a default.", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "pageToken": { + // "description": "A page token received from the `next_page_token` field in the response. Send that page token to receive the subsequent page.", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "v1/{+name}/locations", + // "response": { + // "$ref": "ListLocationsResponse" + // }, + // "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 *ProjectsLocationsListCall) Pages(ctx context.Context, f func(*ListLocationsResponse) 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 "vpcaccess.projects.locations.connectors.create": + +type ProjectsLocationsConnectorsCreateCall struct { + s *Service + parent string + connector *Connector + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Create: Creates a Serverless VPC Access connector, returns an +// operation. +// +// - parent: The project and location in which the configuration should +// be created, specified in the format `projects/*/locations/*`. +func (r *ProjectsLocationsConnectorsService) Create(parent string, connector *Connector) *ProjectsLocationsConnectorsCreateCall { + c := &ProjectsLocationsConnectorsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + c.connector = connector + return c +} + +// ConnectorId sets the optional parameter "connectorId": Required. The +// ID to use for this connector. +func (c *ProjectsLocationsConnectorsCreateCall) ConnectorId(connectorId string) *ProjectsLocationsConnectorsCreateCall { + c.urlParams_.Set("connectorId", connectorId) + 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 *ProjectsLocationsConnectorsCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsConnectorsCreateCall { + 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 *ProjectsLocationsConnectorsCreateCall) Context(ctx context.Context) *ProjectsLocationsConnectorsCreateCall { + 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 *ProjectsLocationsConnectorsCreateCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsConnectorsCreateCall) 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.connector) + 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}/connectors") + 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 "vpcaccess.projects.locations.connectors.create" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.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 *ProjectsLocationsConnectorsCreateCall) Do(opts ...googleapi.CallOption) (*Operation, 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 := &Operation{ + 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 Serverless VPC Access connector, returns an operation.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/connectors", + // "httpMethod": "POST", + // "id": "vpcaccess.projects.locations.connectors.create", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "connectorId": { + // "description": "Required. The ID to use for this connector.", + // "location": "query", + // "type": "string" + // }, + // "parent": { + // "description": "Required. The project and location in which the configuration should be created, specified in the format `projects/*/locations/*`.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+parent}/connectors", + // "request": { + // "$ref": "Connector" + // }, + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "vpcaccess.projects.locations.connectors.delete": + +type ProjectsLocationsConnectorsDeleteCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Delete: Deletes a Serverless VPC Access connector. Returns NOT_FOUND +// if the resource does not exist. +// +// - name: Name of a Serverless VPC Access connector to delete. +func (r *ProjectsLocationsConnectorsService) Delete(name string) *ProjectsLocationsConnectorsDeleteCall { + c := &ProjectsLocationsConnectorsDeleteCall{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 *ProjectsLocationsConnectorsDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsConnectorsDeleteCall { + 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 *ProjectsLocationsConnectorsDeleteCall) Context(ctx context.Context) *ProjectsLocationsConnectorsDeleteCall { + 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 *ProjectsLocationsConnectorsDeleteCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsConnectorsDeleteCall) 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 "vpcaccess.projects.locations.connectors.delete" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.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 *ProjectsLocationsConnectorsDeleteCall) Do(opts ...googleapi.CallOption) (*Operation, 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 := &Operation{ + 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 Serverless VPC Access connector. Returns NOT_FOUND if the resource does not exist.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/connectors/{connectorsId}", + // "httpMethod": "DELETE", + // "id": "vpcaccess.projects.locations.connectors.delete", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Required. Name of a Serverless VPC Access connector to delete.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/connectors/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+name}", + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "vpcaccess.projects.locations.connectors.get": + +type ProjectsLocationsConnectorsGetCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Gets a Serverless VPC Access connector. Returns NOT_FOUND if the +// resource does not exist. +// +// - name: Name of a Serverless VPC Access connector to get. +func (r *ProjectsLocationsConnectorsService) Get(name string) *ProjectsLocationsConnectorsGetCall { + c := &ProjectsLocationsConnectorsGetCall{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 *ProjectsLocationsConnectorsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsConnectorsGetCall { + 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 *ProjectsLocationsConnectorsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsConnectorsGetCall { + 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 *ProjectsLocationsConnectorsGetCall) Context(ctx context.Context) *ProjectsLocationsConnectorsGetCall { + 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 *ProjectsLocationsConnectorsGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsConnectorsGetCall) 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 "vpcaccess.projects.locations.connectors.get" call. +// Exactly one of *Connector or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Connector.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 *ProjectsLocationsConnectorsGetCall) Do(opts ...googleapi.CallOption) (*Connector, 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 := &Connector{ + 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 Serverless VPC Access connector. Returns NOT_FOUND if the resource does not exist.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/connectors/{connectorsId}", + // "httpMethod": "GET", + // "id": "vpcaccess.projects.locations.connectors.get", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Required. Name of a Serverless VPC Access connector to get.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/connectors/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+name}", + // "response": { + // "$ref": "Connector" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "vpcaccess.projects.locations.connectors.list": + +type ProjectsLocationsConnectorsListCall struct { + s *Service + parent string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// List: Lists Serverless VPC Access connectors. +// +// - parent: The project and location from which the routes should be +// listed. +func (r *ProjectsLocationsConnectorsService) List(parent string) *ProjectsLocationsConnectorsListCall { + c := &ProjectsLocationsConnectorsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + return c +} + +// PageSize sets the optional parameter "pageSize": Maximum number of +// functions to return per call. +func (c *ProjectsLocationsConnectorsListCall) PageSize(pageSize int64) *ProjectsLocationsConnectorsListCall { + c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) + return c +} + +// PageToken sets the optional parameter "pageToken": Continuation +// token. +func (c *ProjectsLocationsConnectorsListCall) PageToken(pageToken string) *ProjectsLocationsConnectorsListCall { + 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 *ProjectsLocationsConnectorsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsConnectorsListCall { + 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 *ProjectsLocationsConnectorsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsConnectorsListCall { + 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 *ProjectsLocationsConnectorsListCall) Context(ctx context.Context) *ProjectsLocationsConnectorsListCall { + 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 *ProjectsLocationsConnectorsListCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsConnectorsListCall) 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}/connectors") + 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 "vpcaccess.projects.locations.connectors.list" call. +// Exactly one of *ListConnectorsResponse or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *ListConnectorsResponse.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 *ProjectsLocationsConnectorsListCall) Do(opts ...googleapi.CallOption) (*ListConnectorsResponse, 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 := &ListConnectorsResponse{ + 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 Serverless VPC Access connectors.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/connectors", + // "httpMethod": "GET", + // "id": "vpcaccess.projects.locations.connectors.list", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "pageSize": { + // "description": "Maximum number of functions to return per call.", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "pageToken": { + // "description": "Continuation token.", + // "location": "query", + // "type": "string" + // }, + // "parent": { + // "description": "Required. The project and location from which the routes should be listed.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+parent}/connectors", + // "response": { + // "$ref": "ListConnectorsResponse" + // }, + // "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 *ProjectsLocationsConnectorsListCall) Pages(ctx context.Context, f func(*ListConnectorsResponse) 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 "vpcaccess.projects.locations.operations.get": + +type ProjectsLocationsOperationsGetCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Gets the latest state of a long-running operation. Clients can +// use this method to poll the operation result at intervals as +// recommended by the API service. +// +// - name: The name of the operation resource. +func (r *ProjectsLocationsOperationsService) Get(name string) *ProjectsLocationsOperationsGetCall { + c := &ProjectsLocationsOperationsGetCall{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 *ProjectsLocationsOperationsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsOperationsGetCall { + 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 *ProjectsLocationsOperationsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsOperationsGetCall { + 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 *ProjectsLocationsOperationsGetCall) Context(ctx context.Context) *ProjectsLocationsOperationsGetCall { + 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 *ProjectsLocationsOperationsGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsOperationsGetCall) 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 "vpcaccess.projects.locations.operations.get" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.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 *ProjectsLocationsOperationsGetCall) Do(opts ...googleapi.CallOption) (*Operation, 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 := &Operation{ + 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 latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}", + // "httpMethod": "GET", + // "id": "vpcaccess.projects.locations.operations.get", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "The name of the operation resource.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+name}", + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "vpcaccess.projects.locations.operations.list": + +type ProjectsLocationsOperationsListCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// List: Lists operations that match the specified filter in the +// request. If the server doesn't support this method, it returns +// `UNIMPLEMENTED`. NOTE: the `name` binding allows API services to +// override the binding to use different resource name schemes, such as +// `users/*/operations`. To override the binding, API services can add a +// binding such as "/v1/{name=users/*}/operations" to their service +// configuration. For backwards compatibility, the default name includes +// the operations collection id, however overriding users must ensure +// the name binding is the parent resource, without the operations +// collection id. +// +// - name: The name of the operation's parent resource. +func (r *ProjectsLocationsOperationsService) List(name string) *ProjectsLocationsOperationsListCall { + c := &ProjectsLocationsOperationsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// Filter sets the optional parameter "filter": The standard list +// filter. +func (c *ProjectsLocationsOperationsListCall) Filter(filter string) *ProjectsLocationsOperationsListCall { + c.urlParams_.Set("filter", filter) + return c +} + +// PageSize sets the optional parameter "pageSize": The standard list +// page size. +func (c *ProjectsLocationsOperationsListCall) PageSize(pageSize int64) *ProjectsLocationsOperationsListCall { + c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) + return c +} + +// PageToken sets the optional parameter "pageToken": The standard list +// page token. +func (c *ProjectsLocationsOperationsListCall) PageToken(pageToken string) *ProjectsLocationsOperationsListCall { + 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 *ProjectsLocationsOperationsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsOperationsListCall { + 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 *ProjectsLocationsOperationsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsOperationsListCall { + 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 *ProjectsLocationsOperationsListCall) Context(ctx context.Context) *ProjectsLocationsOperationsListCall { + 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 *ProjectsLocationsOperationsListCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsOperationsListCall) 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}/operations") + 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 "vpcaccess.projects.locations.operations.list" call. +// Exactly one of *ListOperationsResponse or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *ListOperationsResponse.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 *ProjectsLocationsOperationsListCall) Do(opts ...googleapi.CallOption) (*ListOperationsResponse, 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 := &ListOperationsResponse{ + 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 operations that match the specified filter in the request. If the server doesn't support this method, it returns `UNIMPLEMENTED`. NOTE: the `name` binding allows API services to override the binding to use different resource name schemes, such as `users/*/operations`. To override the binding, API services can add a binding such as `\"/v1/{name=users/*}/operations\"` to their service configuration. For backwards compatibility, the default name includes the operations collection id, however overriding users must ensure the name binding is the parent resource, without the operations collection id.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/operations", + // "httpMethod": "GET", + // "id": "vpcaccess.projects.locations.operations.list", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "filter": { + // "description": "The standard list filter.", + // "location": "query", + // "type": "string" + // }, + // "name": { + // "description": "The name of the operation's parent resource.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+$", + // "required": true, + // "type": "string" + // }, + // "pageSize": { + // "description": "The standard list page size.", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "pageToken": { + // "description": "The standard list page token.", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "v1/{+name}/operations", + // "response": { + // "$ref": "ListOperationsResponse" + // }, + // "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 *ProjectsLocationsOperationsListCall) Pages(ctx context.Context, f func(*ListOperationsResponse) 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/vpcaccess/v1beta1/vpcaccess-api.json b/vpcaccess/v1beta1/vpcaccess-api.json new file mode 100644 index 00000000000..ba182bcb157 --- /dev/null +++ b/vpcaccess/v1beta1/vpcaccess-api.json @@ -0,0 +1,723 @@ +{ + "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://vpcaccess.googleapis.com/", + "batchPath": "batch", + "canonicalName": "Serverless VPC Access", + "description": "API for managing VPC access connectors.", + "discoveryVersion": "v1", + "documentationLink": "https://cloud.google.com/vpc/docs/configure-serverless-vpc-access", + "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": "vpcaccess:v1beta1", + "kind": "discovery#restDescription", + "mtlsRootUrl": "https://vpcaccess.mtls.googleapis.com/", + "name": "vpcaccess", + "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": { + "projects": { + "resources": { + "locations": { + "methods": { + "list": { + "description": "Lists information about the supported locations for this service.", + "flatPath": "v1beta1/projects/{projectsId}/locations", + "httpMethod": "GET", + "id": "vpcaccess.projects.locations.list", + "parameterOrder": [ + "name" + ], + "parameters": { + "filter": { + "description": "A filter to narrow down results to a preferred subset. The filtering language accepts strings like `\"displayName=tokyo\"`, and is documented in more detail in [AIP-160](https://google.aip.dev/160).", + "location": "query", + "type": "string" + }, + "name": { + "description": "The resource that owns the locations collection, if applicable.", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "The maximum number of results to return. If not set, the service selects a default.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "A page token received from the `next_page_token` field in the response. Send that page token to receive the subsequent page.", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/{+name}/locations", + "response": { + "$ref": "ListLocationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, + "resources": { + "connectors": { + "methods": { + "create": { + "description": "Creates a Serverless VPC Access connector, returns an operation.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/connectors", + "httpMethod": "POST", + "id": "vpcaccess.projects.locations.connectors.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "connectorId": { + "description": "Required. The ID to use for this connector.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The project and location in which the configuration should be created, specified in the format `projects/*/locations/*`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+parent}/connectors", + "request": { + "$ref": "Connector" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a Serverless VPC Access connector. Returns NOT_FOUND if the resource does not exist.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/connectors/{connectorsId}", + "httpMethod": "DELETE", + "id": "vpcaccess.projects.locations.connectors.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. Name of a Serverless VPC Access connector to delete.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/connectors/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets a Serverless VPC Access connector. Returns NOT_FOUND if the resource does not exist.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/connectors/{connectorsId}", + "httpMethod": "GET", + "id": "vpcaccess.projects.locations.connectors.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. Name of a Serverless VPC Access connector to get.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/connectors/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "Connector" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists Serverless VPC Access connectors.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/connectors", + "httpMethod": "GET", + "id": "vpcaccess.projects.locations.connectors.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "Maximum number of functions to return per call.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Continuation token.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The project and location from which the routes should be listed.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+parent}/connectors", + "response": { + "$ref": "ListConnectorsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Updates a Serverless VPC Access connector, returns an operation.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/connectors/{connectorsId}", + "httpMethod": "PATCH", + "id": "vpcaccess.projects.locations.connectors.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The resource name in the format `projects/*/locations/*/connectors/*`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/connectors/[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "The fields to update on the entry group. If absent or empty, all modifiable fields are updated.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "request": { + "$ref": "Connector" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "operations": { + "methods": { + "get": { + "description": "Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}", + "httpMethod": "GET", + "id": "vpcaccess.projects.locations.operations.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns `UNIMPLEMENTED`. NOTE: the `name` binding allows API services to override the binding to use different resource name schemes, such as `users/*/operations`. To override the binding, API services can add a binding such as `\"/v1/{name=users/*}/operations\"` to their service configuration. For backwards compatibility, the default name includes the operations collection id, however overriding users must ensure the name binding is the parent resource, without the operations collection id.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/operations", + "httpMethod": "GET", + "id": "vpcaccess.projects.locations.operations.list", + "parameterOrder": [ + "name" + ], + "parameters": { + "filter": { + "description": "The standard list filter.", + "location": "query", + "type": "string" + }, + "name": { + "description": "The name of the operation's parent resource.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "The standard list page size.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The standard list page token.", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/{+name}/operations", + "response": { + "$ref": "ListOperationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } + } + } + } + }, + "revision": "20230105", + "rootUrl": "https://vpcaccess.googleapis.com/", + "schemas": { + "Connector": { + "description": "Definition of a Serverless VPC Access connector.", + "id": "Connector", + "properties": { + "connectedProjects": { + "description": "Output only. List of projects using the connector.", + "items": { + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "ipCidrRange": { + "description": "The range of internal addresses that follows RFC 4632 notation. Example: `10.132.0.0/28`.", + "type": "string" + }, + "machineType": { + "description": "Machine type of VM Instance underlying connector. Default is e2-micro", + "type": "string" + }, + "maxInstances": { + "description": "Maximum value of instances in autoscaling group underlying the connector.", + "format": "int32", + "type": "integer" + }, + "maxThroughput": { + "description": "Maximum throughput of the connector in Mbps. Default is 300, max is 1000.", + "format": "int32", + "type": "integer" + }, + "minInstances": { + "description": "Minimum value of instances in autoscaling group underlying the connector.", + "format": "int32", + "type": "integer" + }, + "minThroughput": { + "description": "Minimum throughput of the connector in Mbps. Default and min is 200.", + "format": "int32", + "type": "integer" + }, + "name": { + "description": "The resource name in the format `projects/*/locations/*/connectors/*`.", + "type": "string" + }, + "network": { + "description": "Name of a VPC network.", + "type": "string" + }, + "state": { + "description": "Output only. State of the VPC access connector.", + "enum": [ + "STATE_UNSPECIFIED", + "READY", + "CREATING", + "DELETING", + "ERROR", + "UPDATING" + ], + "enumDescriptions": [ + "Invalid state.", + "Connector is deployed and ready to receive traffic.", + "An Insert operation is in progress. Transient condition.", + "A Delete operation is in progress. Transient condition.", + "Connector is in a bad state, manual deletion recommended.", + "The connector is being updated." + ], + "readOnly": true, + "type": "string" + }, + "subnet": { + "$ref": "Subnet", + "description": "The subnet in which to house the VPC Access Connector." + } + }, + "type": "object" + }, + "ListConnectorsResponse": { + "description": "Response for listing Serverless VPC Access connectors.", + "id": "ListConnectorsResponse", + "properties": { + "connectors": { + "description": "List of Serverless VPC Access connectors.", + "items": { + "$ref": "Connector" + }, + "type": "array" + }, + "nextPageToken": { + "description": "Continuation token.", + "type": "string" + } + }, + "type": "object" + }, + "ListLocationsResponse": { + "description": "The response message for Locations.ListLocations.", + "id": "ListLocationsResponse", + "properties": { + "locations": { + "description": "A list of locations that matches the specified filter in the request.", + "items": { + "$ref": "Location" + }, + "type": "array" + }, + "nextPageToken": { + "description": "The standard List next-page token.", + "type": "string" + } + }, + "type": "object" + }, + "ListOperationsResponse": { + "description": "The response message for Operations.ListOperations.", + "id": "ListOperationsResponse", + "properties": { + "nextPageToken": { + "description": "The standard List next-page token.", + "type": "string" + }, + "operations": { + "description": "A list of operations that matches the specified filter in the request.", + "items": { + "$ref": "Operation" + }, + "type": "array" + } + }, + "type": "object" + }, + "Location": { + "description": "A resource that represents Google Cloud Platform location.", + "id": "Location", + "properties": { + "displayName": { + "description": "The friendly name for this location, typically a nearby city name. For example, \"Tokyo\".", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Cross-service attributes for the location. For example {\"cloud.googleapis.com/region\": \"us-east1\"}", + "type": "object" + }, + "locationId": { + "description": "The canonical id for this location. For example: `\"us-east1\"`.", + "type": "string" + }, + "metadata": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "Service-specific metadata. For example the available capacity at the given location.", + "type": "object" + }, + "name": { + "description": "Resource name for the location, which may vary between implementations. For example: `\"projects/example-project/locations/us-east1\"`", + "type": "string" + } + }, + "type": "object" + }, + "Operation": { + "description": "This resource represents a long-running operation that is the result of a network API call.", + "id": "Operation", + "properties": { + "done": { + "description": "If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available.", + "type": "boolean" + }, + "error": { + "$ref": "Status", + "description": "The error result of the operation in case of failure or cancellation." + }, + "metadata": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.", + "type": "object" + }, + "name": { + "description": "The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id}`.", + "type": "string" + }, + "response": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "The normal response of the operation in case of success. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.", + "type": "object" + } + }, + "type": "object" + }, + "OperationMetadata": { + "description": "Metadata for google.longrunning.Operation.", + "id": "OperationMetadata", + "properties": { + "createTime": { + "description": "Output only. Time when the operation was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "endTime": { + "description": "Output only. Time when the operation completed.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "method": { + "description": "Output only. Method that initiated the operation e.g. google.cloud.vpcaccess.v1.Connectors.CreateConnector.", + "readOnly": true, + "type": "string" + }, + "target": { + "description": "Output only. Name of the resource that this operation is acting on e.g. projects/my-project/locations/us-central1/connectors/v1.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "OperationMetadataV1Alpha1": { + "description": "Metadata for google.longrunning.Operation.", + "id": "OperationMetadataV1Alpha1", + "properties": { + "endTime": { + "description": "Output only. Time when the operation completed.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "insertTime": { + "description": "Output only. Time when the operation was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "method": { + "description": "Output only. Method that initiated the operation e.g. google.cloud.vpcaccess.v1alpha1.Connectors.CreateConnector.", + "readOnly": true, + "type": "string" + }, + "target": { + "description": "Output only. Name of the resource that this operation is acting on e.g. projects/my-project/locations/us-central1/connectors/v1.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "OperationMetadataV1Beta1": { + "description": "Metadata for google.longrunning.Operation.", + "id": "OperationMetadataV1Beta1", + "properties": { + "createTime": { + "description": "Output only. Time when the operation was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "endTime": { + "description": "Output only. Time when the operation completed.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "method": { + "description": "Output only. Method that initiated the operation e.g. google.cloud.vpcaccess.v1beta1.Connectors.CreateConnector.", + "readOnly": true, + "type": "string" + }, + "target": { + "description": "Output only. Name of the resource that this operation is acting on e.g. projects/my-project/locations/us-central1/connectors/v1.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "Status": { + "description": "The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors).", + "id": "Status", + "properties": { + "code": { + "description": "The status code, which should be an enum value of google.rpc.Code.", + "format": "int32", + "type": "integer" + }, + "details": { + "description": "A list of messages that carry the error details. There is a common set of message types for APIs to use.", + "items": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.", + "type": "string" + } + }, + "type": "object" + }, + "Subnet": { + "description": "The subnet in which to house the connector", + "id": "Subnet", + "properties": { + "name": { + "description": "Subnet name (relative, not fully qualified). E.g. if the full subnet selfLink is https://compute.googleapis.com/compute/v1/projects/{project}/regions/{region}/subnetworks/{subnetName} the correct input for this field would be {subnetName}", + "type": "string" + }, + "projectId": { + "description": "Project in which the subnet exists. If not set, this project is assumed to be the project for which the connector create request was issued.", + "type": "string" + } + }, + "type": "object" + } + }, + "servicePath": "", + "title": "Serverless VPC Access API", + "version": "v1beta1", + "version_module": true +} \ No newline at end of file diff --git a/vpcaccess/v1beta1/vpcaccess-gen.go b/vpcaccess/v1beta1/vpcaccess-gen.go new file mode 100644 index 00000000000..95f2dae0fc2 --- /dev/null +++ b/vpcaccess/v1beta1/vpcaccess-gen.go @@ -0,0 +1,2038 @@ +// 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 vpcaccess provides access to the Serverless VPC Access API. +// +// For product documentation, see: https://cloud.google.com/vpc/docs/configure-serverless-vpc-access +// +// # Creating a client +// +// Usage example: +// +// import "google.golang.org/api/vpcaccess/v1beta1" +// ... +// ctx := context.Background() +// vpcaccessService, err := vpcaccess.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: +// +// vpcaccessService, err := vpcaccess.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, ...) +// vpcaccessService, err := vpcaccess.NewService(ctx, option.WithTokenSource(config.TokenSource(ctx, token))) +// +// See https://godoc.org/google.golang.org/api/option/ for details on options. +package vpcaccess // import "google.golang.org/api/vpcaccess/v1beta1" + +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 = "vpcaccess:v1beta1" +const apiName = "vpcaccess" +const apiVersion = "v1beta1" +const basePath = "https://vpcaccess.googleapis.com/" +const mtlsBasePath = "https://vpcaccess.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.Projects = NewProjectsService(s) + return s, nil +} + +type Service struct { + client *http.Client + BasePath string // API endpoint base URL + UserAgent string // optional additional User-Agent fragment + + Projects *ProjectsService +} + +func (s *Service) userAgent() string { + if s.UserAgent == "" { + return googleapi.UserAgent + } + return googleapi.UserAgent + " " + s.UserAgent +} + +func NewProjectsService(s *Service) *ProjectsService { + rs := &ProjectsService{s: s} + rs.Locations = NewProjectsLocationsService(s) + return rs +} + +type ProjectsService struct { + s *Service + + Locations *ProjectsLocationsService +} + +func NewProjectsLocationsService(s *Service) *ProjectsLocationsService { + rs := &ProjectsLocationsService{s: s} + rs.Connectors = NewProjectsLocationsConnectorsService(s) + rs.Operations = NewProjectsLocationsOperationsService(s) + return rs +} + +type ProjectsLocationsService struct { + s *Service + + Connectors *ProjectsLocationsConnectorsService + + Operations *ProjectsLocationsOperationsService +} + +func NewProjectsLocationsConnectorsService(s *Service) *ProjectsLocationsConnectorsService { + rs := &ProjectsLocationsConnectorsService{s: s} + return rs +} + +type ProjectsLocationsConnectorsService struct { + s *Service +} + +func NewProjectsLocationsOperationsService(s *Service) *ProjectsLocationsOperationsService { + rs := &ProjectsLocationsOperationsService{s: s} + return rs +} + +type ProjectsLocationsOperationsService struct { + s *Service +} + +// Connector: Definition of a Serverless VPC Access connector. +type Connector struct { + // ConnectedProjects: Output only. List of projects using the connector. + ConnectedProjects []string `json:"connectedProjects,omitempty"` + + // IpCidrRange: The range of internal addresses that follows RFC 4632 + // notation. Example: `10.132.0.0/28`. + IpCidrRange string `json:"ipCidrRange,omitempty"` + + // MachineType: Machine type of VM Instance underlying connector. + // Default is e2-micro + MachineType string `json:"machineType,omitempty"` + + // MaxInstances: Maximum value of instances in autoscaling group + // underlying the connector. + MaxInstances int64 `json:"maxInstances,omitempty"` + + // MaxThroughput: Maximum throughput of the connector in Mbps. Default + // is 300, max is 1000. + MaxThroughput int64 `json:"maxThroughput,omitempty"` + + // MinInstances: Minimum value of instances in autoscaling group + // underlying the connector. + MinInstances int64 `json:"minInstances,omitempty"` + + // MinThroughput: Minimum throughput of the connector in Mbps. Default + // and min is 200. + MinThroughput int64 `json:"minThroughput,omitempty"` + + // Name: The resource name in the format + // `projects/*/locations/*/connectors/*`. + Name string `json:"name,omitempty"` + + // Network: Name of a VPC network. + Network string `json:"network,omitempty"` + + // State: Output only. State of the VPC access connector. + // + // Possible values: + // "STATE_UNSPECIFIED" - Invalid state. + // "READY" - Connector is deployed and ready to receive traffic. + // "CREATING" - An Insert operation is in progress. Transient + // condition. + // "DELETING" - A Delete operation is in progress. Transient + // condition. + // "ERROR" - Connector is in a bad state, manual deletion recommended. + // "UPDATING" - The connector is being updated. + State string `json:"state,omitempty"` + + // Subnet: The subnet in which to house the VPC Access Connector. + Subnet *Subnet `json:"subnet,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "ConnectedProjects") + // 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. "ConnectedProjects") 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 *Connector) MarshalJSON() ([]byte, error) { + type NoMethod Connector + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// ListConnectorsResponse: Response for listing Serverless VPC Access +// connectors. +type ListConnectorsResponse struct { + // Connectors: List of Serverless VPC Access connectors. + Connectors []*Connector `json:"connectors,omitempty"` + + // NextPageToken: Continuation token. + 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. "Connectors") 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. "Connectors") 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 *ListConnectorsResponse) MarshalJSON() ([]byte, error) { + type NoMethod ListConnectorsResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// ListLocationsResponse: The response message for +// Locations.ListLocations. +type ListLocationsResponse struct { + // Locations: A list of locations that matches the specified filter in + // the request. + Locations []*Location `json:"locations,omitempty"` + + // NextPageToken: The standard List next-page token. + 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. "Locations") 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. "Locations") 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 *ListLocationsResponse) MarshalJSON() ([]byte, error) { + type NoMethod ListLocationsResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// ListOperationsResponse: The response message for +// Operations.ListOperations. +type ListOperationsResponse struct { + // NextPageToken: The standard List next-page token. + NextPageToken string `json:"nextPageToken,omitempty"` + + // Operations: A list of operations that matches the specified filter in + // the request. + Operations []*Operation `json:"operations,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 *ListOperationsResponse) MarshalJSON() ([]byte, error) { + type NoMethod ListOperationsResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Location: A resource that represents Google Cloud Platform location. +type Location struct { + // DisplayName: The friendly name for this location, typically a nearby + // city name. For example, "Tokyo". + DisplayName string `json:"displayName,omitempty"` + + // Labels: Cross-service attributes for the location. For example + // {"cloud.googleapis.com/region": "us-east1"} + Labels map[string]string `json:"labels,omitempty"` + + // LocationId: The canonical id for this location. For example: + // "us-east1". + LocationId string `json:"locationId,omitempty"` + + // Metadata: Service-specific metadata. For example the available + // capacity at the given location. + Metadata googleapi.RawMessage `json:"metadata,omitempty"` + + // Name: Resource name for the location, which may vary between + // implementations. For example: + // "projects/example-project/locations/us-east1" + Name string `json:"name,omitempty"` + + // ForceSendFields is a list of field names (e.g. "DisplayName") 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. "DisplayName") 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 *Location) MarshalJSON() ([]byte, error) { + type NoMethod Location + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Operation: This resource represents a long-running operation that is +// the result of a network API call. +type Operation struct { + // Done: If the value is `false`, it means the operation is still in + // progress. If `true`, the operation is completed, and either `error` + // or `response` is available. + Done bool `json:"done,omitempty"` + + // Error: The error result of the operation in case of failure or + // cancellation. + Error *Status `json:"error,omitempty"` + + // Metadata: Service-specific metadata associated with the operation. It + // typically contains progress information and common metadata such as + // create time. Some services might not provide such metadata. Any + // method that returns a long-running operation should document the + // metadata type, if any. + Metadata googleapi.RawMessage `json:"metadata,omitempty"` + + // Name: The server-assigned name, which is only unique within the same + // service that originally returns it. If you use the default HTTP + // mapping, the `name` should be a resource name ending with + // `operations/{unique_id}`. + Name string `json:"name,omitempty"` + + // Response: The normal response of the operation in case of success. If + // the original method returns no data on success, such as `Delete`, the + // response is `google.protobuf.Empty`. If the original method is + // standard `Get`/`Create`/`Update`, the response should be the + // resource. For other methods, the response should have the type + // `XxxResponse`, where `Xxx` is the original method name. For example, + // if the original method name is `TakeSnapshot()`, the inferred + // response type is `TakeSnapshotResponse`. + Response googleapi.RawMessage `json:"response,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "Done") 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. "Done") 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 *Operation) MarshalJSON() ([]byte, error) { + type NoMethod Operation + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// OperationMetadata: Metadata for google.longrunning.Operation. +type OperationMetadata struct { + // CreateTime: Output only. Time when the operation was created. + CreateTime string `json:"createTime,omitempty"` + + // EndTime: Output only. Time when the operation completed. + EndTime string `json:"endTime,omitempty"` + + // Method: Output only. Method that initiated the operation e.g. + // google.cloud.vpcaccess.v1.Connectors.CreateConnector. + Method string `json:"method,omitempty"` + + // Target: Output only. Name of the resource that this operation is + // acting on e.g. + // projects/my-project/locations/us-central1/connectors/v1. + Target string `json:"target,omitempty"` + + // ForceSendFields is a list of field names (e.g. "CreateTime") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "CreateTime") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *OperationMetadata) MarshalJSON() ([]byte, error) { + type NoMethod OperationMetadata + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// OperationMetadataV1Alpha1: Metadata for google.longrunning.Operation. +type OperationMetadataV1Alpha1 struct { + // EndTime: Output only. Time when the operation completed. + EndTime string `json:"endTime,omitempty"` + + // InsertTime: Output only. Time when the operation was created. + InsertTime string `json:"insertTime,omitempty"` + + // Method: Output only. Method that initiated the operation e.g. + // google.cloud.vpcaccess.v1alpha1.Connectors.CreateConnector. + Method string `json:"method,omitempty"` + + // Target: Output only. Name of the resource that this operation is + // acting on e.g. + // projects/my-project/locations/us-central1/connectors/v1. + Target string `json:"target,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 *OperationMetadataV1Alpha1) MarshalJSON() ([]byte, error) { + type NoMethod OperationMetadataV1Alpha1 + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// OperationMetadataV1Beta1: Metadata for google.longrunning.Operation. +type OperationMetadataV1Beta1 struct { + // CreateTime: Output only. Time when the operation was created. + CreateTime string `json:"createTime,omitempty"` + + // EndTime: Output only. Time when the operation completed. + EndTime string `json:"endTime,omitempty"` + + // Method: Output only. Method that initiated the operation e.g. + // google.cloud.vpcaccess.v1beta1.Connectors.CreateConnector. + Method string `json:"method,omitempty"` + + // Target: Output only. Name of the resource that this operation is + // acting on e.g. + // projects/my-project/locations/us-central1/connectors/v1. + Target string `json:"target,omitempty"` + + // ForceSendFields is a list of field names (e.g. "CreateTime") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "CreateTime") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *OperationMetadataV1Beta1) MarshalJSON() ([]byte, error) { + type NoMethod OperationMetadataV1Beta1 + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Status: The `Status` type defines a logical error model that is +// suitable for different programming environments, including REST APIs +// and RPC APIs. It is used by gRPC (https://github.com/grpc). Each +// `Status` message contains three pieces of data: error code, error +// message, and error details. You can find out more about this error +// model and how to work with it in the API Design Guide +// (https://cloud.google.com/apis/design/errors). +type Status struct { + // Code: The status code, which should be an enum value of + // google.rpc.Code. + Code int64 `json:"code,omitempty"` + + // Details: A list of messages that carry the error details. There is a + // common set of message types for APIs to use. + Details []googleapi.RawMessage `json:"details,omitempty"` + + // Message: A developer-facing error message, which should be in + // English. Any user-facing error message should be localized and sent + // in the google.rpc.Status.details field, or localized by the client. + Message string `json:"message,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Code") 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. "Code") 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 *Status) MarshalJSON() ([]byte, error) { + type NoMethod Status + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Subnet: The subnet in which to house the connector +type Subnet struct { + // Name: Subnet name (relative, not fully qualified). E.g. if the full + // subnet selfLink is + // https://compute.googleapis.com/compute/v1/projects/{project}/regions/{region}/subnetworks/{subnetName} + // the correct input for this field would be {subnetName} + Name string `json:"name,omitempty"` + + // ProjectId: Project in which the subnet exists. If not set, this + // project is assumed to be the project for which the connector create + // request was issued. + ProjectId string `json:"projectId,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Name") 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. "Name") 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 *Subnet) MarshalJSON() ([]byte, error) { + type NoMethod Subnet + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// method id "vpcaccess.projects.locations.list": + +type ProjectsLocationsListCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// List: Lists information about the supported locations for this +// service. +// +// - name: The resource that owns the locations collection, if +// applicable. +func (r *ProjectsLocationsService) List(name string) *ProjectsLocationsListCall { + c := &ProjectsLocationsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// Filter sets the optional parameter "filter": A filter to narrow down +// results to a preferred subset. The filtering language accepts strings +// like "displayName=tokyo", and is documented in more detail in +// AIP-160 (https://google.aip.dev/160). +func (c *ProjectsLocationsListCall) Filter(filter string) *ProjectsLocationsListCall { + c.urlParams_.Set("filter", filter) + return c +} + +// PageSize sets the optional parameter "pageSize": The maximum number +// of results to return. If not set, the service selects a default. +func (c *ProjectsLocationsListCall) PageSize(pageSize int64) *ProjectsLocationsListCall { + c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) + return c +} + +// PageToken sets the optional parameter "pageToken": A page token +// received from the `next_page_token` field in the response. Send that +// page token to receive the subsequent page. +func (c *ProjectsLocationsListCall) PageToken(pageToken string) *ProjectsLocationsListCall { + 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 *ProjectsLocationsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsListCall { + 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 *ProjectsLocationsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsListCall { + 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 *ProjectsLocationsListCall) Context(ctx context.Context) *ProjectsLocationsListCall { + 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 *ProjectsLocationsListCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsListCall) 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, "v1beta1/{+name}/locations") + 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 "vpcaccess.projects.locations.list" call. +// Exactly one of *ListLocationsResponse or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *ListLocationsResponse.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 *ProjectsLocationsListCall) Do(opts ...googleapi.CallOption) (*ListLocationsResponse, 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 := &ListLocationsResponse{ + 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 information about the supported locations for this service.", + // "flatPath": "v1beta1/projects/{projectsId}/locations", + // "httpMethod": "GET", + // "id": "vpcaccess.projects.locations.list", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "filter": { + // "description": "A filter to narrow down results to a preferred subset. The filtering language accepts strings like `\"displayName=tokyo\"`, and is documented in more detail in [AIP-160](https://google.aip.dev/160).", + // "location": "query", + // "type": "string" + // }, + // "name": { + // "description": "The resource that owns the locations collection, if applicable.", + // "location": "path", + // "pattern": "^projects/[^/]+$", + // "required": true, + // "type": "string" + // }, + // "pageSize": { + // "description": "The maximum number of results to return. If not set, the service selects a default.", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "pageToken": { + // "description": "A page token received from the `next_page_token` field in the response. Send that page token to receive the subsequent page.", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "v1beta1/{+name}/locations", + // "response": { + // "$ref": "ListLocationsResponse" + // }, + // "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 *ProjectsLocationsListCall) Pages(ctx context.Context, f func(*ListLocationsResponse) 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 "vpcaccess.projects.locations.connectors.create": + +type ProjectsLocationsConnectorsCreateCall struct { + s *Service + parent string + connector *Connector + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Create: Creates a Serverless VPC Access connector, returns an +// operation. +// +// - parent: The project and location in which the configuration should +// be created, specified in the format `projects/*/locations/*`. +func (r *ProjectsLocationsConnectorsService) Create(parent string, connector *Connector) *ProjectsLocationsConnectorsCreateCall { + c := &ProjectsLocationsConnectorsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + c.connector = connector + return c +} + +// ConnectorId sets the optional parameter "connectorId": Required. The +// ID to use for this connector. +func (c *ProjectsLocationsConnectorsCreateCall) ConnectorId(connectorId string) *ProjectsLocationsConnectorsCreateCall { + c.urlParams_.Set("connectorId", connectorId) + 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 *ProjectsLocationsConnectorsCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsConnectorsCreateCall { + 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 *ProjectsLocationsConnectorsCreateCall) Context(ctx context.Context) *ProjectsLocationsConnectorsCreateCall { + 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 *ProjectsLocationsConnectorsCreateCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsConnectorsCreateCall) 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.connector) + 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, "v1beta1/{+parent}/connectors") + 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 "vpcaccess.projects.locations.connectors.create" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.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 *ProjectsLocationsConnectorsCreateCall) Do(opts ...googleapi.CallOption) (*Operation, 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 := &Operation{ + 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 Serverless VPC Access connector, returns an operation.", + // "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/connectors", + // "httpMethod": "POST", + // "id": "vpcaccess.projects.locations.connectors.create", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "connectorId": { + // "description": "Required. The ID to use for this connector.", + // "location": "query", + // "type": "string" + // }, + // "parent": { + // "description": "Required. The project and location in which the configuration should be created, specified in the format `projects/*/locations/*`.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1beta1/{+parent}/connectors", + // "request": { + // "$ref": "Connector" + // }, + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "vpcaccess.projects.locations.connectors.delete": + +type ProjectsLocationsConnectorsDeleteCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Delete: Deletes a Serverless VPC Access connector. Returns NOT_FOUND +// if the resource does not exist. +// +// - name: Name of a Serverless VPC Access connector to delete. +func (r *ProjectsLocationsConnectorsService) Delete(name string) *ProjectsLocationsConnectorsDeleteCall { + c := &ProjectsLocationsConnectorsDeleteCall{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 *ProjectsLocationsConnectorsDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsConnectorsDeleteCall { + 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 *ProjectsLocationsConnectorsDeleteCall) Context(ctx context.Context) *ProjectsLocationsConnectorsDeleteCall { + 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 *ProjectsLocationsConnectorsDeleteCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsConnectorsDeleteCall) 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, "v1beta1/{+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 "vpcaccess.projects.locations.connectors.delete" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.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 *ProjectsLocationsConnectorsDeleteCall) Do(opts ...googleapi.CallOption) (*Operation, 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 := &Operation{ + 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 Serverless VPC Access connector. Returns NOT_FOUND if the resource does not exist.", + // "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/connectors/{connectorsId}", + // "httpMethod": "DELETE", + // "id": "vpcaccess.projects.locations.connectors.delete", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Required. Name of a Serverless VPC Access connector to delete.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/connectors/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1beta1/{+name}", + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "vpcaccess.projects.locations.connectors.get": + +type ProjectsLocationsConnectorsGetCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Gets a Serverless VPC Access connector. Returns NOT_FOUND if the +// resource does not exist. +// +// - name: Name of a Serverless VPC Access connector to get. +func (r *ProjectsLocationsConnectorsService) Get(name string) *ProjectsLocationsConnectorsGetCall { + c := &ProjectsLocationsConnectorsGetCall{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 *ProjectsLocationsConnectorsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsConnectorsGetCall { + 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 *ProjectsLocationsConnectorsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsConnectorsGetCall { + 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 *ProjectsLocationsConnectorsGetCall) Context(ctx context.Context) *ProjectsLocationsConnectorsGetCall { + 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 *ProjectsLocationsConnectorsGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsConnectorsGetCall) 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, "v1beta1/{+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 "vpcaccess.projects.locations.connectors.get" call. +// Exactly one of *Connector or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Connector.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 *ProjectsLocationsConnectorsGetCall) Do(opts ...googleapi.CallOption) (*Connector, 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 := &Connector{ + 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 Serverless VPC Access connector. Returns NOT_FOUND if the resource does not exist.", + // "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/connectors/{connectorsId}", + // "httpMethod": "GET", + // "id": "vpcaccess.projects.locations.connectors.get", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Required. Name of a Serverless VPC Access connector to get.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/connectors/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1beta1/{+name}", + // "response": { + // "$ref": "Connector" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "vpcaccess.projects.locations.connectors.list": + +type ProjectsLocationsConnectorsListCall struct { + s *Service + parent string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// List: Lists Serverless VPC Access connectors. +// +// - parent: The project and location from which the routes should be +// listed. +func (r *ProjectsLocationsConnectorsService) List(parent string) *ProjectsLocationsConnectorsListCall { + c := &ProjectsLocationsConnectorsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + return c +} + +// PageSize sets the optional parameter "pageSize": Maximum number of +// functions to return per call. +func (c *ProjectsLocationsConnectorsListCall) PageSize(pageSize int64) *ProjectsLocationsConnectorsListCall { + c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) + return c +} + +// PageToken sets the optional parameter "pageToken": Continuation +// token. +func (c *ProjectsLocationsConnectorsListCall) PageToken(pageToken string) *ProjectsLocationsConnectorsListCall { + 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 *ProjectsLocationsConnectorsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsConnectorsListCall { + 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 *ProjectsLocationsConnectorsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsConnectorsListCall { + 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 *ProjectsLocationsConnectorsListCall) Context(ctx context.Context) *ProjectsLocationsConnectorsListCall { + 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 *ProjectsLocationsConnectorsListCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsConnectorsListCall) 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, "v1beta1/{+parent}/connectors") + 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 "vpcaccess.projects.locations.connectors.list" call. +// Exactly one of *ListConnectorsResponse or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *ListConnectorsResponse.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 *ProjectsLocationsConnectorsListCall) Do(opts ...googleapi.CallOption) (*ListConnectorsResponse, 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 := &ListConnectorsResponse{ + 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 Serverless VPC Access connectors.", + // "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/connectors", + // "httpMethod": "GET", + // "id": "vpcaccess.projects.locations.connectors.list", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "pageSize": { + // "description": "Maximum number of functions to return per call.", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "pageToken": { + // "description": "Continuation token.", + // "location": "query", + // "type": "string" + // }, + // "parent": { + // "description": "Required. The project and location from which the routes should be listed.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1beta1/{+parent}/connectors", + // "response": { + // "$ref": "ListConnectorsResponse" + // }, + // "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 *ProjectsLocationsConnectorsListCall) Pages(ctx context.Context, f func(*ListConnectorsResponse) 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 "vpcaccess.projects.locations.connectors.patch": + +type ProjectsLocationsConnectorsPatchCall struct { + s *Service + name string + connector *Connector + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Patch: Updates a Serverless VPC Access connector, returns an +// operation. +// +// - name: The resource name in the format +// `projects/*/locations/*/connectors/*`. +func (r *ProjectsLocationsConnectorsService) Patch(name string, connector *Connector) *ProjectsLocationsConnectorsPatchCall { + c := &ProjectsLocationsConnectorsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + c.connector = connector + return c +} + +// UpdateMask sets the optional parameter "updateMask": The fields to +// update on the entry group. If absent or empty, all modifiable fields +// are updated. +func (c *ProjectsLocationsConnectorsPatchCall) UpdateMask(updateMask string) *ProjectsLocationsConnectorsPatchCall { + 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 *ProjectsLocationsConnectorsPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsConnectorsPatchCall { + 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 *ProjectsLocationsConnectorsPatchCall) Context(ctx context.Context) *ProjectsLocationsConnectorsPatchCall { + 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 *ProjectsLocationsConnectorsPatchCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsConnectorsPatchCall) 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.connector) + 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, "v1beta1/{+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 "vpcaccess.projects.locations.connectors.patch" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.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 *ProjectsLocationsConnectorsPatchCall) Do(opts ...googleapi.CallOption) (*Operation, 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 := &Operation{ + 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 Serverless VPC Access connector, returns an operation.", + // "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/connectors/{connectorsId}", + // "httpMethod": "PATCH", + // "id": "vpcaccess.projects.locations.connectors.patch", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "The resource name in the format `projects/*/locations/*/connectors/*`.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/connectors/[^/]+$", + // "required": true, + // "type": "string" + // }, + // "updateMask": { + // "description": "The fields to update on the entry group. If absent or empty, all modifiable fields are updated.", + // "format": "google-fieldmask", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "v1beta1/{+name}", + // "request": { + // "$ref": "Connector" + // }, + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "vpcaccess.projects.locations.operations.get": + +type ProjectsLocationsOperationsGetCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Gets the latest state of a long-running operation. Clients can +// use this method to poll the operation result at intervals as +// recommended by the API service. +// +// - name: The name of the operation resource. +func (r *ProjectsLocationsOperationsService) Get(name string) *ProjectsLocationsOperationsGetCall { + c := &ProjectsLocationsOperationsGetCall{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 *ProjectsLocationsOperationsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsOperationsGetCall { + 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 *ProjectsLocationsOperationsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsOperationsGetCall { + 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 *ProjectsLocationsOperationsGetCall) Context(ctx context.Context) *ProjectsLocationsOperationsGetCall { + 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 *ProjectsLocationsOperationsGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsOperationsGetCall) 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, "v1beta1/{+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 "vpcaccess.projects.locations.operations.get" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.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 *ProjectsLocationsOperationsGetCall) Do(opts ...googleapi.CallOption) (*Operation, 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 := &Operation{ + 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 latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.", + // "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}", + // "httpMethod": "GET", + // "id": "vpcaccess.projects.locations.operations.get", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "The name of the operation resource.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1beta1/{+name}", + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "vpcaccess.projects.locations.operations.list": + +type ProjectsLocationsOperationsListCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// List: Lists operations that match the specified filter in the +// request. If the server doesn't support this method, it returns +// `UNIMPLEMENTED`. NOTE: the `name` binding allows API services to +// override the binding to use different resource name schemes, such as +// `users/*/operations`. To override the binding, API services can add a +// binding such as "/v1/{name=users/*}/operations" to their service +// configuration. For backwards compatibility, the default name includes +// the operations collection id, however overriding users must ensure +// the name binding is the parent resource, without the operations +// collection id. +// +// - name: The name of the operation's parent resource. +func (r *ProjectsLocationsOperationsService) List(name string) *ProjectsLocationsOperationsListCall { + c := &ProjectsLocationsOperationsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// Filter sets the optional parameter "filter": The standard list +// filter. +func (c *ProjectsLocationsOperationsListCall) Filter(filter string) *ProjectsLocationsOperationsListCall { + c.urlParams_.Set("filter", filter) + return c +} + +// PageSize sets the optional parameter "pageSize": The standard list +// page size. +func (c *ProjectsLocationsOperationsListCall) PageSize(pageSize int64) *ProjectsLocationsOperationsListCall { + c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) + return c +} + +// PageToken sets the optional parameter "pageToken": The standard list +// page token. +func (c *ProjectsLocationsOperationsListCall) PageToken(pageToken string) *ProjectsLocationsOperationsListCall { + 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 *ProjectsLocationsOperationsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsOperationsListCall { + 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 *ProjectsLocationsOperationsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsOperationsListCall { + 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 *ProjectsLocationsOperationsListCall) Context(ctx context.Context) *ProjectsLocationsOperationsListCall { + 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 *ProjectsLocationsOperationsListCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsOperationsListCall) 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, "v1beta1/{+name}/operations") + 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 "vpcaccess.projects.locations.operations.list" call. +// Exactly one of *ListOperationsResponse or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *ListOperationsResponse.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 *ProjectsLocationsOperationsListCall) Do(opts ...googleapi.CallOption) (*ListOperationsResponse, 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 := &ListOperationsResponse{ + 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 operations that match the specified filter in the request. If the server doesn't support this method, it returns `UNIMPLEMENTED`. NOTE: the `name` binding allows API services to override the binding to use different resource name schemes, such as `users/*/operations`. To override the binding, API services can add a binding such as `\"/v1/{name=users/*}/operations\"` to their service configuration. For backwards compatibility, the default name includes the operations collection id, however overriding users must ensure the name binding is the parent resource, without the operations collection id.", + // "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/operations", + // "httpMethod": "GET", + // "id": "vpcaccess.projects.locations.operations.list", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "filter": { + // "description": "The standard list filter.", + // "location": "query", + // "type": "string" + // }, + // "name": { + // "description": "The name of the operation's parent resource.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+$", + // "required": true, + // "type": "string" + // }, + // "pageSize": { + // "description": "The standard list page size.", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "pageToken": { + // "description": "The standard list page token.", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "v1beta1/{+name}/operations", + // "response": { + // "$ref": "ListOperationsResponse" + // }, + // "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 *ProjectsLocationsOperationsListCall) Pages(ctx context.Context, f func(*ListOperationsResponse) 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) + } +}