diff --git a/api-list.json b/api-list.json index 34df019dd92..d8bcd3c5357 100644 --- a/api-list.json +++ b/api-list.json @@ -811,6 +811,21 @@ "documentationLink": "https://code.google.com/apis/books/docs/v1/getting_started.html", "preferred": true }, + { + "kind": "discovery#directoryItem", + "id": "businessprofileperformance:v1", + "name": "businessprofileperformance", + "version": "v1", + "title": "Business Profile Performance API", + "description": "The Business Profile Performance API allows merchants to fetch performance insights about their business profile on Google.", + "discoveryRestUrl": "https://businessprofileperformance.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/my-business/", + "preferred": true + }, { "kind": "discovery#directoryItem", "id": "calendar:v3", diff --git a/apikeys/v2/apikeys-api.json b/apikeys/v2/apikeys-api.json index 4a2f014b932..b92c67c1c8a 100644 --- a/apikeys/v2/apikeys-api.json +++ b/apikeys/v2/apikeys-api.json @@ -344,7 +344,7 @@ "type": "string" }, "updateMask": { - "description": "The field mask specifies which fields to be updated as part of this request. All other fields are ignored. Mutable fields are: `display_name`,`restrictions` and `annotations`. If an update mask is not provided, the service treats it as an implied mask equivalent to all allowed fields that are set on the wire. If the field mask has a special value \"*\", the service treats it equivalent to replace all allowed mutable fields.", + "description": "The field mask specifies which fields to be updated as part of this request. All other fields are ignored. Mutable fields are: `display_name`, `restrictions`, and `annotations`. If an update mask is not provided, the service treats it as an implied mask equivalent to all allowed fields that are set on the wire. If the field mask has a special value \"*\", the service treats it equivalent to replace all allowed mutable fields.", "format": "google-fieldmask", "location": "query", "type": "string" @@ -396,7 +396,7 @@ } } }, - "revision": "20220419", + "revision": "20220530", "rootUrl": "https://apikeys.googleapis.com/", "schemas": { "Operation": { diff --git a/apikeys/v2/apikeys-gen.go b/apikeys/v2/apikeys-gen.go index 3d3f009604a..39b32fd24e0 100644 --- a/apikeys/v2/apikeys-gen.go +++ b/apikeys/v2/apikeys-gen.go @@ -1874,12 +1874,12 @@ func (r *ProjectsLocationsKeysService) Patch(name string, v2key *V2Key) *Project // UpdateMask sets the optional parameter "updateMask": The field mask // specifies which fields to be updated as part of this request. All -// other fields are ignored. Mutable fields are: -// `display_name`,`restrictions` and `annotations`. If an update mask is -// not provided, the service treats it as an implied mask equivalent to -// all allowed fields that are set on the wire. If the field mask has a -// special value "*", the service treats it equivalent to replace all -// allowed mutable fields. +// other fields are ignored. Mutable fields are: `display_name`, +// `restrictions`, and `annotations`. If an update mask is not provided, +// the service treats it as an implied mask equivalent to all allowed +// fields that are set on the wire. If the field mask has a special +// value "*", the service treats it equivalent to replace all allowed +// mutable fields. func (c *ProjectsLocationsKeysPatchCall) UpdateMask(updateMask string) *ProjectsLocationsKeysPatchCall { c.urlParams_.Set("updateMask", updateMask) return c @@ -1992,7 +1992,7 @@ func (c *ProjectsLocationsKeysPatchCall) Do(opts ...googleapi.CallOption) (*Oper // "type": "string" // }, // "updateMask": { - // "description": "The field mask specifies which fields to be updated as part of this request. All other fields are ignored. Mutable fields are: `display_name`,`restrictions` and `annotations`. If an update mask is not provided, the service treats it as an implied mask equivalent to all allowed fields that are set on the wire. If the field mask has a special value \"*\", the service treats it equivalent to replace all allowed mutable fields.", + // "description": "The field mask specifies which fields to be updated as part of this request. All other fields are ignored. Mutable fields are: `display_name`, `restrictions`, and `annotations`. If an update mask is not provided, the service treats it as an implied mask equivalent to all allowed fields that are set on the wire. If the field mask has a special value \"*\", the service treats it equivalent to replace all allowed mutable fields.", // "format": "google-fieldmask", // "location": "query", // "type": "string" diff --git a/baremetalsolution/v2/baremetalsolution-api.json b/baremetalsolution/v2/baremetalsolution-api.json index c6edeb28912..4c13ee25fe2 100644 --- a/baremetalsolution/v2/baremetalsolution-api.json +++ b/baremetalsolution/v2/baremetalsolution-api.json @@ -531,7 +531,7 @@ "type": "string" }, "updateMask": { - "description": "The list of fields to update. The only currently supported fields are: `labels`", + "description": "The list of fields to update. The only currently supported fields are: `labels`, `reservations`", "format": "google-fieldmask", "location": "query", "type": "string" @@ -999,7 +999,7 @@ } } }, - "revision": "20220506", + "revision": "20220524", "rootUrl": "https://baremetalsolution.googleapis.com/", "schemas": { "AllowedClient": { @@ -1072,6 +1072,58 @@ }, "type": "object" }, + "GoogleCloudBaremetalsolutionV2LogicalInterface": { + "description": "Each logical interface represents a logical abstraction of the underlying physical interface (for eg. bond, nic) of the instance. Each logical interface can effectively map to multiple network-IP pairs and still be mapped to one underlying physical interface.", + "id": "GoogleCloudBaremetalsolutionV2LogicalInterface", + "properties": { + "interfaceIndex": { + "description": "The index of the logical interface mapping to the index of the hardware bond or nic on the chosen network template.", + "format": "int32", + "type": "integer" + }, + "logicalNetworkInterfaces": { + "description": "List of logical network interfaces within a logical interface.", + "items": { + "$ref": "LogicalNetworkInterface" + }, + "type": "array" + }, + "name": { + "description": "Interface name. This is of syntax or and forms part of the network template name.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudBaremetalsolutionV2ServerNetworkTemplateLogicalInterface": { + "description": "Logical interface.", + "id": "GoogleCloudBaremetalsolutionV2ServerNetworkTemplateLogicalInterface", + "properties": { + "name": { + "description": "Interface name. This is not a globally unique identifier. Name is unique only inside the ServerNetworkTemplate. This is of syntax or and forms part of the network template name.", + "type": "string" + }, + "required": { + "description": "If true, interface must have network connected.", + "type": "boolean" + }, + "type": { + "description": "Interface type.", + "enum": [ + "INTERFACE_TYPE_UNSPECIFIED", + "BOND", + "NIC" + ], + "enumDescriptions": [ + "Unspecified value.", + "Bond interface type.", + "NIC interface type." + ], + "type": "string" + } + }, + "type": "object" + }, "Instance": { "description": "A server.", "id": "Instance", @@ -1101,6 +1153,13 @@ "description": "Labels as key value pairs.", "type": "object" }, + "logicalInterfaces": { + "description": "List of logical interfaces for the instance. The number of logical interfaces will be the same as number of hardware bond/nic on the chosen network template. For the non-multivlan configurations (for eg, existing servers) that use existing default network template (bondaa-bondaa), both the Instance.networks field and the Instance.logical_interfaces fields will be filled to ensure backward compatibility. For the others, only Instance.logical_interfaces will be filled.", + "items": { + "$ref": "GoogleCloudBaremetalsolutionV2LogicalInterface" + }, + "type": "array" + }, "luns": { "description": "List of LUNs associated with this server.", "items": { @@ -1117,6 +1176,10 @@ "readOnly": true, "type": "string" }, + "networkTemplate": { + "description": "Instance network template name. For eg, bondaa-bondaa, bondab-nic, etc. Generally, the template name follows the syntax of \"bond\" or \"nic\".", + "type": "string" + }, "networks": { "description": "List of networks associated with this server.", "items": { @@ -1167,7 +1230,7 @@ }, "clientNetwork": { "$ref": "NetworkAddress", - "description": "Client network address." + "description": "Client network address. Filled if InstanceConfig.multivlan_config is false." }, "hyperthreading": { "description": "Whether the instance should be provisioned with Hyperthreading enabled.", @@ -1181,18 +1244,43 @@ "description": "Instance type. [Available types](https://cloud.google.com/bare-metal/docs/bms-planning#server_configurations)", "type": "string" }, + "logicalInterfaces": { + "description": "List of logical interfaces for the instance. The number of logical interfaces will be the same as number of hardware bond/nic on the chosen network template. Filled if InstanceConfig.multivlan_config is true.", + "items": { + "$ref": "GoogleCloudBaremetalsolutionV2LogicalInterface" + }, + "type": "array" + }, "name": { "description": "Output only. The name of the instance config.", "readOnly": true, "type": "string" }, + "networkConfig": { + "description": "The type of network configuration on the instance.", + "enum": [ + "NETWORKCONFIG_UNSPECIFIED", + "SINGLE_VLAN", + "MULTI_VLAN" + ], + "enumDescriptions": [ + "The unspecified network configuration.", + "Instance part of single client network and single private network.", + "Instance part of multiple (or single) client networks and private networks." + ], + "type": "string" + }, + "networkTemplate": { + "description": "Server network template name. Filled if InstanceConfig.multivlan_config is true.", + "type": "string" + }, "osImage": { "description": "OS image to initialize the instance. [Available images](https://cloud.google.com/bare-metal/docs/bms-planning#server_configurations)", "type": "string" }, "privateNetwork": { "$ref": "NetworkAddress", - "description": "Private network address, if any." + "description": "Private network address, if any. Filled if InstanceConfig.multivlan_config is false." }, "userNote": { "description": "User note field, it can be used by customers to add additional information for the BMS Ops team .", @@ -1450,29 +1538,37 @@ }, "type": "object" }, - "LogicalInterface": { - "description": "Logical interface.", - "id": "LogicalInterface", + "LogicalNetworkInterface": { + "description": "Each logical network interface is effectively a network and IP pair.", + "id": "LogicalNetworkInterface", "properties": { - "name": { - "description": "Interface name. This is not a globally unique identifier. Name is unique only inside the ServerNetworkTemplate.", + "defaultGateway": { + "description": "Whether this interface is the default gateway for the instance. Only one interface can be the default gateway for the instance.", + "type": "boolean" + }, + "id": { + "description": "An identifier for the `Network`, generated by the backend.", "type": "string" }, - "required": { - "description": "If true, interface must have network connected.", - "type": "boolean" + "ipAddress": { + "description": "IP address in the network", + "type": "string" }, - "type": { - "description": "Interface type.", + "network": { + "description": "Name of the network", + "type": "string" + }, + "networkType": { + "description": "Type of network.", "enum": [ - "INTERFACE_TYPE_UNSPECIFIED", - "BOND", - "NIC" + "TYPE_UNSPECIFIED", + "CLIENT", + "PRIVATE" ], "enumDescriptions": [ "Unspecified value.", - "Bond interface type.", - "NIC interface ytpe." + "Client network, a network peered to a Google Cloud VPC.", + "Private network, a network local to the Bare Metal Solution environment." ], "type": "string" } @@ -1772,7 +1868,7 @@ "type": "string" }, "userNote": { - "description": "User note field, it can be used by customers to add additional information for the BMS Ops team (b/194021617).", + "description": "User note field, it can be used by customers to add additional information for the BMS Ops team .", "type": "string" }, "vlanAttachments": { @@ -2032,7 +2128,7 @@ "type": "string" }, "ticketId": { - "description": "A generated buganizer id to track provisioning request.", + "description": "A generated ticket id to track provisioning request.", "type": "string" }, "updateTime": { @@ -2143,12 +2239,12 @@ "logicalInterfaces": { "description": "Logical interfaces.", "items": { - "$ref": "LogicalInterface" + "$ref": "GoogleCloudBaremetalsolutionV2ServerNetworkTemplateLogicalInterface" }, "type": "array" }, "name": { - "description": "Output only. Template's unique name.", + "description": "Output only. Template's unique name. The full resource name follows the pattern: `projects/{project}/locations/{location}/serverNetworkTemplate/{server_network_template}` Generally, the {server_network_template} follows the syntax of \"bond\" or \"nic\".", "readOnly": true, "type": "string" } @@ -2489,7 +2585,7 @@ "type": "string" }, "userNote": { - "description": "User note field, it can be used by customers to add additional information for the BMS Ops team (b/194021617).", + "description": "User note field, it can be used by customers to add additional information for the BMS Ops team .", "type": "string" } }, diff --git a/baremetalsolution/v2/baremetalsolution-gen.go b/baremetalsolution/v2/baremetalsolution-gen.go index 514d383b328..fc67354951c 100644 --- a/baremetalsolution/v2/baremetalsolution-gen.go +++ b/baremetalsolution/v2/baremetalsolution-gen.go @@ -370,6 +370,90 @@ func (s *FetchInstanceProvisioningSettingsResponse) MarshalJSON() ([]byte, error return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// GoogleCloudBaremetalsolutionV2LogicalInterface: Each logical +// interface represents a logical abstraction of the underlying physical +// interface (for eg. bond, nic) of the instance. Each logical interface +// can effectively map to multiple network-IP pairs and still be mapped +// to one underlying physical interface. +type GoogleCloudBaremetalsolutionV2LogicalInterface struct { + // InterfaceIndex: The index of the logical interface mapping to the + // index of the hardware bond or nic on the chosen network template. + InterfaceIndex int64 `json:"interfaceIndex,omitempty"` + + // LogicalNetworkInterfaces: List of logical network interfaces within a + // logical interface. + LogicalNetworkInterfaces []*LogicalNetworkInterface `json:"logicalNetworkInterfaces,omitempty"` + + // Name: Interface name. This is of syntax or and forms part of the + // network template name. + Name string `json:"name,omitempty"` + + // ForceSendFields is a list of field names (e.g. "InterfaceIndex") 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. "InterfaceIndex") 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 *GoogleCloudBaremetalsolutionV2LogicalInterface) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudBaremetalsolutionV2LogicalInterface + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudBaremetalsolutionV2ServerNetworkTemplateLogicalInterface: +// Logical interface. +type GoogleCloudBaremetalsolutionV2ServerNetworkTemplateLogicalInterface struct { + // Name: Interface name. This is not a globally unique identifier. Name + // is unique only inside the ServerNetworkTemplate. This is of syntax or + // and forms part of the network template name. + Name string `json:"name,omitempty"` + + // Required: If true, interface must have network connected. + Required bool `json:"required,omitempty"` + + // Type: Interface type. + // + // Possible values: + // "INTERFACE_TYPE_UNSPECIFIED" - Unspecified value. + // "BOND" - Bond interface type. + // "NIC" - NIC interface type. + Type string `json:"type,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 *GoogleCloudBaremetalsolutionV2ServerNetworkTemplateLogicalInterface) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudBaremetalsolutionV2ServerNetworkTemplateLogicalInterface + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // Instance: A server. type Instance struct { // CreateTime: Output only. Create a time stamp. @@ -390,6 +474,16 @@ type Instance struct { // Labels: Labels as key value pairs. Labels map[string]string `json:"labels,omitempty"` + // LogicalInterfaces: List of logical interfaces for the instance. The + // number of logical interfaces will be the same as number of hardware + // bond/nic on the chosen network template. For the non-multivlan + // configurations (for eg, existing servers) that use existing default + // network template (bondaa-bondaa), both the Instance.networks field + // and the Instance.logical_interfaces fields will be filled to ensure + // backward compatibility. For the others, only + // Instance.logical_interfaces will be filled. + LogicalInterfaces []*GoogleCloudBaremetalsolutionV2LogicalInterface `json:"logicalInterfaces,omitempty"` + // Luns: List of LUNs associated with this server. Luns []*Lun `json:"luns,omitempty"` @@ -403,6 +497,11 @@ type Instance struct { // `projects/{project}/locations/{location}/instances/{instance}` Name string `json:"name,omitempty"` + // NetworkTemplate: Instance network template name. For eg, + // bondaa-bondaa, bondab-nic, etc. Generally, the template name follows + // the syntax of "bond" or "nic". + NetworkTemplate string `json:"networkTemplate,omitempty"` + // Networks: List of networks associated with this server. Networks []*Network `json:"networks,omitempty"` @@ -459,7 +558,8 @@ type InstanceConfig struct { // projects of the same vendor account. AccountNetworksEnabled bool `json:"accountNetworksEnabled,omitempty"` - // ClientNetwork: Client network address. + // ClientNetwork: Client network address. Filled if + // InstanceConfig.multivlan_config is false. ClientNetwork *NetworkAddress `json:"clientNetwork,omitempty"` // Hyperthreading: Whether the instance should be provisioned with @@ -474,14 +574,36 @@ type InstanceConfig struct { // (https://cloud.google.com/bare-metal/docs/bms-planning#server_configurations) InstanceType string `json:"instanceType,omitempty"` + // LogicalInterfaces: List of logical interfaces for the instance. The + // number of logical interfaces will be the same as number of hardware + // bond/nic on the chosen network template. Filled if + // InstanceConfig.multivlan_config is true. + LogicalInterfaces []*GoogleCloudBaremetalsolutionV2LogicalInterface `json:"logicalInterfaces,omitempty"` + // Name: Output only. The name of the instance config. Name string `json:"name,omitempty"` + // NetworkConfig: The type of network configuration on the instance. + // + // Possible values: + // "NETWORKCONFIG_UNSPECIFIED" - The unspecified network + // configuration. + // "SINGLE_VLAN" - Instance part of single client network and single + // private network. + // "MULTI_VLAN" - Instance part of multiple (or single) client + // networks and private networks. + NetworkConfig string `json:"networkConfig,omitempty"` + + // NetworkTemplate: Server network template name. Filled if + // InstanceConfig.multivlan_config is true. + NetworkTemplate string `json:"networkTemplate,omitempty"` + // OsImage: OS image to initialize the instance. Available images // (https://cloud.google.com/bare-metal/docs/bms-planning#server_configurations) OsImage string `json:"osImage,omitempty"` - // PrivateNetwork: Private network address, if any. + // PrivateNetwork: Private network address, if any. Filled if + // InstanceConfig.multivlan_config is false. PrivateNetwork *NetworkAddress `json:"privateNetwork,omitempty"` // UserNote: User note field, it can be used by customers to add @@ -935,24 +1057,33 @@ func (s *Location) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// LogicalInterface: Logical interface. -type LogicalInterface struct { - // Name: Interface name. This is not a globally unique identifier. Name - // is unique only inside the ServerNetworkTemplate. - Name string `json:"name,omitempty"` +// LogicalNetworkInterface: Each logical network interface is +// effectively a network and IP pair. +type LogicalNetworkInterface struct { + // DefaultGateway: Whether this interface is the default gateway for the + // instance. Only one interface can be the default gateway for the + // instance. + DefaultGateway bool `json:"defaultGateway,omitempty"` - // Required: If true, interface must have network connected. - Required bool `json:"required,omitempty"` + // Id: An identifier for the `Network`, generated by the backend. + Id string `json:"id,omitempty"` - // Type: Interface type. + // IpAddress: IP address in the network + IpAddress string `json:"ipAddress,omitempty"` + + // Network: Name of the network + Network string `json:"network,omitempty"` + + // NetworkType: Type of network. // // Possible values: - // "INTERFACE_TYPE_UNSPECIFIED" - Unspecified value. - // "BOND" - Bond interface type. - // "NIC" - NIC interface ytpe. - Type string `json:"type,omitempty"` + // "TYPE_UNSPECIFIED" - Unspecified value. + // "CLIENT" - Client network, a network peered to a Google Cloud VPC. + // "PRIVATE" - Private network, a network local to the Bare Metal + // Solution environment. + NetworkType string `json:"networkType,omitempty"` - // ForceSendFields is a list of field names (e.g. "Name") to + // ForceSendFields is a list of field names (e.g. "DefaultGateway") 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 @@ -960,17 +1091,18 @@ type LogicalInterface struct { // 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 is a list of field names (e.g. "DefaultGateway") 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 *LogicalInterface) MarshalJSON() ([]byte, error) { - type NoMethod LogicalInterface +func (s *LogicalNetworkInterface) MarshalJSON() ([]byte, error) { + type NoMethod LogicalNetworkInterface raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -1288,7 +1420,7 @@ type NetworkConfig struct { Type string `json:"type,omitempty"` // UserNote: User note field, it can be used by customers to add - // additional information for the BMS Ops team (b/194021617). + // additional information for the BMS Ops team . UserNote string `json:"userNote,omitempty"` // VlanAttachments: List of VLAN attachments. As of now there are always @@ -1611,7 +1743,7 @@ type ProvisioningConfig struct { // "CANCELLED" - ProvisioningConfig was canceled. State string `json:"state,omitempty"` - // TicketId: A generated buganizer id to track provisioning request. + // TicketId: A generated ticket id to track provisioning request. TicketId string `json:"ticketId,omitempty"` // UpdateTime: Output only. Last update timestamp. @@ -1759,9 +1891,13 @@ type ServerNetworkTemplate struct { ApplicableInstanceTypes []string `json:"applicableInstanceTypes,omitempty"` // LogicalInterfaces: Logical interfaces. - LogicalInterfaces []*LogicalInterface `json:"logicalInterfaces,omitempty"` + LogicalInterfaces []*GoogleCloudBaremetalsolutionV2ServerNetworkTemplateLogicalInterface `json:"logicalInterfaces,omitempty"` - // Name: Output only. Template's unique name. + // Name: Output only. Template's unique name. The full resource name + // follows the pattern: + // `projects/{project}/locations/{location}/serverNetworkTemplate/{server + // _network_template}` Generally, the {server_network_template} follows + // the syntax of "bond" or "nic". Name string `json:"name,omitempty"` // ForceSendFields is a list of field names (e.g. @@ -2188,7 +2324,7 @@ type VolumeConfig struct { Type string `json:"type,omitempty"` // UserNote: User note field, it can be used by customers to add - // additional information for the BMS Ops team (b/194021617). + // additional information for the BMS Ops team . UserNote string `json:"userNote,omitempty"` // ForceSendFields is a list of field names (e.g. "GcpService") to @@ -4319,7 +4455,8 @@ func (r *ProjectsLocationsNetworksService) Patch(name string, network *Network) } // UpdateMask sets the optional parameter "updateMask": The list of -// fields to update. The only currently supported fields are: `labels` +// fields to update. The only currently supported fields are: `labels`, +// `reservations` func (c *ProjectsLocationsNetworksPatchCall) UpdateMask(updateMask string) *ProjectsLocationsNetworksPatchCall { c.urlParams_.Set("updateMask", updateMask) return c @@ -4432,7 +4569,7 @@ func (c *ProjectsLocationsNetworksPatchCall) Do(opts ...googleapi.CallOption) (* // "type": "string" // }, // "updateMask": { - // "description": "The list of fields to update. The only currently supported fields are: `labels`", + // "description": "The list of fields to update. The only currently supported fields are: `labels`, `reservations`", // "format": "google-fieldmask", // "location": "query", // "type": "string" diff --git a/businessprofileperformance/v1/businessprofileperformance-api.json b/businessprofileperformance/v1/businessprofileperformance-api.json new file mode 100644 index 00000000000..44be342e316 --- /dev/null +++ b/businessprofileperformance/v1/businessprofileperformance-api.json @@ -0,0 +1,448 @@ +{ + "basePath": "", + "baseUrl": "https://businessprofileperformance.googleapis.com/", + "batchPath": "batch", + "canonicalName": "Business Profile Performance", + "description": "The Business Profile Performance API allows merchants to fetch performance insights about their business profile on Google.", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/my-business/", + "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": "businessprofileperformance:v1", + "kind": "discovery#restDescription", + "mtlsRootUrl": "https://businessprofileperformance.mtls.googleapis.com/", + "name": "businessprofileperformance", + "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": { + "locations": { + "methods": { + "getDailyMetricsTimeSeries": { + "description": " Returns the values for each date from a given time range that are associated with the specific daily metric. Example request: GET https://businessprofileperformance.googleapis.com/v1/locations/12345:getDailyMetricsTimeSeries?dailyMetric=WEBSITE_CLICKS\u0026daily_range.start_date.year=2022\u0026daily_range.start_date.month=1\u0026daily_range.start_date.day=1\u0026daily_range.end_date.year=2022\u0026daily_range.end_date.month=3\u0026daily_range.end_date.day=31", + "flatPath": "v1/locations/{locationsId}:getDailyMetricsTimeSeries", + "httpMethod": "GET", + "id": "businessprofileperformance.locations.getDailyMetricsTimeSeries", + "parameterOrder": [ + "name" + ], + "parameters": { + "dailyMetric": { + "description": "Required. The metric to retrieve time series.", + "enum": [ + "DAILY_METRIC_UNKNOWN", + "BUSINESS_IMPRESSIONS_DESKTOP_MAPS", + "BUSINESS_IMPRESSIONS_DESKTOP_SEARCH", + "BUSINESS_IMPRESSIONS_MOBILE_MAPS", + "BUSINESS_IMPRESSIONS_MOBILE_SEARCH", + "BUSINESS_CONVERSATIONS", + "BUSINESS_DIRECTION_REQUESTS", + "CALL_CLICKS", + "WEBSITE_CLICKS", + "BUSINESS_BOOKINGS", + "BUSINESS_FOOD_ORDERS" + ], + "enumDescriptions": [ + "Represents the default unknown value.", + "Business impressions on Google Maps on Desktop devices. Multiple impressions by a unique user within a single day are counted as a single impression.", + "Business impressions on Google Search on Desktop devices. Multiple impressions by a unique user within a single day are counted as a single impression.", + "Business impressions on Google Maps on Mobile devices. Multiple impressions by a unique user within a single day are counted as a single impression.", + "Business impressions on Google Search on Mobile devices. Multiple impressions by a unique user within a single day are counted as a single impression.", + "The number of message conversations received on the business profile.", + "The number of times a direction request was requested to the business location.", + "The number of times the business profile call button was clicked.", + "The number of times the business profile website was clicked.", + "The number of bookings received from the business profile.", + "The number of food orders received from the business profile." + ], + "location": "query", + "type": "string" + }, + "dailyRange.endDate.day": { + "description": "Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "dailyRange.endDate.month": { + "description": "Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "dailyRange.endDate.year": { + "description": "Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "dailyRange.startDate.day": { + "description": "Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "dailyRange.startDate.month": { + "description": "Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "dailyRange.startDate.year": { + "description": "Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "dailySubEntityType.dayOfWeek": { + "description": "Represents the day of the week. Eg: MONDAY.", + "enum": [ + "DAY_OF_WEEK_UNSPECIFIED", + "MONDAY", + "TUESDAY", + "WEDNESDAY", + "THURSDAY", + "FRIDAY", + "SATURDAY", + "SUNDAY" + ], + "enumDescriptions": [ + "The day of the week is unspecified.", + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday", + "Saturday", + "Sunday" + ], + "location": "query", + "type": "string" + }, + "dailySubEntityType.timeOfDay.hours": { + "description": "Hours of day in 24 hour format. Should be from 0 to 23. An API may choose to allow the value \"24:00:00\" for scenarios like business closing time.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "dailySubEntityType.timeOfDay.minutes": { + "description": "Minutes of hour of day. Must be from 0 to 59.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "dailySubEntityType.timeOfDay.nanos": { + "description": "Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "dailySubEntityType.timeOfDay.seconds": { + "description": "Seconds of minutes of the time. Must normally be from 0 to 59. An API may allow the value 60 if it allows leap-seconds.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "name": { + "description": "Required. The location for which the time series should be fetched. Format: locations/{location_id} where location_id is an unobfuscated listing id.", + "location": "path", + "pattern": "^locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:getDailyMetricsTimeSeries", + "response": { + "$ref": "GetDailyMetricsTimeSeriesResponse" + } + } + }, + "resources": { + "searchkeywords": { + "resources": { + "impressions": { + "resources": { + "monthly": { + "methods": { + "list": { + "description": "Returns the search keywords used to find a business in search or maps. Each search keyword is accompanied by impressions which are aggregated on a monthly basis. Example request: GET https://businessprofileperformance.googleapis.com/v1/locations/12345/searchkeywords/impressions/monthly?monthly_range.start_month.year=2022\u0026monthly_range.start_month.month=1\u0026monthly_range.end_month.year=2022\u0026monthly_range.end_month.month=3", + "flatPath": "v1/locations/{locationsId}/searchkeywords/impressions/monthly", + "httpMethod": "GET", + "id": "businessprofileperformance.locations.searchkeywords.impressions.monthly.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "monthlyRange.endMonth.day": { + "description": "Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "monthlyRange.endMonth.month": { + "description": "Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "monthlyRange.endMonth.year": { + "description": "Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "monthlyRange.startMonth.day": { + "description": "Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "monthlyRange.startMonth.month": { + "description": "Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "monthlyRange.startMonth.year": { + "description": "Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageSize": { + "description": "Optional. The number of results requested. The default page size is 100. Page size can be set to a maximum of 100.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. A token indicating the next paginated result to be returned.", + "format": "byte", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The location for which the time series should be fetched. Format: locations/{location_id} where location_id is an unobfuscated listing id.", + "location": "path", + "pattern": "^locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/searchkeywords/impressions/monthly", + "response": { + "$ref": "ListSearchKeywordImpressionsMonthlyResponse" + } + } + } + } + } + } + } + } + } + } + }, + "revision": "20220531", + "rootUrl": "https://businessprofileperformance.googleapis.com/", + "schemas": { + "Date": { + "description": "Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp", + "id": "Date", + "properties": { + "day": { + "description": "Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.", + "format": "int32", + "type": "integer" + }, + "month": { + "description": "Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.", + "format": "int32", + "type": "integer" + }, + "year": { + "description": "Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "DatedValue": { + "description": "Represents a single datapoint in the timeseries, where each datapoint is a date-value pair.", + "id": "DatedValue", + "properties": { + "date": { + "$ref": "Date", + "description": "The date that the datapoint corresponds to. This represents a month value if the day field is not set." + }, + "value": { + "description": "The value of the datapoint.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "GetDailyMetricsTimeSeriesResponse": { + "description": "Represents the response for GetDailyMetricsTimeSeries.", + "id": "GetDailyMetricsTimeSeriesResponse", + "properties": { + "timeSeries": { + "$ref": "TimeSeries", + "description": "The daily time series." + } + }, + "type": "object" + }, + "InsightsValue": { + "description": "Represents an insights value.", + "id": "InsightsValue", + "properties": { + "threshold": { + "description": "Represents the threshold below which the actual value falls.", + "format": "int64", + "type": "string" + }, + "value": { + "description": "Represents the actual value.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "ListSearchKeywordImpressionsMonthlyResponse": { + "description": "Represents the response for ListSearchKeywordImpressionsMonthly.", + "id": "ListSearchKeywordImpressionsMonthlyResponse", + "properties": { + "nextPageToken": { + "description": "A token indicating the last paginated result returned. This can be used by succeeding requests to get the next \"page\" of keywords. It will only be present when there are more results to be returned.", + "format": "byte", + "type": "string" + }, + "searchKeywordsCounts": { + "description": "Search terms which have been used to find a business.", + "items": { + "$ref": "SearchKeywordCount" + }, + "type": "array" + } + }, + "type": "object" + }, + "SearchKeywordCount": { + "description": "Represents a single search keyword and its value.", + "id": "SearchKeywordCount", + "properties": { + "insightsValue": { + "$ref": "InsightsValue", + "description": "One of either: 1) The sum of the number of unique users that used the keyword in a month, aggregated for each month requested. 2) A threshold that indicates that the actual value is below this threshold." + }, + "searchKeyword": { + "description": "The lower-cased string that the user entered.", + "type": "string" + } + }, + "type": "object" + }, + "TimeSeries": { + "description": "Represents a timeseries.", + "id": "TimeSeries", + "properties": { + "datedValues": { + "description": "List of datapoints in the timeseries, where each datapoint is a date-value pair.", + "items": { + "$ref": "DatedValue" + }, + "type": "array" + } + }, + "type": "object" + } + }, + "servicePath": "", + "title": "Business Profile Performance API", + "version": "v1", + "version_module": true +} \ No newline at end of file diff --git a/businessprofileperformance/v1/businessprofileperformance-gen.go b/businessprofileperformance/v1/businessprofileperformance-gen.go new file mode 100644 index 00000000000..3bb252ed612 --- /dev/null +++ b/businessprofileperformance/v1/businessprofileperformance-gen.go @@ -0,0 +1,1104 @@ +// Copyright 2022 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 businessprofileperformance provides access to the Business Profile Performance API. +// +// For product documentation, see: https://developers.google.com/my-business/ +// +// Creating a client +// +// Usage example: +// +// import "google.golang.org/api/businessprofileperformance/v1" +// ... +// ctx := context.Background() +// businessprofileperformanceService, err := businessprofileperformance.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: +// +// businessprofileperformanceService, err := businessprofileperformance.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, ...) +// businessprofileperformanceService, err := businessprofileperformance.NewService(ctx, option.WithTokenSource(config.TokenSource(ctx, token))) +// +// See https://godoc.org/google.golang.org/api/option/ for details on options. +package businessprofileperformance // import "google.golang.org/api/businessprofileperformance/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 = "businessprofileperformance:v1" +const apiName = "businessprofileperformance" +const apiVersion = "v1" +const basePath = "https://businessprofileperformance.googleapis.com/" +const mtlsBasePath = "https://businessprofileperformance.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.Locations = NewLocationsService(s) + return s, nil +} + +type Service struct { + client *http.Client + BasePath string // API endpoint base URL + UserAgent string // optional additional User-Agent fragment + + Locations *LocationsService +} + +func (s *Service) userAgent() string { + if s.UserAgent == "" { + return googleapi.UserAgent + } + return googleapi.UserAgent + " " + s.UserAgent +} + +func NewLocationsService(s *Service) *LocationsService { + rs := &LocationsService{s: s} + rs.Searchkeywords = NewLocationsSearchkeywordsService(s) + return rs +} + +type LocationsService struct { + s *Service + + Searchkeywords *LocationsSearchkeywordsService +} + +func NewLocationsSearchkeywordsService(s *Service) *LocationsSearchkeywordsService { + rs := &LocationsSearchkeywordsService{s: s} + rs.Impressions = NewLocationsSearchkeywordsImpressionsService(s) + return rs +} + +type LocationsSearchkeywordsService struct { + s *Service + + Impressions *LocationsSearchkeywordsImpressionsService +} + +func NewLocationsSearchkeywordsImpressionsService(s *Service) *LocationsSearchkeywordsImpressionsService { + rs := &LocationsSearchkeywordsImpressionsService{s: s} + rs.Monthly = NewLocationsSearchkeywordsImpressionsMonthlyService(s) + return rs +} + +type LocationsSearchkeywordsImpressionsService struct { + s *Service + + Monthly *LocationsSearchkeywordsImpressionsMonthlyService +} + +func NewLocationsSearchkeywordsImpressionsMonthlyService(s *Service) *LocationsSearchkeywordsImpressionsMonthlyService { + rs := &LocationsSearchkeywordsImpressionsMonthlyService{s: s} + return rs +} + +type LocationsSearchkeywordsImpressionsMonthlyService struct { + s *Service +} + +// Date: Represents a whole or partial calendar date, such as a +// birthday. The time of day and time zone are either specified +// elsewhere or are insignificant. The date is relative to the Gregorian +// Calendar. This can represent one of the following: * A full date, +// with non-zero year, month, and day values. * A month and day, with a +// zero year (for example, an anniversary). * A year on its own, with a +// zero month and a zero day. * A year and month, with a zero day (for +// example, a credit card expiration date). Related types: * +// google.type.TimeOfDay * google.type.DateTime * +// google.protobuf.Timestamp +type Date struct { + // Day: Day of a month. Must be from 1 to 31 and valid for the year and + // month, or 0 to specify a year by itself or a year and month where the + // day isn't significant. + Day int64 `json:"day,omitempty"` + + // Month: Month of a year. Must be from 1 to 12, or 0 to specify a year + // without a month and day. + Month int64 `json:"month,omitempty"` + + // Year: Year of the date. Must be from 1 to 9999, or 0 to specify a + // date without a year. + Year int64 `json:"year,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Day") 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. "Day") 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 *Date) MarshalJSON() ([]byte, error) { + type NoMethod Date + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// DatedValue: Represents a single datapoint in the timeseries, where +// each datapoint is a date-value pair. +type DatedValue struct { + // Date: The date that the datapoint corresponds to. This represents a + // month value if the day field is not set. + Date *Date `json:"date,omitempty"` + + // Value: The value of the datapoint. + Value int64 `json:"value,omitempty,string"` + + // ForceSendFields is a list of field names (e.g. "Date") 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. "Date") 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 *DatedValue) MarshalJSON() ([]byte, error) { + type NoMethod DatedValue + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GetDailyMetricsTimeSeriesResponse: Represents the response for +// GetDailyMetricsTimeSeries. +type GetDailyMetricsTimeSeriesResponse struct { + // TimeSeries: The daily time series. + TimeSeries *TimeSeries `json:"timeSeries,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "TimeSeries") 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. "TimeSeries") 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 *GetDailyMetricsTimeSeriesResponse) MarshalJSON() ([]byte, error) { + type NoMethod GetDailyMetricsTimeSeriesResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// InsightsValue: Represents an insights value. +type InsightsValue struct { + // Threshold: Represents the threshold below which the actual value + // falls. + Threshold int64 `json:"threshold,omitempty,string"` + + // Value: Represents the actual value. + Value int64 `json:"value,omitempty,string"` + + // ForceSendFields is a list of field names (e.g. "Threshold") 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. "Threshold") 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 *InsightsValue) MarshalJSON() ([]byte, error) { + type NoMethod InsightsValue + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// ListSearchKeywordImpressionsMonthlyResponse: Represents the response +// for ListSearchKeywordImpressionsMonthly. +type ListSearchKeywordImpressionsMonthlyResponse struct { + // NextPageToken: A token indicating the last paginated result returned. + // This can be used by succeeding requests to get the next "page" of + // keywords. It will only be present when there are more results to be + // returned. + NextPageToken string `json:"nextPageToken,omitempty"` + + // SearchKeywordsCounts: Search terms which have been used to find a + // business. + SearchKeywordsCounts []*SearchKeywordCount `json:"searchKeywordsCounts,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 *ListSearchKeywordImpressionsMonthlyResponse) MarshalJSON() ([]byte, error) { + type NoMethod ListSearchKeywordImpressionsMonthlyResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// SearchKeywordCount: Represents a single search keyword and its value. +type SearchKeywordCount struct { + // InsightsValue: One of either: 1) The sum of the number of unique + // users that used the keyword in a month, aggregated for each month + // requested. 2) A threshold that indicates that the actual value is + // below this threshold. + InsightsValue *InsightsValue `json:"insightsValue,omitempty"` + + // SearchKeyword: The lower-cased string that the user entered. + SearchKeyword string `json:"searchKeyword,omitempty"` + + // ForceSendFields is a list of field names (e.g. "InsightsValue") 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. "InsightsValue") 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 *SearchKeywordCount) MarshalJSON() ([]byte, error) { + type NoMethod SearchKeywordCount + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// TimeSeries: Represents a timeseries. +type TimeSeries struct { + // DatedValues: List of datapoints in the timeseries, where each + // datapoint is a date-value pair. + DatedValues []*DatedValue `json:"datedValues,omitempty"` + + // ForceSendFields is a list of field names (e.g. "DatedValues") 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. "DatedValues") 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 *TimeSeries) MarshalJSON() ([]byte, error) { + type NoMethod TimeSeries + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// method id "businessprofileperformance.locations.getDailyMetricsTimeSeries": + +type LocationsGetDailyMetricsTimeSeriesCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// GetDailyMetricsTimeSeries: Returns the values for each date from a +// given time range that are associated with the specific daily metric. +// Example request: GET +// https://businessprofileperformance.googleapis.com/v1/locations/12345:getDailyMetricsTimeSeries?dailyMetric=WEBSITE_CLICKS&daily_range.start_date.year=2022&daily_range.start_date.month=1&daily_range.start_date.day=1&daily_range.end_date.year=2022&daily_range.end_date.month=3&daily_range.end_date.day=31 +// +// - name: The location for which the time series should be fetched. +// Format: locations/{location_id} where location_id is an +// unobfuscated listing id. +func (r *LocationsService) GetDailyMetricsTimeSeries(name string) *LocationsGetDailyMetricsTimeSeriesCall { + c := &LocationsGetDailyMetricsTimeSeriesCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// DailyMetric sets the optional parameter "dailyMetric": Required. The +// metric to retrieve time series. +// +// Possible values: +// "DAILY_METRIC_UNKNOWN" - Represents the default unknown value. +// "BUSINESS_IMPRESSIONS_DESKTOP_MAPS" - Business impressions on +// Google Maps on Desktop devices. Multiple impressions by a unique user +// within a single day are counted as a single impression. +// "BUSINESS_IMPRESSIONS_DESKTOP_SEARCH" - Business impressions on +// Google Search on Desktop devices. Multiple impressions by a unique +// user within a single day are counted as a single impression. +// "BUSINESS_IMPRESSIONS_MOBILE_MAPS" - Business impressions on Google +// Maps on Mobile devices. Multiple impressions by a unique user within +// a single day are counted as a single impression. +// "BUSINESS_IMPRESSIONS_MOBILE_SEARCH" - Business impressions on +// Google Search on Mobile devices. Multiple impressions by a unique +// user within a single day are counted as a single impression. +// "BUSINESS_CONVERSATIONS" - The number of message conversations +// received on the business profile. +// "BUSINESS_DIRECTION_REQUESTS" - The number of times a direction +// request was requested to the business location. +// "CALL_CLICKS" - The number of times the business profile call +// button was clicked. +// "WEBSITE_CLICKS" - The number of times the business profile website +// was clicked. +// "BUSINESS_BOOKINGS" - The number of bookings received from the +// business profile. +// "BUSINESS_FOOD_ORDERS" - The number of food orders received from +// the business profile. +func (c *LocationsGetDailyMetricsTimeSeriesCall) DailyMetric(dailyMetric string) *LocationsGetDailyMetricsTimeSeriesCall { + c.urlParams_.Set("dailyMetric", dailyMetric) + return c +} + +// DailyRangeEndDateDay sets the optional parameter +// "dailyRange.endDate.day": Day of a month. Must be from 1 to 31 and +// valid for the year and month, or 0 to specify a year by itself or a +// year and month where the day isn't significant. +func (c *LocationsGetDailyMetricsTimeSeriesCall) DailyRangeEndDateDay(dailyRangeEndDateDay int64) *LocationsGetDailyMetricsTimeSeriesCall { + c.urlParams_.Set("dailyRange.endDate.day", fmt.Sprint(dailyRangeEndDateDay)) + return c +} + +// DailyRangeEndDateMonth sets the optional parameter +// "dailyRange.endDate.month": Month of a year. Must be from 1 to 12, or +// 0 to specify a year without a month and day. +func (c *LocationsGetDailyMetricsTimeSeriesCall) DailyRangeEndDateMonth(dailyRangeEndDateMonth int64) *LocationsGetDailyMetricsTimeSeriesCall { + c.urlParams_.Set("dailyRange.endDate.month", fmt.Sprint(dailyRangeEndDateMonth)) + return c +} + +// DailyRangeEndDateYear sets the optional parameter +// "dailyRange.endDate.year": Year of the date. Must be from 1 to 9999, +// or 0 to specify a date without a year. +func (c *LocationsGetDailyMetricsTimeSeriesCall) DailyRangeEndDateYear(dailyRangeEndDateYear int64) *LocationsGetDailyMetricsTimeSeriesCall { + c.urlParams_.Set("dailyRange.endDate.year", fmt.Sprint(dailyRangeEndDateYear)) + return c +} + +// DailyRangeStartDateDay sets the optional parameter +// "dailyRange.startDate.day": Day of a month. Must be from 1 to 31 and +// valid for the year and month, or 0 to specify a year by itself or a +// year and month where the day isn't significant. +func (c *LocationsGetDailyMetricsTimeSeriesCall) DailyRangeStartDateDay(dailyRangeStartDateDay int64) *LocationsGetDailyMetricsTimeSeriesCall { + c.urlParams_.Set("dailyRange.startDate.day", fmt.Sprint(dailyRangeStartDateDay)) + return c +} + +// DailyRangeStartDateMonth sets the optional parameter +// "dailyRange.startDate.month": Month of a year. Must be from 1 to 12, +// or 0 to specify a year without a month and day. +func (c *LocationsGetDailyMetricsTimeSeriesCall) DailyRangeStartDateMonth(dailyRangeStartDateMonth int64) *LocationsGetDailyMetricsTimeSeriesCall { + c.urlParams_.Set("dailyRange.startDate.month", fmt.Sprint(dailyRangeStartDateMonth)) + return c +} + +// DailyRangeStartDateYear sets the optional parameter +// "dailyRange.startDate.year": Year of the date. Must be from 1 to +// 9999, or 0 to specify a date without a year. +func (c *LocationsGetDailyMetricsTimeSeriesCall) DailyRangeStartDateYear(dailyRangeStartDateYear int64) *LocationsGetDailyMetricsTimeSeriesCall { + c.urlParams_.Set("dailyRange.startDate.year", fmt.Sprint(dailyRangeStartDateYear)) + return c +} + +// DailySubEntityTypeDayOfWeek sets the optional parameter +// "dailySubEntityType.dayOfWeek": Represents the day of the week. Eg: +// MONDAY. +// +// Possible values: +// "DAY_OF_WEEK_UNSPECIFIED" - The day of the week is unspecified. +// "MONDAY" - Monday +// "TUESDAY" - Tuesday +// "WEDNESDAY" - Wednesday +// "THURSDAY" - Thursday +// "FRIDAY" - Friday +// "SATURDAY" - Saturday +// "SUNDAY" - Sunday +func (c *LocationsGetDailyMetricsTimeSeriesCall) DailySubEntityTypeDayOfWeek(dailySubEntityTypeDayOfWeek string) *LocationsGetDailyMetricsTimeSeriesCall { + c.urlParams_.Set("dailySubEntityType.dayOfWeek", dailySubEntityTypeDayOfWeek) + return c +} + +// DailySubEntityTypeTimeOfDayHours sets the optional parameter +// "dailySubEntityType.timeOfDay.hours": Hours of day in 24 hour format. +// Should be from 0 to 23. An API may choose to allow the value +// "24:00:00" for scenarios like business closing time. +func (c *LocationsGetDailyMetricsTimeSeriesCall) DailySubEntityTypeTimeOfDayHours(dailySubEntityTypeTimeOfDayHours int64) *LocationsGetDailyMetricsTimeSeriesCall { + c.urlParams_.Set("dailySubEntityType.timeOfDay.hours", fmt.Sprint(dailySubEntityTypeTimeOfDayHours)) + return c +} + +// DailySubEntityTypeTimeOfDayMinutes sets the optional parameter +// "dailySubEntityType.timeOfDay.minutes": Minutes of hour of day. Must +// be from 0 to 59. +func (c *LocationsGetDailyMetricsTimeSeriesCall) DailySubEntityTypeTimeOfDayMinutes(dailySubEntityTypeTimeOfDayMinutes int64) *LocationsGetDailyMetricsTimeSeriesCall { + c.urlParams_.Set("dailySubEntityType.timeOfDay.minutes", fmt.Sprint(dailySubEntityTypeTimeOfDayMinutes)) + return c +} + +// DailySubEntityTypeTimeOfDayNanos sets the optional parameter +// "dailySubEntityType.timeOfDay.nanos": Fractions of seconds in +// nanoseconds. Must be from 0 to 999,999,999. +func (c *LocationsGetDailyMetricsTimeSeriesCall) DailySubEntityTypeTimeOfDayNanos(dailySubEntityTypeTimeOfDayNanos int64) *LocationsGetDailyMetricsTimeSeriesCall { + c.urlParams_.Set("dailySubEntityType.timeOfDay.nanos", fmt.Sprint(dailySubEntityTypeTimeOfDayNanos)) + return c +} + +// DailySubEntityTypeTimeOfDaySeconds sets the optional parameter +// "dailySubEntityType.timeOfDay.seconds": Seconds of minutes of the +// time. Must normally be from 0 to 59. An API may allow the value 60 if +// it allows leap-seconds. +func (c *LocationsGetDailyMetricsTimeSeriesCall) DailySubEntityTypeTimeOfDaySeconds(dailySubEntityTypeTimeOfDaySeconds int64) *LocationsGetDailyMetricsTimeSeriesCall { + c.urlParams_.Set("dailySubEntityType.timeOfDay.seconds", fmt.Sprint(dailySubEntityTypeTimeOfDaySeconds)) + 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 *LocationsGetDailyMetricsTimeSeriesCall) Fields(s ...googleapi.Field) *LocationsGetDailyMetricsTimeSeriesCall { + 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 *LocationsGetDailyMetricsTimeSeriesCall) IfNoneMatch(entityTag string) *LocationsGetDailyMetricsTimeSeriesCall { + 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 *LocationsGetDailyMetricsTimeSeriesCall) Context(ctx context.Context) *LocationsGetDailyMetricsTimeSeriesCall { + 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 *LocationsGetDailyMetricsTimeSeriesCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *LocationsGetDailyMetricsTimeSeriesCall) 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}:getDailyMetricsTimeSeries") + 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 "businessprofileperformance.locations.getDailyMetricsTimeSeries" call. +// Exactly one of *GetDailyMetricsTimeSeriesResponse or error will be +// non-nil. Any non-2xx status code is an error. Response headers are in +// either *GetDailyMetricsTimeSeriesResponse.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 *LocationsGetDailyMetricsTimeSeriesCall) Do(opts ...googleapi.CallOption) (*GetDailyMetricsTimeSeriesResponse, 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, &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, err + } + ret := &GetDailyMetricsTimeSeriesResponse{ + 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 the values for each date from a given time range that are associated with the specific daily metric. Example request: GET https://businessprofileperformance.googleapis.com/v1/locations/12345:getDailyMetricsTimeSeries?dailyMetric=WEBSITE_CLICKS\u0026daily_range.start_date.year=2022\u0026daily_range.start_date.month=1\u0026daily_range.start_date.day=1\u0026daily_range.end_date.year=2022\u0026daily_range.end_date.month=3\u0026daily_range.end_date.day=31", + // "flatPath": "v1/locations/{locationsId}:getDailyMetricsTimeSeries", + // "httpMethod": "GET", + // "id": "businessprofileperformance.locations.getDailyMetricsTimeSeries", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "dailyMetric": { + // "description": "Required. The metric to retrieve time series.", + // "enum": [ + // "DAILY_METRIC_UNKNOWN", + // "BUSINESS_IMPRESSIONS_DESKTOP_MAPS", + // "BUSINESS_IMPRESSIONS_DESKTOP_SEARCH", + // "BUSINESS_IMPRESSIONS_MOBILE_MAPS", + // "BUSINESS_IMPRESSIONS_MOBILE_SEARCH", + // "BUSINESS_CONVERSATIONS", + // "BUSINESS_DIRECTION_REQUESTS", + // "CALL_CLICKS", + // "WEBSITE_CLICKS", + // "BUSINESS_BOOKINGS", + // "BUSINESS_FOOD_ORDERS" + // ], + // "enumDescriptions": [ + // "Represents the default unknown value.", + // "Business impressions on Google Maps on Desktop devices. Multiple impressions by a unique user within a single day are counted as a single impression.", + // "Business impressions on Google Search on Desktop devices. Multiple impressions by a unique user within a single day are counted as a single impression.", + // "Business impressions on Google Maps on Mobile devices. Multiple impressions by a unique user within a single day are counted as a single impression.", + // "Business impressions on Google Search on Mobile devices. Multiple impressions by a unique user within a single day are counted as a single impression.", + // "The number of message conversations received on the business profile.", + // "The number of times a direction request was requested to the business location.", + // "The number of times the business profile call button was clicked.", + // "The number of times the business profile website was clicked.", + // "The number of bookings received from the business profile.", + // "The number of food orders received from the business profile." + // ], + // "location": "query", + // "type": "string" + // }, + // "dailyRange.endDate.day": { + // "description": "Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "dailyRange.endDate.month": { + // "description": "Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "dailyRange.endDate.year": { + // "description": "Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "dailyRange.startDate.day": { + // "description": "Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "dailyRange.startDate.month": { + // "description": "Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "dailyRange.startDate.year": { + // "description": "Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "dailySubEntityType.dayOfWeek": { + // "description": "Represents the day of the week. Eg: MONDAY.", + // "enum": [ + // "DAY_OF_WEEK_UNSPECIFIED", + // "MONDAY", + // "TUESDAY", + // "WEDNESDAY", + // "THURSDAY", + // "FRIDAY", + // "SATURDAY", + // "SUNDAY" + // ], + // "enumDescriptions": [ + // "The day of the week is unspecified.", + // "Monday", + // "Tuesday", + // "Wednesday", + // "Thursday", + // "Friday", + // "Saturday", + // "Sunday" + // ], + // "location": "query", + // "type": "string" + // }, + // "dailySubEntityType.timeOfDay.hours": { + // "description": "Hours of day in 24 hour format. Should be from 0 to 23. An API may choose to allow the value \"24:00:00\" for scenarios like business closing time.", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "dailySubEntityType.timeOfDay.minutes": { + // "description": "Minutes of hour of day. Must be from 0 to 59.", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "dailySubEntityType.timeOfDay.nanos": { + // "description": "Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "dailySubEntityType.timeOfDay.seconds": { + // "description": "Seconds of minutes of the time. Must normally be from 0 to 59. An API may allow the value 60 if it allows leap-seconds.", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "name": { + // "description": "Required. The location for which the time series should be fetched. Format: locations/{location_id} where location_id is an unobfuscated listing id.", + // "location": "path", + // "pattern": "^locations/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+name}:getDailyMetricsTimeSeries", + // "response": { + // "$ref": "GetDailyMetricsTimeSeriesResponse" + // } + // } + +} + +// method id "businessprofileperformance.locations.searchkeywords.impressions.monthly.list": + +type LocationsSearchkeywordsImpressionsMonthlyListCall struct { + s *Service + parent string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// List: Returns the search keywords used to find a business in search +// or maps. Each search keyword is accompanied by impressions which are +// aggregated on a monthly basis. Example request: GET +// https://businessprofileperformance.googleapis.com/v1/locations/12345/searchkeywords/impressions/monthly?monthly_range.start_month.year=2022&monthly_range.start_month.month=1&monthly_range.end_month.year=2022&monthly_range.end_month.month=3 +// +// - parent: The location for which the time series should be fetched. +// Format: locations/{location_id} where location_id is an +// unobfuscated listing id. +func (r *LocationsSearchkeywordsImpressionsMonthlyService) List(parent string) *LocationsSearchkeywordsImpressionsMonthlyListCall { + c := &LocationsSearchkeywordsImpressionsMonthlyListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + return c +} + +// MonthlyRangeEndMonthDay sets the optional parameter +// "monthlyRange.endMonth.day": Day of a month. Must be from 1 to 31 and +// valid for the year and month, or 0 to specify a year by itself or a +// year and month where the day isn't significant. +func (c *LocationsSearchkeywordsImpressionsMonthlyListCall) MonthlyRangeEndMonthDay(monthlyRangeEndMonthDay int64) *LocationsSearchkeywordsImpressionsMonthlyListCall { + c.urlParams_.Set("monthlyRange.endMonth.day", fmt.Sprint(monthlyRangeEndMonthDay)) + return c +} + +// MonthlyRangeEndMonthMonth sets the optional parameter +// "monthlyRange.endMonth.month": Month of a year. Must be from 1 to 12, +// or 0 to specify a year without a month and day. +func (c *LocationsSearchkeywordsImpressionsMonthlyListCall) MonthlyRangeEndMonthMonth(monthlyRangeEndMonthMonth int64) *LocationsSearchkeywordsImpressionsMonthlyListCall { + c.urlParams_.Set("monthlyRange.endMonth.month", fmt.Sprint(monthlyRangeEndMonthMonth)) + return c +} + +// MonthlyRangeEndMonthYear sets the optional parameter +// "monthlyRange.endMonth.year": Year of the date. Must be from 1 to +// 9999, or 0 to specify a date without a year. +func (c *LocationsSearchkeywordsImpressionsMonthlyListCall) MonthlyRangeEndMonthYear(monthlyRangeEndMonthYear int64) *LocationsSearchkeywordsImpressionsMonthlyListCall { + c.urlParams_.Set("monthlyRange.endMonth.year", fmt.Sprint(monthlyRangeEndMonthYear)) + return c +} + +// MonthlyRangeStartMonthDay sets the optional parameter +// "monthlyRange.startMonth.day": Day of a month. Must be from 1 to 31 +// and valid for the year and month, or 0 to specify a year by itself or +// a year and month where the day isn't significant. +func (c *LocationsSearchkeywordsImpressionsMonthlyListCall) MonthlyRangeStartMonthDay(monthlyRangeStartMonthDay int64) *LocationsSearchkeywordsImpressionsMonthlyListCall { + c.urlParams_.Set("monthlyRange.startMonth.day", fmt.Sprint(monthlyRangeStartMonthDay)) + return c +} + +// MonthlyRangeStartMonthMonth sets the optional parameter +// "monthlyRange.startMonth.month": Month of a year. Must be from 1 to +// 12, or 0 to specify a year without a month and day. +func (c *LocationsSearchkeywordsImpressionsMonthlyListCall) MonthlyRangeStartMonthMonth(monthlyRangeStartMonthMonth int64) *LocationsSearchkeywordsImpressionsMonthlyListCall { + c.urlParams_.Set("monthlyRange.startMonth.month", fmt.Sprint(monthlyRangeStartMonthMonth)) + return c +} + +// MonthlyRangeStartMonthYear sets the optional parameter +// "monthlyRange.startMonth.year": Year of the date. Must be from 1 to +// 9999, or 0 to specify a date without a year. +func (c *LocationsSearchkeywordsImpressionsMonthlyListCall) MonthlyRangeStartMonthYear(monthlyRangeStartMonthYear int64) *LocationsSearchkeywordsImpressionsMonthlyListCall { + c.urlParams_.Set("monthlyRange.startMonth.year", fmt.Sprint(monthlyRangeStartMonthYear)) + return c +} + +// PageSize sets the optional parameter "pageSize": The number of +// results requested. The default page size is 100. Page size can be set +// to a maximum of 100. +func (c *LocationsSearchkeywordsImpressionsMonthlyListCall) PageSize(pageSize int64) *LocationsSearchkeywordsImpressionsMonthlyListCall { + c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) + return c +} + +// PageToken sets the optional parameter "pageToken": A token indicating +// the next paginated result to be returned. +func (c *LocationsSearchkeywordsImpressionsMonthlyListCall) PageToken(pageToken string) *LocationsSearchkeywordsImpressionsMonthlyListCall { + 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 *LocationsSearchkeywordsImpressionsMonthlyListCall) Fields(s ...googleapi.Field) *LocationsSearchkeywordsImpressionsMonthlyListCall { + 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 *LocationsSearchkeywordsImpressionsMonthlyListCall) IfNoneMatch(entityTag string) *LocationsSearchkeywordsImpressionsMonthlyListCall { + 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 *LocationsSearchkeywordsImpressionsMonthlyListCall) Context(ctx context.Context) *LocationsSearchkeywordsImpressionsMonthlyListCall { + 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 *LocationsSearchkeywordsImpressionsMonthlyListCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *LocationsSearchkeywordsImpressionsMonthlyListCall) 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}/searchkeywords/impressions/monthly") + 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 "businessprofileperformance.locations.searchkeywords.impressions.monthly.list" call. +// Exactly one of *ListSearchKeywordImpressionsMonthlyResponse or error +// will be non-nil. Any non-2xx status code is an error. Response +// headers are in either +// *ListSearchKeywordImpressionsMonthlyResponse.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 *LocationsSearchkeywordsImpressionsMonthlyListCall) Do(opts ...googleapi.CallOption) (*ListSearchKeywordImpressionsMonthlyResponse, 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, &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, err + } + ret := &ListSearchKeywordImpressionsMonthlyResponse{ + 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 the search keywords used to find a business in search or maps. Each search keyword is accompanied by impressions which are aggregated on a monthly basis. Example request: GET https://businessprofileperformance.googleapis.com/v1/locations/12345/searchkeywords/impressions/monthly?monthly_range.start_month.year=2022\u0026monthly_range.start_month.month=1\u0026monthly_range.end_month.year=2022\u0026monthly_range.end_month.month=3", + // "flatPath": "v1/locations/{locationsId}/searchkeywords/impressions/monthly", + // "httpMethod": "GET", + // "id": "businessprofileperformance.locations.searchkeywords.impressions.monthly.list", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "monthlyRange.endMonth.day": { + // "description": "Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "monthlyRange.endMonth.month": { + // "description": "Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "monthlyRange.endMonth.year": { + // "description": "Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "monthlyRange.startMonth.day": { + // "description": "Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "monthlyRange.startMonth.month": { + // "description": "Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "monthlyRange.startMonth.year": { + // "description": "Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "pageSize": { + // "description": "Optional. The number of results requested. The default page size is 100. Page size can be set to a maximum of 100.", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "pageToken": { + // "description": "Optional. A token indicating the next paginated result to be returned.", + // "format": "byte", + // "location": "query", + // "type": "string" + // }, + // "parent": { + // "description": "Required. The location for which the time series should be fetched. Format: locations/{location_id} where location_id is an unobfuscated listing id.", + // "location": "path", + // "pattern": "^locations/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+parent}/searchkeywords/impressions/monthly", + // "response": { + // "$ref": "ListSearchKeywordImpressionsMonthlyResponse" + // } + // } + +} + +// 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 *LocationsSearchkeywordsImpressionsMonthlyListCall) Pages(ctx context.Context, f func(*ListSearchKeywordImpressionsMonthlyResponse) 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/cloudsearch/v1/cloudsearch-api.json b/cloudsearch/v1/cloudsearch-api.json index fa5bef434c0..410f1b2e50c 100644 --- a/cloudsearch/v1/cloudsearch-api.json +++ b/cloudsearch/v1/cloudsearch-api.json @@ -1994,7 +1994,7 @@ } } }, - "revision": "20220502", + "revision": "20220524", "rootUrl": "https://cloudsearch.googleapis.com/", "schemas": { "AclInfo": { @@ -2202,7 +2202,7 @@ "type": "object" }, "CustomEmoji": { - "description": "Proto representation of a custom emoji. May be used in both APIs and in Spanner, but certain fields should be restricted to one or the other. See the per-field documentation for details. NEXT_TAG: 13", + "description": "Proto representation of a custom emoji. May be used in both APIs and in Spanner, but certain fields should be restricted to one or the other. See the per-field documentation for details. NEXT_TAG: 14", "id": "CustomEmoji", "properties": { "blobId": { @@ -2222,6 +2222,11 @@ "$ref": "UserId", "description": "This field should *never* be persisted to Spanner." }, + "deleteTimeMicros": { + "description": "Time when the emoji was deleted, in microseconds. This field may be present in Spanner, within the server, or in public APIs. Only present if the emoji has been deleted.", + "format": "int64", + "type": "string" + }, "ephemeralUrl": { "description": "Output only. A short-lived URL clients can use for directly accessing a custom emoji image. This field is intended for API consumption, and should *never* be persisted to Spanner.", "readOnly": true, @@ -2976,7 +2981,7 @@ "id": "FacetResult", "properties": { "buckets": { - "description": "FacetBuckets for values in response containing at least a single result.", + "description": "FacetBuckets for values in response containing at least a single result with the corresponding filter.", "items": { "$ref": "FacetBucket" }, diff --git a/cloudsearch/v1/cloudsearch-gen.go b/cloudsearch/v1/cloudsearch-gen.go index e0d1a2ac527..99574db0c51 100644 --- a/cloudsearch/v1/cloudsearch-gen.go +++ b/cloudsearch/v1/cloudsearch-gen.go @@ -857,7 +857,7 @@ func (s *ContextAttribute) MarshalJSON() ([]byte, error) { // CustomEmoji: Proto representation of a custom emoji. May be used in // both APIs and in Spanner, but certain fields should be restricted to // one or the other. See the per-field documentation for details. -// NEXT_TAG: 13 +// NEXT_TAG: 14 type CustomEmoji struct { // BlobId: ID for the underlying image data in Blobstore. This field // should *only* be present in Spanner or within the server, but should @@ -876,6 +876,11 @@ type CustomEmoji struct { // CreatorUserId: This field should *never* be persisted to Spanner. CreatorUserId *UserId `json:"creatorUserId,omitempty"` + // DeleteTimeMicros: Time when the emoji was deleted, in microseconds. + // This field may be present in Spanner, within the server, or in public + // APIs. Only present if the emoji has been deleted. + DeleteTimeMicros int64 `json:"deleteTimeMicros,omitempty,string"` + // EphemeralUrl: Output only. A short-lived URL clients can use for // directly accessing a custom emoji image. This field is intended for // API consumption, and should *never* be persisted to Spanner. @@ -2340,7 +2345,7 @@ func (s *FacetOptions) MarshalJSON() ([]byte, error) { // FacetResult: Source specific facet response type FacetResult struct { // Buckets: FacetBuckets for values in response containing at least a - // single result. + // single result with the corresponding filter. Buckets []*FacetBucket `json:"buckets,omitempty"` // ObjectType: Object type for which facet results are returned. Can be diff --git a/cloudtasks/v2/cloudtasks-api.json b/cloudtasks/v2/cloudtasks-api.json index ec64f607337..c1aa44ce9eb 100644 --- a/cloudtasks/v2/cloudtasks-api.json +++ b/cloudtasks/v2/cloudtasks-api.json @@ -267,7 +267,7 @@ ], "parameters": { "resource": { - "description": "REQUIRED: The resource for which the policy is being requested. See the operation documentation for the appropriate value for this field.", + "description": "REQUIRED: The resource for which the policy is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/queues/[^/]+$", "required": true, @@ -454,7 +454,7 @@ ], "parameters": { "resource": { - "description": "REQUIRED: The resource for which the policy is being specified. See the operation documentation for the appropriate value for this field.", + "description": "REQUIRED: The resource for which the policy is being specified. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/queues/[^/]+$", "required": true, @@ -482,7 +482,7 @@ ], "parameters": { "resource": { - "description": "REQUIRED: The resource for which the policy detail is being requested. See the operation documentation for the appropriate value for this field.", + "description": "REQUIRED: The resource for which the policy detail is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/queues/[^/]+$", "required": true, @@ -685,7 +685,7 @@ } } }, - "revision": "20220428", + "revision": "20220520", "rootUrl": "https://cloudtasks.googleapis.com/", "schemas": { "AppEngineHttpRequest": { diff --git a/cloudtasks/v2/cloudtasks-gen.go b/cloudtasks/v2/cloudtasks-gen.go index e8e94717301..d0b8b731b90 100644 --- a/cloudtasks/v2/cloudtasks-gen.go +++ b/cloudtasks/v2/cloudtasks-gen.go @@ -2647,8 +2647,9 @@ type ProjectsLocationsQueuesGetIamPolicyCall struct { // parent: * `cloudtasks.queues.getIamPolicy` // // - resource: REQUIRED: The resource for which the policy is being -// requested. See the operation documentation for the appropriate -// value for this field. +// requested. See Resource names +// (https://cloud.google.com/apis/design/resource_names) for the +// appropriate value for this field. func (r *ProjectsLocationsQueuesService) GetIamPolicy(resource string, getiampolicyrequest *GetIamPolicyRequest) *ProjectsLocationsQueuesGetIamPolicyCall { c := &ProjectsLocationsQueuesGetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.resource = resource @@ -2756,7 +2757,7 @@ func (c *ProjectsLocationsQueuesGetIamPolicyCall) Do(opts ...googleapi.CallOptio // ], // "parameters": { // "resource": { - // "description": "REQUIRED: The resource for which the policy is being requested. See the operation documentation for the appropriate value for this field.", + // "description": "REQUIRED: The resource for which the policy is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.", // "location": "path", // "pattern": "^projects/[^/]+/locations/[^/]+/queues/[^/]+$", // "required": true, @@ -3633,8 +3634,9 @@ type ProjectsLocationsQueuesSetIamPolicyCall struct { // specified resource parent: * `cloudtasks.queues.setIamPolicy` // // - resource: REQUIRED: The resource for which the policy is being -// specified. See the operation documentation for the appropriate -// value for this field. +// specified. See Resource names +// (https://cloud.google.com/apis/design/resource_names) for the +// appropriate value for this field. func (r *ProjectsLocationsQueuesService) SetIamPolicy(resource string, setiampolicyrequest *SetIamPolicyRequest) *ProjectsLocationsQueuesSetIamPolicyCall { c := &ProjectsLocationsQueuesSetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.resource = resource @@ -3742,7 +3744,7 @@ func (c *ProjectsLocationsQueuesSetIamPolicyCall) Do(opts ...googleapi.CallOptio // ], // "parameters": { // "resource": { - // "description": "REQUIRED: The resource for which the policy is being specified. See the operation documentation for the appropriate value for this field.", + // "description": "REQUIRED: The resource for which the policy is being specified. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.", // "location": "path", // "pattern": "^projects/[^/]+/locations/[^/]+/queues/[^/]+$", // "required": true, @@ -3782,7 +3784,8 @@ type ProjectsLocationsQueuesTestIamPermissionsCall struct { // without warning. // // - resource: REQUIRED: The resource for which the policy detail is -// being requested. See the operation documentation for the +// being requested. See Resource names +// (https://cloud.google.com/apis/design/resource_names) for the // appropriate value for this field. func (r *ProjectsLocationsQueuesService) TestIamPermissions(resource string, testiampermissionsrequest *TestIamPermissionsRequest) *ProjectsLocationsQueuesTestIamPermissionsCall { c := &ProjectsLocationsQueuesTestIamPermissionsCall{s: r.s, urlParams_: make(gensupport.URLParams)} @@ -3891,7 +3894,7 @@ func (c *ProjectsLocationsQueuesTestIamPermissionsCall) Do(opts ...googleapi.Cal // ], // "parameters": { // "resource": { - // "description": "REQUIRED: The resource for which the policy detail is being requested. See the operation documentation for the appropriate value for this field.", + // "description": "REQUIRED: The resource for which the policy detail is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.", // "location": "path", // "pattern": "^projects/[^/]+/locations/[^/]+/queues/[^/]+$", // "required": true, diff --git a/cloudtasks/v2beta2/cloudtasks-api.json b/cloudtasks/v2beta2/cloudtasks-api.json index c96cdaea0f3..250b2c00a80 100644 --- a/cloudtasks/v2beta2/cloudtasks-api.json +++ b/cloudtasks/v2beta2/cloudtasks-api.json @@ -273,7 +273,7 @@ ], "parameters": { "resource": { - "description": "REQUIRED: The resource for which the policy is being requested. See the operation documentation for the appropriate value for this field.", + "description": "REQUIRED: The resource for which the policy is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/queues/[^/]+$", "required": true, @@ -466,7 +466,7 @@ ], "parameters": { "resource": { - "description": "REQUIRED: The resource for which the policy is being specified. See the operation documentation for the appropriate value for this field.", + "description": "REQUIRED: The resource for which the policy is being specified. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/queues/[^/]+$", "required": true, @@ -494,7 +494,7 @@ ], "parameters": { "resource": { - "description": "REQUIRED: The resource for which the policy detail is being requested. See the operation documentation for the appropriate value for this field.", + "description": "REQUIRED: The resource for which the policy detail is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/queues/[^/]+$", "required": true, @@ -809,7 +809,7 @@ } } }, - "revision": "20220428", + "revision": "20220520", "rootUrl": "https://cloudtasks.googleapis.com/", "schemas": { "AcknowledgeTaskRequest": { diff --git a/cloudtasks/v2beta2/cloudtasks-gen.go b/cloudtasks/v2beta2/cloudtasks-gen.go index 0ffe4f964c4..156edb0ff2e 100644 --- a/cloudtasks/v2beta2/cloudtasks-gen.go +++ b/cloudtasks/v2beta2/cloudtasks-gen.go @@ -2901,8 +2901,9 @@ type ProjectsLocationsQueuesGetIamPolicyCall struct { // parent: * `cloudtasks.queues.getIamPolicy` // // - resource: REQUIRED: The resource for which the policy is being -// requested. See the operation documentation for the appropriate -// value for this field. +// requested. See Resource names +// (https://cloud.google.com/apis/design/resource_names) for the +// appropriate value for this field. func (r *ProjectsLocationsQueuesService) GetIamPolicy(resource string, getiampolicyrequest *GetIamPolicyRequest) *ProjectsLocationsQueuesGetIamPolicyCall { c := &ProjectsLocationsQueuesGetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.resource = resource @@ -3010,7 +3011,7 @@ func (c *ProjectsLocationsQueuesGetIamPolicyCall) Do(opts ...googleapi.CallOptio // ], // "parameters": { // "resource": { - // "description": "REQUIRED: The resource for which the policy is being requested. See the operation documentation for the appropriate value for this field.", + // "description": "REQUIRED: The resource for which the policy is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.", // "location": "path", // "pattern": "^projects/[^/]+/locations/[^/]+/queues/[^/]+$", // "required": true, @@ -3903,8 +3904,9 @@ type ProjectsLocationsQueuesSetIamPolicyCall struct { // specified resource parent: * `cloudtasks.queues.setIamPolicy` // // - resource: REQUIRED: The resource for which the policy is being -// specified. See the operation documentation for the appropriate -// value for this field. +// specified. See Resource names +// (https://cloud.google.com/apis/design/resource_names) for the +// appropriate value for this field. func (r *ProjectsLocationsQueuesService) SetIamPolicy(resource string, setiampolicyrequest *SetIamPolicyRequest) *ProjectsLocationsQueuesSetIamPolicyCall { c := &ProjectsLocationsQueuesSetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.resource = resource @@ -4012,7 +4014,7 @@ func (c *ProjectsLocationsQueuesSetIamPolicyCall) Do(opts ...googleapi.CallOptio // ], // "parameters": { // "resource": { - // "description": "REQUIRED: The resource for which the policy is being specified. See the operation documentation for the appropriate value for this field.", + // "description": "REQUIRED: The resource for which the policy is being specified. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.", // "location": "path", // "pattern": "^projects/[^/]+/locations/[^/]+/queues/[^/]+$", // "required": true, @@ -4052,7 +4054,8 @@ type ProjectsLocationsQueuesTestIamPermissionsCall struct { // without warning. // // - resource: REQUIRED: The resource for which the policy detail is -// being requested. See the operation documentation for the +// being requested. See Resource names +// (https://cloud.google.com/apis/design/resource_names) for the // appropriate value for this field. func (r *ProjectsLocationsQueuesService) TestIamPermissions(resource string, testiampermissionsrequest *TestIamPermissionsRequest) *ProjectsLocationsQueuesTestIamPermissionsCall { c := &ProjectsLocationsQueuesTestIamPermissionsCall{s: r.s, urlParams_: make(gensupport.URLParams)} @@ -4161,7 +4164,7 @@ func (c *ProjectsLocationsQueuesTestIamPermissionsCall) Do(opts ...googleapi.Cal // ], // "parameters": { // "resource": { - // "description": "REQUIRED: The resource for which the policy detail is being requested. See the operation documentation for the appropriate value for this field.", + // "description": "REQUIRED: The resource for which the policy detail is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.", // "location": "path", // "pattern": "^projects/[^/]+/locations/[^/]+/queues/[^/]+$", // "required": true, diff --git a/cloudtasks/v2beta3/cloudtasks-api.json b/cloudtasks/v2beta3/cloudtasks-api.json index d342f89bf00..ec280828ae7 100644 --- a/cloudtasks/v2beta3/cloudtasks-api.json +++ b/cloudtasks/v2beta3/cloudtasks-api.json @@ -273,7 +273,7 @@ ], "parameters": { "resource": { - "description": "REQUIRED: The resource for which the policy is being requested. See the operation documentation for the appropriate value for this field.", + "description": "REQUIRED: The resource for which the policy is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/queues/[^/]+$", "required": true, @@ -466,7 +466,7 @@ ], "parameters": { "resource": { - "description": "REQUIRED: The resource for which the policy is being specified. See the operation documentation for the appropriate value for this field.", + "description": "REQUIRED: The resource for which the policy is being specified. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/queues/[^/]+$", "required": true, @@ -494,7 +494,7 @@ ], "parameters": { "resource": { - "description": "REQUIRED: The resource for which the policy detail is being requested. See the operation documentation for the appropriate value for this field.", + "description": "REQUIRED: The resource for which the policy detail is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/queues/[^/]+$", "required": true, @@ -697,7 +697,7 @@ } } }, - "revision": "20220428", + "revision": "20220520", "rootUrl": "https://cloudtasks.googleapis.com/", "schemas": { "AppEngineHttpQueue": { diff --git a/cloudtasks/v2beta3/cloudtasks-gen.go b/cloudtasks/v2beta3/cloudtasks-gen.go index 079f960d21a..dd4b3dabc8d 100644 --- a/cloudtasks/v2beta3/cloudtasks-gen.go +++ b/cloudtasks/v2beta3/cloudtasks-gen.go @@ -2849,8 +2849,9 @@ type ProjectsLocationsQueuesGetIamPolicyCall struct { // parent: * `cloudtasks.queues.getIamPolicy` // // - resource: REQUIRED: The resource for which the policy is being -// requested. See the operation documentation for the appropriate -// value for this field. +// requested. See Resource names +// (https://cloud.google.com/apis/design/resource_names) for the +// appropriate value for this field. func (r *ProjectsLocationsQueuesService) GetIamPolicy(resource string, getiampolicyrequest *GetIamPolicyRequest) *ProjectsLocationsQueuesGetIamPolicyCall { c := &ProjectsLocationsQueuesGetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.resource = resource @@ -2958,7 +2959,7 @@ func (c *ProjectsLocationsQueuesGetIamPolicyCall) Do(opts ...googleapi.CallOptio // ], // "parameters": { // "resource": { - // "description": "REQUIRED: The resource for which the policy is being requested. See the operation documentation for the appropriate value for this field.", + // "description": "REQUIRED: The resource for which the policy is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.", // "location": "path", // "pattern": "^projects/[^/]+/locations/[^/]+/queues/[^/]+$", // "required": true, @@ -3851,8 +3852,9 @@ type ProjectsLocationsQueuesSetIamPolicyCall struct { // specified resource parent: * `cloudtasks.queues.setIamPolicy` // // - resource: REQUIRED: The resource for which the policy is being -// specified. See the operation documentation for the appropriate -// value for this field. +// specified. See Resource names +// (https://cloud.google.com/apis/design/resource_names) for the +// appropriate value for this field. func (r *ProjectsLocationsQueuesService) SetIamPolicy(resource string, setiampolicyrequest *SetIamPolicyRequest) *ProjectsLocationsQueuesSetIamPolicyCall { c := &ProjectsLocationsQueuesSetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.resource = resource @@ -3960,7 +3962,7 @@ func (c *ProjectsLocationsQueuesSetIamPolicyCall) Do(opts ...googleapi.CallOptio // ], // "parameters": { // "resource": { - // "description": "REQUIRED: The resource for which the policy is being specified. See the operation documentation for the appropriate value for this field.", + // "description": "REQUIRED: The resource for which the policy is being specified. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.", // "location": "path", // "pattern": "^projects/[^/]+/locations/[^/]+/queues/[^/]+$", // "required": true, @@ -4000,7 +4002,8 @@ type ProjectsLocationsQueuesTestIamPermissionsCall struct { // without warning. // // - resource: REQUIRED: The resource for which the policy detail is -// being requested. See the operation documentation for the +// being requested. See Resource names +// (https://cloud.google.com/apis/design/resource_names) for the // appropriate value for this field. func (r *ProjectsLocationsQueuesService) TestIamPermissions(resource string, testiampermissionsrequest *TestIamPermissionsRequest) *ProjectsLocationsQueuesTestIamPermissionsCall { c := &ProjectsLocationsQueuesTestIamPermissionsCall{s: r.s, urlParams_: make(gensupport.URLParams)} @@ -4109,7 +4112,7 @@ func (c *ProjectsLocationsQueuesTestIamPermissionsCall) Do(opts ...googleapi.Cal // ], // "parameters": { // "resource": { - // "description": "REQUIRED: The resource for which the policy detail is being requested. See the operation documentation for the appropriate value for this field.", + // "description": "REQUIRED: The resource for which the policy detail is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.", // "location": "path", // "pattern": "^projects/[^/]+/locations/[^/]+/queues/[^/]+$", // "required": true, diff --git a/connectors/v1/connectors-api.json b/connectors/v1/connectors-api.json index a32e57e537d..854e04b7448 100644 --- a/connectors/v1/connectors-api.json +++ b/connectors/v1/connectors-api.json @@ -1055,7 +1055,7 @@ } } }, - "revision": "20220504", + "revision": "20220523", "rootUrl": "https://connectors.googleapis.com/", "schemas": { "AuditConfig": { @@ -1246,6 +1246,13 @@ "description": "Display name of the parameter.", "type": "string" }, + "enumOptions": { + "description": "Enum options. To be populated if `ValueType` is `ENUM`", + "items": { + "$ref": "EnumOption" + }, + "type": "array" + }, "key": { "description": "Key of the config variable.", "type": "string" @@ -1269,14 +1276,16 @@ "STRING", "INT", "BOOL", - "SECRET" + "SECRET", + "ENUM" ], "enumDescriptions": [ "Value type is not specified.", "Value type is string.", "Value type is integer.", "Value type is boolean.", - "Value type is secret." + "Value type is secret.", + "Value type is enum." ], "type": "string" } @@ -1626,6 +1635,21 @@ "properties": {}, "type": "object" }, + "EnumOption": { + "description": "EnumOption definition", + "id": "EnumOption", + "properties": { + "displayName": { + "description": "Display name of the option.", + "type": "string" + }, + "id": { + "description": "Id of the option.", + "type": "string" + } + }, + "type": "object" + }, "Expr": { "description": "Represents a textual expression in the Common Expression Language (CEL) syntax. CEL is a C-like expression language. The syntax and semantics of CEL are documented at https://github.com/google/cel-spec. Example (Comparison): title: \"Summary size limit\" description: \"Determines if a summary is less than 100 chars\" expression: \"document.summary.size() \u003c 100\" Example (Equality): title: \"Requestor is owner\" description: \"Determines if requestor is the document owner\" expression: \"document.owner == request.auth.claims.email\" Example (Logic): title: \"Public documents\" description: \"Determine whether the document should be publicly visible\" expression: \"document.type != 'private' \u0026\u0026 document.type != 'internal'\" Example (Data Manipulation): title: \"Notification string\" description: \"Create a notification string with a timestamp.\" expression: \"'New message received at ' + string(document.create_time)\" The exact variables and functions that may be referenced within an expression are determined by the service that evaluates it. See the service documentation for additional information.", "id": "Expr", diff --git a/connectors/v1/connectors-gen.go b/connectors/v1/connectors-gen.go index 683a796352b..29fe79a6f38 100644 --- a/connectors/v1/connectors-gen.go +++ b/connectors/v1/connectors-gen.go @@ -581,6 +581,9 @@ type ConfigVariableTemplate struct { // DisplayName: Display name of the parameter. DisplayName string `json:"displayName,omitempty"` + // EnumOptions: Enum options. To be populated if `ValueType` is `ENUM` + EnumOptions []*EnumOption `json:"enumOptions,omitempty"` + // Key: Key of the config variable. Key string `json:"key,omitempty"` @@ -604,6 +607,7 @@ type ConfigVariableTemplate struct { // "INT" - Value type is integer. // "BOOL" - Value type is boolean. // "SECRET" - Value type is secret. + // "ENUM" - Value type is enum. ValueType string `json:"valueType,omitempty"` // ForceSendFields is a list of field names (e.g. "Description") to @@ -1010,6 +1014,37 @@ type Empty struct { googleapi.ServerResponse `json:"-"` } +// EnumOption: EnumOption definition +type EnumOption struct { + // DisplayName: Display name of the option. + DisplayName string `json:"displayName,omitempty"` + + // Id: Id of the option. + Id string `json:"id,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 *EnumOption) MarshalJSON() ([]byte, error) { + type NoMethod EnumOption + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // Expr: Represents a textual expression in the Common Expression // Language (CEL) syntax. CEL is a C-like expression language. The // syntax and semantics of CEL are documented at diff --git a/gkehub/v1alpha2/gkehub-api.json b/gkehub/v1alpha2/gkehub-api.json index 775bb6575c0..1f9d8d94ceb 100644 --- a/gkehub/v1alpha2/gkehub-api.json +++ b/gkehub/v1alpha2/gkehub-api.json @@ -652,9 +652,20 @@ } } }, - "revision": "20220505", + "revision": "20220530", "rootUrl": "https://gkehub.googleapis.com/", "schemas": { + "ApplianceCluster": { + "description": "ApplianceCluster contains information specific to GDC Edge Appliance Clusters.", + "id": "ApplianceCluster", + "properties": { + "resourceLink": { + "description": "Immutable. Self-link of the GCP resource for the Appliance Cluster. For example: //transferappliance.googleapis.com/projects/my-project/locations/us-west1-a/appliances/my-appliance", + "type": "string" + } + }, + "type": "object" + }, "AuditConfig": { "description": "Specifies the audit configuration for a service. The configuration determines which permission types are logged, and what identities, if any, are exempted from logging. An AuditConfig must have one or more AuditLogConfigs. If there are AuditConfigs for both `allServices` and a specific service, the union of the two AuditConfigs is used for that service: the log_types specified in each AuditConfig are enabled, and the exempted_members in each AuditLogConfig are exempted. Example Policy with multiple AuditConfigs: { \"audit_configs\": [ { \"service\": \"allServices\", \"audit_log_configs\": [ { \"log_type\": \"DATA_READ\", \"exempted_members\": [ \"user:jose@example.com\" ] }, { \"log_type\": \"DATA_WRITE\" }, { \"log_type\": \"ADMIN_READ\" } ] }, { \"service\": \"sampleservice.googleapis.com\", \"audit_log_configs\": [ { \"log_type\": \"DATA_READ\" }, { \"log_type\": \"DATA_WRITE\", \"exempted_members\": [ \"user:aliya@example.com\" ] } ] } ] } For sampleservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ logging. It also exempts `jose@example.com` from DATA_READ logging, and `aliya@example.com` from DATA_WRITE logging.", "id": "AuditConfig", @@ -1145,6 +1156,10 @@ "description": "MembershipEndpoint contains information needed to contact a Kubernetes API, endpoint and any additional Kubernetes metadata.", "id": "MembershipEndpoint", "properties": { + "applianceCluster": { + "$ref": "ApplianceCluster", + "description": "Optional. Specific information for a GDC Edge Appliance cluster." + }, "edgeCluster": { "$ref": "EdgeCluster", "description": "Optional. Specific information for a Google Edge cluster." diff --git a/gkehub/v1alpha2/gkehub-gen.go b/gkehub/v1alpha2/gkehub-gen.go index e96bbec4882..d7c465193e1 100644 --- a/gkehub/v1alpha2/gkehub-gen.go +++ b/gkehub/v1alpha2/gkehub-gen.go @@ -206,6 +206,38 @@ type ProjectsLocationsOperationsService struct { s *Service } +// ApplianceCluster: ApplianceCluster contains information specific to +// GDC Edge Appliance Clusters. +type ApplianceCluster struct { + // ResourceLink: Immutable. Self-link of the GCP resource for the + // Appliance Cluster. For example: + // //transferappliance.googleapis.com/projects/my-project/locations/us-we + // st1-a/appliances/my-appliance + ResourceLink string `json:"resourceLink,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ResourceLink") 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. "ResourceLink") 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 *ApplianceCluster) MarshalJSON() ([]byte, error) { + type NoMethod ApplianceCluster + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // AuditConfig: Specifies the audit configuration for a service. The // configuration determines which permission types are logged, and what // identities, if any, are exempted from logging. An AuditConfig must @@ -1122,6 +1154,10 @@ func (s *Membership) MarshalJSON() ([]byte, error) { // contact a Kubernetes API, endpoint and any additional Kubernetes // metadata. type MembershipEndpoint struct { + // ApplianceCluster: Optional. Specific information for a GDC Edge + // Appliance cluster. + ApplianceCluster *ApplianceCluster `json:"applianceCluster,omitempty"` + // EdgeCluster: Optional. Specific information for a Google Edge // cluster. EdgeCluster *EdgeCluster `json:"edgeCluster,omitempty"` @@ -1150,7 +1186,7 @@ type MembershipEndpoint struct { // allowed to use this field, it should have a nil "type" instead. OnPremCluster *OnPremCluster `json:"onPremCluster,omitempty"` - // ForceSendFields is a list of field names (e.g. "EdgeCluster") to + // ForceSendFields is a list of field names (e.g. "ApplianceCluster") 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 @@ -1158,12 +1194,13 @@ type MembershipEndpoint struct { // This may be used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "EdgeCluster") 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. "ApplianceCluster") 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/gkehub/v1beta/gkehub-api.json b/gkehub/v1beta/gkehub-api.json index 510ce701136..7e3e87823d1 100644 --- a/gkehub/v1beta/gkehub-api.json +++ b/gkehub/v1beta/gkehub-api.json @@ -670,7 +670,7 @@ } } }, - "revision": "20220505", + "revision": "20220530", "rootUrl": "https://gkehub.googleapis.com/", "schemas": { "AnthosObservabilityFeatureSpec": { @@ -978,6 +978,10 @@ "$ref": "ConfigManagementGitConfig", "description": "Git repo configuration for the cluster." }, + "oci": { + "$ref": "ConfigManagementOciConfig", + "description": "OCI repo configuration for the cluster" + }, "preventDrift": { "description": "Set to true to enable the Config Sync admission webhook to prevent drifts. If set to `false`, disables the Config Sync admission webhook and does not prevent drifts.", "type": "boolean" @@ -1444,6 +1448,34 @@ }, "type": "object" }, + "ConfigManagementOciConfig": { + "description": "OCI repo configuration for a single cluster", + "id": "ConfigManagementOciConfig", + "properties": { + "gcpServiceAccountEmail": { + "description": "The GCP Service Account Email used for auth when secret_type is gcpServiceAccount.", + "type": "string" + }, + "policyDir": { + "description": "The absolute path of the directory that contains the local resources. Default: the root directory of the image.", + "type": "string" + }, + "secretType": { + "description": "Type of secret configured for access to the Git repo.", + "type": "string" + }, + "syncRepo": { + "description": "The OCI image repository URL for the package to sync from. e.g. `LOCATION-docker.pkg.dev/PROJECT_ID/REPOSITORY_NAME/PACKAGE_NAME`.", + "type": "string" + }, + "syncWaitSecs": { + "description": "Period in seconds between consecutive syncs. Default: 15.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, "ConfigManagementOperatorState": { "description": "State information for an ACM's Operator", "id": "ConfigManagementOperatorState", @@ -1502,6 +1534,10 @@ "description": "Logs all denies and dry run failures.", "type": "boolean" }, + "monitoring": { + "$ref": "ConfigManagementPolicyControllerMonitoring", + "description": "Monitoring specifies the configuration of monitoring." + }, "referentialRulesEnabled": { "description": "Enables the ability to use Constraint Templates that reference to objects other than the object currently being evaluated.", "type": "boolean" @@ -1513,6 +1549,30 @@ }, "type": "object" }, + "ConfigManagementPolicyControllerMonitoring": { + "description": "PolicyControllerMonitoring specifies the backends Policy Controller should export metrics to. For example, to specify metrics should be exported to Cloud Monitoring and Prometheus, specify backends: [\"cloudmonitoring\", \"prometheus\"]", + "id": "ConfigManagementPolicyControllerMonitoring", + "properties": { + "backends": { + "description": "Specifies the list of backends Policy Controller will export to. An empty list would effectively disable metrics export.", + "items": { + "enum": [ + "MONITORING_BACKEND_UNSPECIFIED", + "PROMETHEUS", + "CLOUD_MONITORING" + ], + "enumDescriptions": [ + "Backend cannot be determined", + "Prometheus backend for monitoring", + "Stackdriver/Cloud Monitoring backend for monitoring" + ], + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "ConfigManagementPolicyControllerState": { "description": "State for PolicyControllerState.", "id": "ConfigManagementPolicyControllerState", diff --git a/gkehub/v1beta/gkehub-gen.go b/gkehub/v1beta/gkehub-gen.go index 2de0a1cef83..ac1fa10b1b7 100644 --- a/gkehub/v1beta/gkehub-gen.go +++ b/gkehub/v1beta/gkehub-gen.go @@ -811,6 +811,9 @@ type ConfigManagementConfigSync struct { // Git: Git repo configuration for the cluster. Git *ConfigManagementGitConfig `json:"git,omitempty"` + // Oci: OCI repo configuration for the cluster + Oci *ConfigManagementOciConfig `json:"oci,omitempty"` + // PreventDrift: Set to true to enable the Config Sync admission webhook // to prevent drifts. If set to `false`, disables the Config Sync // admission webhook and does not prevent drifts. @@ -1483,6 +1486,54 @@ func (s *ConfigManagementMembershipState) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// ConfigManagementOciConfig: OCI repo configuration for a single +// cluster +type ConfigManagementOciConfig struct { + // GcpServiceAccountEmail: The GCP Service Account Email used for auth + // when secret_type is gcpServiceAccount. + GcpServiceAccountEmail string `json:"gcpServiceAccountEmail,omitempty"` + + // PolicyDir: The absolute path of the directory that contains the local + // resources. Default: the root directory of the image. + PolicyDir string `json:"policyDir,omitempty"` + + // SecretType: Type of secret configured for access to the Git repo. + SecretType string `json:"secretType,omitempty"` + + // SyncRepo: The OCI image repository URL for the package to sync from. + // e.g. + // `LOCATION-docker.pkg.dev/PROJECT_ID/REPOSITORY_NAME/PACKAGE_NAME`. + SyncRepo string `json:"syncRepo,omitempty"` + + // SyncWaitSecs: Period in seconds between consecutive syncs. Default: + // 15. + SyncWaitSecs int64 `json:"syncWaitSecs,omitempty,string"` + + // ForceSendFields is a list of field names (e.g. + // "GcpServiceAccountEmail") 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. "GcpServiceAccountEmail") + // 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 *ConfigManagementOciConfig) MarshalJSON() ([]byte, error) { + type NoMethod ConfigManagementOciConfig + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // ConfigManagementOperatorState: State information for an ACM's // Operator type ConfigManagementOperatorState struct { @@ -1545,6 +1596,9 @@ type ConfigManagementPolicyController struct { // LogDeniesEnabled: Logs all denies and dry run failures. LogDeniesEnabled bool `json:"logDeniesEnabled,omitempty"` + // Monitoring: Monitoring specifies the configuration of monitoring. + Monitoring *ConfigManagementPolicyControllerMonitoring `json:"monitoring,omitempty"` + // ReferentialRulesEnabled: Enables the ability to use Constraint // Templates that reference to objects other than the object currently // being evaluated. @@ -1579,6 +1633,45 @@ func (s *ConfigManagementPolicyController) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// ConfigManagementPolicyControllerMonitoring: +// PolicyControllerMonitoring specifies the backends Policy Controller +// should export metrics to. For example, to specify metrics should be +// exported to Cloud Monitoring and Prometheus, specify backends: +// ["cloudmonitoring", "prometheus"] +type ConfigManagementPolicyControllerMonitoring struct { + // Backends: Specifies the list of backends Policy Controller will + // export to. An empty list would effectively disable metrics export. + // + // Possible values: + // "MONITORING_BACKEND_UNSPECIFIED" - Backend cannot be determined + // "PROMETHEUS" - Prometheus backend for monitoring + // "CLOUD_MONITORING" - Stackdriver/Cloud Monitoring backend for + // monitoring + Backends []string `json:"backends,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Backends") 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. "Backends") 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 *ConfigManagementPolicyControllerMonitoring) MarshalJSON() ([]byte, error) { + type NoMethod ConfigManagementPolicyControllerMonitoring + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // ConfigManagementPolicyControllerState: State for // PolicyControllerState. type ConfigManagementPolicyControllerState struct { diff --git a/healthcare/v1beta1/healthcare-api.json b/healthcare/v1beta1/healthcare-api.json index 93b356344c5..b5c6a34caea 100644 --- a/healthcare/v1beta1/healthcare-api.json +++ b/healthcare/v1beta1/healthcare-api.json @@ -4865,7 +4865,7 @@ } } }, - "revision": "20220512", + "revision": "20220525", "rootUrl": "https://healthcare.googleapis.com/", "schemas": { "ActivateConsentRequest": { @@ -6110,6 +6110,21 @@ }, "type": "object" }, + "FhirNotificationConfig": { + "description": "Contains the configuration for FHIR notifications.", + "id": "FhirNotificationConfig", + "properties": { + "pubsubTopic": { + "description": "The [Pub/Sub](https://cloud.google.com/pubsub/docs/) topic that notifications of changes are published on. Supplied by the client. The notification is a `PubsubMessage` with the following fields: * `PubsubMessage.Data` contains the resource name. * `PubsubMessage.MessageId` is the ID of this notification. It is guaranteed to be unique within the topic. * `PubsubMessage.PublishTime` is the time when the message was published. Note that notifications are only sent if the topic is non-empty. [Topic names](https://cloud.google.com/pubsub/docs/overview#names) must be scoped to a project. The Cloud Healthcare API service account, service-@gcp-sa-healthcare.iam.gserviceaccount.com, must have publisher permissions on the given Pub/Sub topic. Not having adequate permissions causes the calls that send notifications to fail. If a notification can't be published to Pub/Sub, errors are logged to Cloud Logging. For more information, see [Viewing error logs in Cloud Logging](https://cloud.google.com/healthcare-api/docs/how-tos/logging).", + "type": "string" + }, + "sendFullResource": { + "description": "Whether to send full FHIR resource to this Pub/Sub topic for Create and Update operation. Note that setting this to true does not guarantee that all resources will be sent in the format of full FHIR resource. When a resource change is too large or during heavy traffic, only the resource name will be sent. Clients should always check the \"payloadType\" label from a Pub/Sub message to determine whether it needs to fetch the full resource as a separate operation.", + "type": "boolean" + } + }, + "type": "object" + }, "FhirOutput": { "description": "Details about the FHIR store to write the output to.", "id": "FhirOutput", @@ -6156,6 +6171,13 @@ "$ref": "NotificationConfig", "description": "If non-empty, publish all resource modifications of this FHIR store to this destination. The Pub/Sub message attributes contain a map with a string describing the action that has triggered the notification. For example, \"action\":\"CreateResource\"." }, + "notificationConfigs": { + "description": "Specifies where and whether to send notifications upon changes to a Fhir store.", + "items": { + "$ref": "FhirNotificationConfig" + }, + "type": "array" + }, "searchConfig": { "$ref": "SearchConfig", "description": "Configuration for how FHIR resources can be searched." diff --git a/healthcare/v1beta1/healthcare-gen.go b/healthcare/v1beta1/healthcare-gen.go index d8be24e8fcb..64e4966e573 100644 --- a/healthcare/v1beta1/healthcare-gen.go +++ b/healthcare/v1beta1/healthcare-gen.go @@ -2841,6 +2841,62 @@ func (s *FhirFilter) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// FhirNotificationConfig: Contains the configuration for FHIR +// notifications. +type FhirNotificationConfig struct { + // PubsubTopic: The Pub/Sub (https://cloud.google.com/pubsub/docs/) + // topic that notifications of changes are published on. Supplied by the + // client. The notification is a `PubsubMessage` with the following + // fields: * `PubsubMessage.Data` contains the resource name. * + // `PubsubMessage.MessageId` is the ID of this notification. It is + // guaranteed to be unique within the topic. * + // `PubsubMessage.PublishTime` is the time when the message was + // published. Note that notifications are only sent if the topic is + // non-empty. Topic names + // (https://cloud.google.com/pubsub/docs/overview#names) must be scoped + // to a project. The Cloud Healthcare API service account, + // service-@gcp-sa-healthcare.iam.gserviceaccount.com, must have + // publisher permissions on the given Pub/Sub topic. Not having adequate + // permissions causes the calls that send notifications to fail. If a + // notification can't be published to Pub/Sub, errors are logged to + // Cloud Logging. For more information, see Viewing error logs in Cloud + // Logging + // (https://cloud.google.com/healthcare-api/docs/how-tos/logging). + PubsubTopic string `json:"pubsubTopic,omitempty"` + + // SendFullResource: Whether to send full FHIR resource to this Pub/Sub + // topic for Create and Update operation. Note that setting this to true + // does not guarantee that all resources will be sent in the format of + // full FHIR resource. When a resource change is too large or during + // heavy traffic, only the resource name will be sent. Clients should + // always check the "payloadType" label from a Pub/Sub message to + // determine whether it needs to fetch the full resource as a separate + // operation. + SendFullResource bool `json:"sendFullResource,omitempty"` + + // ForceSendFields is a list of field names (e.g. "PubsubTopic") 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. "PubsubTopic") 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 *FhirNotificationConfig) MarshalJSON() ([]byte, error) { + type NoMethod FhirNotificationConfig + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // FhirOutput: Details about the FHIR store to write the output to. type FhirOutput struct { // FhirStore: Name of the output FHIR store, which must already exist. @@ -2945,6 +3001,10 @@ type FhirStore struct { // triggered the notification. For example, "action":"CreateResource". NotificationConfig *NotificationConfig `json:"notificationConfig,omitempty"` + // NotificationConfigs: Specifies where and whether to send + // notifications upon changes to a Fhir store. + NotificationConfigs []*FhirNotificationConfig `json:"notificationConfigs,omitempty"` + // SearchConfig: Configuration for how FHIR resources can be searched. SearchConfig *SearchConfig `json:"searchConfig,omitempty"` diff --git a/managedidentities/v1beta1/managedidentities-api.json b/managedidentities/v1beta1/managedidentities-api.json index d7b5311b416..cb926112dda 100644 --- a/managedidentities/v1beta1/managedidentities-api.json +++ b/managedidentities/v1beta1/managedidentities-api.json @@ -295,6 +295,34 @@ "https://www.googleapis.com/auth/cloud-platform" ] }, + "extendSchema": { + "description": "Extend Schema for Domain", + "flatPath": "v1beta1/projects/{projectsId}/locations/global/domains/{domainsId}:extendSchema", + "httpMethod": "POST", + "id": "managedidentities.projects.locations.global.domains.extendSchema", + "parameterOrder": [ + "domain" + ], + "parameters": { + "domain": { + "description": "Required. The domain resource name using the form: `projects/{project_id}/locations/global/domains/{domain_name}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/global/domains/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+domain}:extendSchema", + "request": { + "$ref": "ExtendSchemaRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, "get": { "description": "Gets information about a domain.", "flatPath": "v1beta1/projects/{projectsId}/locations/global/domains/{domainsId}", @@ -336,7 +364,7 @@ "type": "integer" }, "resource": { - "description": "REQUIRED: The resource for which the policy is being requested. See the operation documentation for the appropriate value for this field.", + "description": "REQUIRED: The resource for which the policy is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.", "location": "path", "pattern": "^projects/[^/]+/locations/global/domains/[^/]+$", "required": true, @@ -550,7 +578,7 @@ ], "parameters": { "resource": { - "description": "REQUIRED: The resource for which the policy is being specified. See the operation documentation for the appropriate value for this field.", + "description": "REQUIRED: The resource for which the policy is being specified. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.", "location": "path", "pattern": "^projects/[^/]+/locations/global/domains/[^/]+$", "required": true, @@ -578,7 +606,7 @@ ], "parameters": { "resource": { - "description": "REQUIRED: The resource for which the policy detail is being requested. See the operation documentation for the appropriate value for this field.", + "description": "REQUIRED: The resource for which the policy detail is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.", "location": "path", "pattern": "^projects/[^/]+/locations/global/domains/[^/]+$", "required": true, @@ -761,7 +789,7 @@ "type": "integer" }, "resource": { - "description": "REQUIRED: The resource for which the policy is being requested. See the operation documentation for the appropriate value for this field.", + "description": "REQUIRED: The resource for which the policy is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.", "location": "path", "pattern": "^projects/[^/]+/locations/global/domains/[^/]+/backups/[^/]+$", "required": true, @@ -866,7 +894,7 @@ ], "parameters": { "resource": { - "description": "REQUIRED: The resource for which the policy is being specified. See the operation documentation for the appropriate value for this field.", + "description": "REQUIRED: The resource for which the policy is being specified. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.", "location": "path", "pattern": "^projects/[^/]+/locations/global/domains/[^/]+/backups/[^/]+$", "required": true, @@ -894,7 +922,7 @@ ], "parameters": { "resource": { - "description": "REQUIRED: The resource for which the policy detail is being requested. See the operation documentation for the appropriate value for this field.", + "description": "REQUIRED: The resource for which the policy detail is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.", "location": "path", "pattern": "^projects/[^/]+/locations/global/domains/[^/]+/backups/[^/]+$", "required": true, @@ -1215,7 +1243,7 @@ "type": "integer" }, "resource": { - "description": "REQUIRED: The resource for which the policy is being requested. See the operation documentation for the appropriate value for this field.", + "description": "REQUIRED: The resource for which the policy is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.", "location": "path", "pattern": "^projects/[^/]+/locations/global/peerings/[^/]+$", "required": true, @@ -1320,7 +1348,7 @@ ], "parameters": { "resource": { - "description": "REQUIRED: The resource for which the policy is being specified. See the operation documentation for the appropriate value for this field.", + "description": "REQUIRED: The resource for which the policy is being specified. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.", "location": "path", "pattern": "^projects/[^/]+/locations/global/peerings/[^/]+$", "required": true, @@ -1348,7 +1376,7 @@ ], "parameters": { "resource": { - "description": "REQUIRED: The resource for which the policy detail is being requested. See the operation documentation for the appropriate value for this field.", + "description": "REQUIRED: The resource for which the policy detail is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.", "location": "path", "pattern": "^projects/[^/]+/locations/global/peerings/[^/]+$", "required": true, @@ -1375,7 +1403,7 @@ } } }, - "revision": "20220331", + "revision": "20220526", "rootUrl": "https://managedidentities.googleapis.com/", "schemas": { "AttachTrustRequest": { @@ -1399,6 +1427,10 @@ "readOnly": true, "type": "string" }, + "description": { + "description": "Optional. A short description of the backup.", + "type": "string" + }, "labels": { "additionalProperties": { "type": "string" @@ -1440,12 +1472,14 @@ "enum": [ "TYPE_UNSPECIFIED", "ON_DEMAND", - "SCHEDULED" + "SCHEDULED", + "SCHEMA_EXTENSION" ], "enumDescriptions": [ + "Backup type not specified.", "Backup was manually created.", - "Backup was manually created.", - "Backup was automatically created." + "Backup was automatically created.", + "Backup was taken as part of Schema Extension request." ], "readOnly": true, "type": "string" @@ -1468,7 +1502,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 Cloud Platform 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. * `user:{emailid}`: An email address that represents a specific Google account. For example, `alice@example.com` . * `serviceAccount:{emailid}`: An email address that represents a service account. For example, `my-other-app@appspot.gserviceaccount.com`. * `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. * `user:{emailid}`: An email address that represents a specific Google account. For example, `alice@example.com` . * `serviceAccount:{emailid}`: An email address that represents a service account. For example, `my-other-app@appspot.gserviceaccount.com`. * `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" }, @@ -1715,6 +1749,26 @@ }, "type": "object" }, + "ExtendSchemaRequest": { + "description": "ExtendSchemaRequest is the request message for ExtendSchema method.", + "id": "ExtendSchemaRequest", + "properties": { + "description": { + "description": "Required. Description for Schema Change.", + "type": "string" + }, + "fileContents": { + "description": "File uploaded as a byte stream input.", + "format": "byte", + "type": "string" + }, + "gcsPath": { + "description": "File stored in Cloud Storage bucket and represented in the form projects/{project_id}/buckets/{bucket_name}/objects/{object_name} File should be in the same project as the domain.", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudManagedidentitiesV1OpMetadata": { "description": "Represents the metadata of the long-running operation.", "id": "GoogleCloudManagedidentitiesV1OpMetadata", @@ -1846,7 +1900,7 @@ "type": "string" }, "instanceType": { - "description": "Optional. The instance_type of this instance of format: projects/{project_id}/locations/{location_id}/instanceTypes/{instance_type_id}. Instance Type represents a high-level tier or SKU of the service that this instance belong to. When enabled(eg: Maintenance Rollout), Rollout uses 'instance_type' along with 'software_versions' to determine whether instance needs an update or not.", + "description": "Optional. The instance_type of this instance of format: projects/{project_number}/locations/{location_id}/instanceTypes/{instance_type_id}. Instance Type represents a high-level tier or SKU of the service that this instance belong to. When enabled(eg: Maintenance Rollout), Rollout uses 'instance_type' along with 'software_versions' to determine whether instance needs an update or not.", "type": "string" }, "labels": { @@ -1875,7 +1929,7 @@ "description": "Optional. The MaintenanceSettings associated with instance." }, "name": { - "description": "Unique name of the resource. It uses the form: `projects/{project_id|project_number}/locations/{location_id}/instances/{instance_id}` Note: Either project_id or project_number can be used, but keep it consistent with other APIs (e.g. RescheduleUpdate)", + "description": "Unique name of the resource. It uses the form: `projects/{project_number}/locations/{location_id}/instances/{instance_id}` Note: This name is passed, stored and logged across the rollout system. So use of consumer project_id or any other consumer PII in the name is strongly discouraged for wipeout (go/wipeout) compliance. See go/elysium/project_ids#storage-guidance for more details.", "type": "string" }, "notificationParameters": { @@ -2646,7 +2700,7 @@ "properties": { "policy": { "$ref": "Policy", - "description": "REQUIRED: The complete policy to be applied to the `resource`. The size of the policy is limited to a few 10s of KB. An empty policy is a valid policy but certain Cloud Platform services (such as Projects) might reject them." + "description": "REQUIRED: The complete policy to be applied to the `resource`. The size of the policy is limited to a few 10s of KB. An empty policy is a valid policy but certain Google Cloud services (such as Projects) might reject them." } }, "type": "object" @@ -2727,7 +2781,7 @@ "id": "TestIamPermissionsRequest", "properties": { "permissions": { - "description": "The set of permissions to check for the `resource`. Permissions with wildcards (such as '*' or 'storage.*') are not allowed. For more information see [IAM Overview](https://cloud.google.com/iam/docs/overview#permissions).", + "description": "The set of permissions to check for the `resource`. Permissions with wildcards (such as `*` or `storage.*`) are not allowed. For more information see [IAM Overview](https://cloud.google.com/iam/docs/overview#permissions).", "items": { "type": "string" }, diff --git a/managedidentities/v1beta1/managedidentities-gen.go b/managedidentities/v1beta1/managedidentities-gen.go index d186688d914..1dab9f1311b 100644 --- a/managedidentities/v1beta1/managedidentities-gen.go +++ b/managedidentities/v1beta1/managedidentities-gen.go @@ -263,6 +263,9 @@ type Backup struct { // CreateTime: Output only. The time the backups was created. CreateTime string `json:"createTime,omitempty"` + // Description: Optional. A short description of the backup. + Description string `json:"description,omitempty"` + // Labels: Optional. Resource labels to represent user provided // metadata. Labels map[string]string `json:"labels,omitempty"` @@ -290,9 +293,11 @@ type Backup struct { // scheduled. // // Possible values: - // "TYPE_UNSPECIFIED" - Backup was manually created. + // "TYPE_UNSPECIFIED" - Backup type not specified. // "ON_DEMAND" - Backup was manually created. // "SCHEDULED" - Backup was automatically created. + // "SCHEMA_EXTENSION" - Backup was taken as part of Schema Extension + // request. Type string `json:"type,omitempty"` // UpdateTime: Output only. Last update time. @@ -337,8 +342,8 @@ type Binding struct { // (https://cloud.google.com/iam/help/conditions/resource-policies). Condition *Expr `json:"condition,omitempty"` - // Members: Specifies the principals requesting access for a Cloud - // Platform resource. `members` can have the following values: * + // Members: 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 @@ -767,6 +772,44 @@ func (s *Expr) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// ExtendSchemaRequest: ExtendSchemaRequest is the request message for +// ExtendSchema method. +type ExtendSchemaRequest struct { + // Description: Required. Description for Schema Change. + Description string `json:"description,omitempty"` + + // FileContents: File uploaded as a byte stream input. + FileContents string `json:"fileContents,omitempty"` + + // GcsPath: File stored in Cloud Storage bucket and represented in the + // form + // projects/{project_id}/buckets/{bucket_name}/objects/{object_name} + // File should be in the same project as the domain. + GcsPath string `json:"gcsPath,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Description") 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. "Description") 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 *ExtendSchemaRequest) MarshalJSON() ([]byte, error) { + type NoMethod ExtendSchemaRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // GoogleCloudManagedidentitiesV1OpMetadata: Represents the metadata of // the long-running operation. type GoogleCloudManagedidentitiesV1OpMetadata struct { @@ -923,11 +966,12 @@ type GoogleCloudSaasacceleratorManagementProvidersV1Instance struct { CreateTime string `json:"createTime,omitempty"` // InstanceType: Optional. The instance_type of this instance of format: - // projects/{project_id}/locations/{location_id}/instanceTypes/{instance_ - // type_id}. Instance Type represents a high-level tier or SKU of the - // service that this instance belong to. When enabled(eg: Maintenance - // Rollout), Rollout uses 'instance_type' along with 'software_versions' - // to determine whether instance needs an update or not. + // projects/{project_number}/locations/{location_id}/instanceTypes/{insta + // nce_type_id}. Instance Type represents a high-level tier or SKU of + // the service that this instance belong to. When enabled(eg: + // Maintenance Rollout), Rollout uses 'instance_type' along with + // 'software_versions' to determine whether instance needs an update or + // not. InstanceType string `json:"instanceType,omitempty"` // Labels: Optional. Resource labels to represent user provided @@ -952,9 +996,11 @@ type GoogleCloudSaasacceleratorManagementProvidersV1Instance struct { MaintenanceSettings *GoogleCloudSaasacceleratorManagementProvidersV1MaintenanceSettings `json:"maintenanceSettings,omitempty"` // Name: Unique name of the resource. It uses the form: - // `projects/{project_id|project_number}/locations/{location_id}/instance - // s/{instance_id}` Note: Either project_id or project_number can be - // used, but keep it consistent with other APIs (e.g. RescheduleUpdate) + // `projects/{project_number}/locations/{location_id}/instances/{instance + // _id}` Note: This name is passed, stored and logged across the rollout + // system. So use of consumer project_id or any other consumer PII in + // the name is strongly discouraged for wipeout (go/wipeout) compliance. + // See go/elysium/project_ids#storage-guidance for more details. Name string `json:"name,omitempty"` // NotificationParameters: Optional. notification_parameter are @@ -2262,7 +2308,7 @@ func (s *Schedule) MarshalJSON() ([]byte, error) { type SetIamPolicyRequest struct { // Policy: REQUIRED: The complete policy to be applied to the // `resource`. The size of the policy is limited to a few 10s of KB. An - // empty policy is a valid policy but certain Cloud Platform services + // empty policy is a valid policy but certain Google Cloud services // (such as Projects) might reject them. Policy *Policy `json:"policy,omitempty"` @@ -2389,7 +2435,7 @@ func (s *Status) MarshalJSON() ([]byte, error) { // method. type TestIamPermissionsRequest struct { // Permissions: The set of permissions to check for the `resource`. - // Permissions with wildcards (such as '*' or 'storage.*') are not + // Permissions with wildcards (such as `*` or `storage.*`) are not // allowed. For more information see IAM Overview // (https://cloud.google.com/iam/docs/overview#permissions). Permissions []string `json:"permissions,omitempty"` @@ -3619,6 +3665,149 @@ func (c *ProjectsLocationsGlobalDomainsDetachTrustCall) Do(opts ...googleapi.Cal } +// method id "managedidentities.projects.locations.global.domains.extendSchema": + +type ProjectsLocationsGlobalDomainsExtendSchemaCall struct { + s *Service + domain string + extendschemarequest *ExtendSchemaRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// ExtendSchema: Extend Schema for Domain +// +// - domain: The domain resource name using the form: +// `projects/{project_id}/locations/global/domains/{domain_name}`. +func (r *ProjectsLocationsGlobalDomainsService) ExtendSchema(domain string, extendschemarequest *ExtendSchemaRequest) *ProjectsLocationsGlobalDomainsExtendSchemaCall { + c := &ProjectsLocationsGlobalDomainsExtendSchemaCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.domain = domain + c.extendschemarequest = extendschemarequest + 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 *ProjectsLocationsGlobalDomainsExtendSchemaCall) Fields(s ...googleapi.Field) *ProjectsLocationsGlobalDomainsExtendSchemaCall { + 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 *ProjectsLocationsGlobalDomainsExtendSchemaCall) Context(ctx context.Context) *ProjectsLocationsGlobalDomainsExtendSchemaCall { + 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 *ProjectsLocationsGlobalDomainsExtendSchemaCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsGlobalDomainsExtendSchemaCall) 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.extendschemarequest) + 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/{+domain}:extendSchema") + 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{ + "domain": c.domain, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "managedidentities.projects.locations.global.domains.extendSchema" 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 *ProjectsLocationsGlobalDomainsExtendSchemaCall) 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, &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, 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": "Extend Schema for Domain", + // "flatPath": "v1beta1/projects/{projectsId}/locations/global/domains/{domainsId}:extendSchema", + // "httpMethod": "POST", + // "id": "managedidentities.projects.locations.global.domains.extendSchema", + // "parameterOrder": [ + // "domain" + // ], + // "parameters": { + // "domain": { + // "description": "Required. The domain resource name using the form: `projects/{project_id}/locations/global/domains/{domain_name}`", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/global/domains/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1beta1/{+domain}:extendSchema", + // "request": { + // "$ref": "ExtendSchemaRequest" + // }, + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + // method id "managedidentities.projects.locations.global.domains.get": type ProjectsLocationsGlobalDomainsGetCall struct { @@ -3782,8 +3971,9 @@ type ProjectsLocationsGlobalDomainsGetIamPolicyCall struct { // set. // // - resource: REQUIRED: The resource for which the policy is being -// requested. See the operation documentation for the appropriate -// value for this field. +// requested. See Resource names +// (https://cloud.google.com/apis/design/resource_names) for the +// appropriate value for this field. func (r *ProjectsLocationsGlobalDomainsService) GetIamPolicy(resource string) *ProjectsLocationsGlobalDomainsGetIamPolicyCall { c := &ProjectsLocationsGlobalDomainsGetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.resource = resource @@ -3922,7 +4112,7 @@ func (c *ProjectsLocationsGlobalDomainsGetIamPolicyCall) Do(opts ...googleapi.Ca // "type": "integer" // }, // "resource": { - // "description": "REQUIRED: The resource for which the policy is being requested. See the operation documentation for the appropriate value for this field.", + // "description": "REQUIRED: The resource for which the policy is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.", // "location": "path", // "pattern": "^projects/[^/]+/locations/global/domains/[^/]+$", // "required": true, @@ -4916,8 +5106,9 @@ type ProjectsLocationsGlobalDomainsSetIamPolicyCall struct { // `INVALID_ARGUMENT`, and `PERMISSION_DENIED` errors. // // - resource: REQUIRED: The resource for which the policy is being -// specified. See the operation documentation for the appropriate -// value for this field. +// specified. See Resource names +// (https://cloud.google.com/apis/design/resource_names) for the +// appropriate value for this field. func (r *ProjectsLocationsGlobalDomainsService) SetIamPolicy(resource string, setiampolicyrequest *SetIamPolicyRequest) *ProjectsLocationsGlobalDomainsSetIamPolicyCall { c := &ProjectsLocationsGlobalDomainsSetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.resource = resource @@ -5025,7 +5216,7 @@ func (c *ProjectsLocationsGlobalDomainsSetIamPolicyCall) Do(opts ...googleapi.Ca // ], // "parameters": { // "resource": { - // "description": "REQUIRED: The resource for which the policy is being specified. See the operation documentation for the appropriate value for this field.", + // "description": "REQUIRED: The resource for which the policy is being specified. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.", // "location": "path", // "pattern": "^projects/[^/]+/locations/global/domains/[^/]+$", // "required": true, @@ -5065,7 +5256,8 @@ type ProjectsLocationsGlobalDomainsTestIamPermissionsCall struct { // operation may "fail open" without warning. // // - resource: REQUIRED: The resource for which the policy detail is -// being requested. See the operation documentation for the +// being requested. See Resource names +// (https://cloud.google.com/apis/design/resource_names) for the // appropriate value for this field. func (r *ProjectsLocationsGlobalDomainsService) TestIamPermissions(resource string, testiampermissionsrequest *TestIamPermissionsRequest) *ProjectsLocationsGlobalDomainsTestIamPermissionsCall { c := &ProjectsLocationsGlobalDomainsTestIamPermissionsCall{s: r.s, urlParams_: make(gensupport.URLParams)} @@ -5174,7 +5366,7 @@ func (c *ProjectsLocationsGlobalDomainsTestIamPermissionsCall) Do(opts ...google // ], // "parameters": { // "resource": { - // "description": "REQUIRED: The resource for which the policy detail is being requested. See the operation documentation for the appropriate value for this field.", + // "description": "REQUIRED: The resource for which the policy detail is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.", // "location": "path", // "pattern": "^projects/[^/]+/locations/global/domains/[^/]+$", // "required": true, @@ -5955,8 +6147,9 @@ type ProjectsLocationsGlobalDomainsBackupsGetIamPolicyCall struct { // set. // // - resource: REQUIRED: The resource for which the policy is being -// requested. See the operation documentation for the appropriate -// value for this field. +// requested. See Resource names +// (https://cloud.google.com/apis/design/resource_names) for the +// appropriate value for this field. func (r *ProjectsLocationsGlobalDomainsBackupsService) GetIamPolicy(resource string) *ProjectsLocationsGlobalDomainsBackupsGetIamPolicyCall { c := &ProjectsLocationsGlobalDomainsBackupsGetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.resource = resource @@ -6095,7 +6288,7 @@ func (c *ProjectsLocationsGlobalDomainsBackupsGetIamPolicyCall) Do(opts ...googl // "type": "integer" // }, // "resource": { - // "description": "REQUIRED: The resource for which the policy is being requested. See the operation documentation for the appropriate value for this field.", + // "description": "REQUIRED: The resource for which the policy is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.", // "location": "path", // "pattern": "^projects/[^/]+/locations/global/domains/[^/]+/backups/[^/]+$", // "required": true, @@ -6510,8 +6703,9 @@ type ProjectsLocationsGlobalDomainsBackupsSetIamPolicyCall struct { // `INVALID_ARGUMENT`, and `PERMISSION_DENIED` errors. // // - resource: REQUIRED: The resource for which the policy is being -// specified. See the operation documentation for the appropriate -// value for this field. +// specified. See Resource names +// (https://cloud.google.com/apis/design/resource_names) for the +// appropriate value for this field. func (r *ProjectsLocationsGlobalDomainsBackupsService) SetIamPolicy(resource string, setiampolicyrequest *SetIamPolicyRequest) *ProjectsLocationsGlobalDomainsBackupsSetIamPolicyCall { c := &ProjectsLocationsGlobalDomainsBackupsSetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.resource = resource @@ -6619,7 +6813,7 @@ func (c *ProjectsLocationsGlobalDomainsBackupsSetIamPolicyCall) Do(opts ...googl // ], // "parameters": { // "resource": { - // "description": "REQUIRED: The resource for which the policy is being specified. See the operation documentation for the appropriate value for this field.", + // "description": "REQUIRED: The resource for which the policy is being specified. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.", // "location": "path", // "pattern": "^projects/[^/]+/locations/global/domains/[^/]+/backups/[^/]+$", // "required": true, @@ -6659,7 +6853,8 @@ type ProjectsLocationsGlobalDomainsBackupsTestIamPermissionsCall struct { // operation may "fail open" without warning. // // - resource: REQUIRED: The resource for which the policy detail is -// being requested. See the operation documentation for the +// being requested. See Resource names +// (https://cloud.google.com/apis/design/resource_names) for the // appropriate value for this field. func (r *ProjectsLocationsGlobalDomainsBackupsService) TestIamPermissions(resource string, testiampermissionsrequest *TestIamPermissionsRequest) *ProjectsLocationsGlobalDomainsBackupsTestIamPermissionsCall { c := &ProjectsLocationsGlobalDomainsBackupsTestIamPermissionsCall{s: r.s, urlParams_: make(gensupport.URLParams)} @@ -6768,7 +6963,7 @@ func (c *ProjectsLocationsGlobalDomainsBackupsTestIamPermissionsCall) Do(opts .. // ], // "parameters": { // "resource": { - // "description": "REQUIRED: The resource for which the policy detail is being requested. See the operation documentation for the appropriate value for this field.", + // "description": "REQUIRED: The resource for which the policy detail is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.", // "location": "path", // "pattern": "^projects/[^/]+/locations/global/domains/[^/]+/backups/[^/]+$", // "required": true, @@ -8258,8 +8453,9 @@ type ProjectsLocationsGlobalPeeringsGetIamPolicyCall struct { // set. // // - resource: REQUIRED: The resource for which the policy is being -// requested. See the operation documentation for the appropriate -// value for this field. +// requested. See Resource names +// (https://cloud.google.com/apis/design/resource_names) for the +// appropriate value for this field. func (r *ProjectsLocationsGlobalPeeringsService) GetIamPolicy(resource string) *ProjectsLocationsGlobalPeeringsGetIamPolicyCall { c := &ProjectsLocationsGlobalPeeringsGetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.resource = resource @@ -8398,7 +8594,7 @@ func (c *ProjectsLocationsGlobalPeeringsGetIamPolicyCall) Do(opts ...googleapi.C // "type": "integer" // }, // "resource": { - // "description": "REQUIRED: The resource for which the policy is being requested. See the operation documentation for the appropriate value for this field.", + // "description": "REQUIRED: The resource for which the policy is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.", // "location": "path", // "pattern": "^projects/[^/]+/locations/global/peerings/[^/]+$", // "required": true, @@ -8814,8 +9010,9 @@ type ProjectsLocationsGlobalPeeringsSetIamPolicyCall struct { // `INVALID_ARGUMENT`, and `PERMISSION_DENIED` errors. // // - resource: REQUIRED: The resource for which the policy is being -// specified. See the operation documentation for the appropriate -// value for this field. +// specified. See Resource names +// (https://cloud.google.com/apis/design/resource_names) for the +// appropriate value for this field. func (r *ProjectsLocationsGlobalPeeringsService) SetIamPolicy(resource string, setiampolicyrequest *SetIamPolicyRequest) *ProjectsLocationsGlobalPeeringsSetIamPolicyCall { c := &ProjectsLocationsGlobalPeeringsSetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.resource = resource @@ -8923,7 +9120,7 @@ func (c *ProjectsLocationsGlobalPeeringsSetIamPolicyCall) Do(opts ...googleapi.C // ], // "parameters": { // "resource": { - // "description": "REQUIRED: The resource for which the policy is being specified. See the operation documentation for the appropriate value for this field.", + // "description": "REQUIRED: The resource for which the policy is being specified. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.", // "location": "path", // "pattern": "^projects/[^/]+/locations/global/peerings/[^/]+$", // "required": true, @@ -8963,7 +9160,8 @@ type ProjectsLocationsGlobalPeeringsTestIamPermissionsCall struct { // operation may "fail open" without warning. // // - resource: REQUIRED: The resource for which the policy detail is -// being requested. See the operation documentation for the +// being requested. See Resource names +// (https://cloud.google.com/apis/design/resource_names) for the // appropriate value for this field. func (r *ProjectsLocationsGlobalPeeringsService) TestIamPermissions(resource string, testiampermissionsrequest *TestIamPermissionsRequest) *ProjectsLocationsGlobalPeeringsTestIamPermissionsCall { c := &ProjectsLocationsGlobalPeeringsTestIamPermissionsCall{s: r.s, urlParams_: make(gensupport.URLParams)} @@ -9072,7 +9270,7 @@ func (c *ProjectsLocationsGlobalPeeringsTestIamPermissionsCall) Do(opts ...googl // ], // "parameters": { // "resource": { - // "description": "REQUIRED: The resource for which the policy detail is being requested. See the operation documentation for the appropriate value for this field.", + // "description": "REQUIRED: The resource for which the policy detail is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.", // "location": "path", // "pattern": "^projects/[^/]+/locations/global/peerings/[^/]+$", // "required": true, diff --git a/servicedirectory/v1beta1/servicedirectory-api.json b/servicedirectory/v1beta1/servicedirectory-api.json index 051c90c4a47..d96d0d8d914 100644 --- a/servicedirectory/v1beta1/servicedirectory-api.json +++ b/servicedirectory/v1beta1/servicedirectory-api.json @@ -802,7 +802,7 @@ ], "parameters": { "filter": { - "description": "Optional. The filter to list results by. General `filter` string syntax: ` ()` * `` can be `name`, `address`, `port`, or `metadata.` for map field * `` can be `\u003c`, `\u003e`, `\u003c=`, `\u003e=`, `!=`, `=`, `:`. Of which `:` means `HAS`, and is roughly the same as `=` * `` must be the same data type as field * `` can be `AND`, `OR`, `NOT` Examples of valid filters: * `metadata.owner` returns endpoints that have a metadata with the key `owner`, this is the same as `metadata:owner` * `metadata.protocol=gRPC` returns endpoints that have key/value `protocol=gRPC` * `address=192.108.1.105` returns endpoints that have this address * `port\u003e8080` returns endpoints that have port number larger than 8080 * `name\u003eprojects/my-project/locations/us-east1/namespaces/my-namespace/services/my-service/endpoints/endpoint-c` returns endpoints that have name that is alphabetically later than the string, so \"endpoint-e\" is returned but \"endpoint-a\" is not * `metadata.owner!=sd AND metadata.foo=bar` returns endpoints that have `owner` in metadata key but value is not `sd` AND have key/value `foo=bar` * `doesnotexist.foo=bar` returns an empty list. Note that endpoint doesn't have a field called \"doesnotexist\". Since the filter does not match any endpoints, it returns no results For more information about filtering, see [API Filtering](https://aip.dev/160).", + "description": "Optional. The filter to list results by. General `filter` string syntax: ` ()` * `` can be `name`, `address`, `port`, `metadata.` for map field, or `attributes.` for attributes field * `` can be `\u003c`, `\u003e`, `\u003c=`, `\u003e=`, `!=`, `=`, `:`. Of which `:` means `HAS`, and is roughly the same as `=` * `` must be the same data type as field * `` can be `AND`, `OR`, `NOT` Examples of valid filters: * `metadata.owner` returns endpoints that have a metadata with the key `owner`, this is the same as `metadata:owner` * `metadata.protocol=gRPC` returns endpoints that have key/value `protocol=gRPC` * `address=192.108.1.105` returns endpoints that have this address * `port\u003e8080` returns endpoints that have port number larger than 8080 * `name\u003eprojects/my-project/locations/us-east1/namespaces/my-namespace/services/my-service/endpoints/endpoint-c` returns endpoints that have name that is alphabetically later than the string, so \"endpoint-e\" is returned but \"endpoint-a\" is not * `metadata.owner!=sd AND metadata.foo=bar` returns endpoints that have `owner` in metadata key but value is not `sd` AND have key/value `foo=bar` * `doesnotexist.foo=bar` returns an empty list. Note that endpoint doesn't have a field called \"doesnotexist\". Since the filter does not match any endpoints, it returns no results * `attributes.kubernetes_resource_type=KUBERNETES_RESOURCE_TYPE_CLUSTER_ IP` returns endpoints with the corresponding kubernetes_resource_type For more information about filtering, see [API Filtering](https://aip.dev/160).", "location": "query", "type": "string" }, @@ -883,7 +883,7 @@ } } }, - "revision": "20220518", + "revision": "20220526", "rootUrl": "https://servicedirectory.googleapis.com/", "schemas": { "Binding": { diff --git a/servicedirectory/v1beta1/servicedirectory-gen.go b/servicedirectory/v1beta1/servicedirectory-gen.go index 3fca0f139bd..6e71b7cb248 100644 --- a/servicedirectory/v1beta1/servicedirectory-gen.go +++ b/servicedirectory/v1beta1/servicedirectory-gen.go @@ -4591,16 +4591,16 @@ func (r *ProjectsLocationsNamespacesServicesEndpointsService) List(parent string // Filter sets the optional parameter "filter": The filter to list // results by. General `filter` string syntax: ` ()` * `` can be `name`, -// `address`, `port`, or `metadata.` for map field * `` can be `<`, `>`, -// `<=`, `>=`, `!=`, `=`, `:`. Of which `:` means `HAS`, and is roughly -// the same as `=` * `` must be the same data type as field * `` can be -// `AND`, `OR`, `NOT` Examples of valid filters: * `metadata.owner` -// returns endpoints that have a metadata with the key `owner`, this is -// the same as `metadata:owner` * `metadata.protocol=gRPC` returns -// endpoints that have key/value `protocol=gRPC` * -// `address=192.108.1.105` returns endpoints that have this address * -// `port>8080` returns endpoints that have port number larger than 8080 -// * +// `address`, `port`, `metadata.` for map field, or `attributes.` for +// attributes field * `` can be `<`, `>`, `<=`, `>=`, `!=`, `=`, `:`. Of +// which `:` means `HAS`, and is roughly the same as `=` * `` must be +// the same data type as field * `` can be `AND`, `OR`, `NOT` Examples +// of valid filters: * `metadata.owner` returns endpoints that have a +// metadata with the key `owner`, this is the same as `metadata:owner` * +// `metadata.protocol=gRPC` returns endpoints that have key/value +// `protocol=gRPC` * `address=192.108.1.105` returns endpoints that have +// this address * `port>8080` returns endpoints that have port number +// larger than 8080 * // `name>projects/my-project/locations/us-east1/namespaces/my-namespace/s // ervices/my-service/endpoints/endpoint-c` returns endpoints that have // name that is alphabetically later than the string, so "endpoint-e" is @@ -4609,8 +4609,11 @@ func (r *ProjectsLocationsNamespacesServicesEndpointsService) List(parent string // but value is not `sd` AND have key/value `foo=bar` * // `doesnotexist.foo=bar` returns an empty list. Note that endpoint // doesn't have a field called "doesnotexist". Since the filter does not -// match any endpoints, it returns no results For more information about -// filtering, see API Filtering (https://aip.dev/160). +// match any endpoints, it returns no results * +// `attributes.kubernetes_resource_type=KUBERNETES_RESOURCE_TYPE_CLUSTER_ +// IP` returns endpoints with the corresponding +// kubernetes_resource_type For more information about filtering, see +// API Filtering (https://aip.dev/160). func (c *ProjectsLocationsNamespacesServicesEndpointsListCall) Filter(filter string) *ProjectsLocationsNamespacesServicesEndpointsListCall { c.urlParams_.Set("filter", filter) return c @@ -4749,7 +4752,7 @@ func (c *ProjectsLocationsNamespacesServicesEndpointsListCall) Do(opts ...google // ], // "parameters": { // "filter": { - // "description": "Optional. The filter to list results by. General `filter` string syntax: ` ()` * `` can be `name`, `address`, `port`, or `metadata.` for map field * `` can be `\u003c`, `\u003e`, `\u003c=`, `\u003e=`, `!=`, `=`, `:`. Of which `:` means `HAS`, and is roughly the same as `=` * `` must be the same data type as field * `` can be `AND`, `OR`, `NOT` Examples of valid filters: * `metadata.owner` returns endpoints that have a metadata with the key `owner`, this is the same as `metadata:owner` * `metadata.protocol=gRPC` returns endpoints that have key/value `protocol=gRPC` * `address=192.108.1.105` returns endpoints that have this address * `port\u003e8080` returns endpoints that have port number larger than 8080 * `name\u003eprojects/my-project/locations/us-east1/namespaces/my-namespace/services/my-service/endpoints/endpoint-c` returns endpoints that have name that is alphabetically later than the string, so \"endpoint-e\" is returned but \"endpoint-a\" is not * `metadata.owner!=sd AND metadata.foo=bar` returns endpoints that have `owner` in metadata key but value is not `sd` AND have key/value `foo=bar` * `doesnotexist.foo=bar` returns an empty list. Note that endpoint doesn't have a field called \"doesnotexist\". Since the filter does not match any endpoints, it returns no results For more information about filtering, see [API Filtering](https://aip.dev/160).", + // "description": "Optional. The filter to list results by. General `filter` string syntax: ` ()` * `` can be `name`, `address`, `port`, `metadata.` for map field, or `attributes.` for attributes field * `` can be `\u003c`, `\u003e`, `\u003c=`, `\u003e=`, `!=`, `=`, `:`. Of which `:` means `HAS`, and is roughly the same as `=` * `` must be the same data type as field * `` can be `AND`, `OR`, `NOT` Examples of valid filters: * `metadata.owner` returns endpoints that have a metadata with the key `owner`, this is the same as `metadata:owner` * `metadata.protocol=gRPC` returns endpoints that have key/value `protocol=gRPC` * `address=192.108.1.105` returns endpoints that have this address * `port\u003e8080` returns endpoints that have port number larger than 8080 * `name\u003eprojects/my-project/locations/us-east1/namespaces/my-namespace/services/my-service/endpoints/endpoint-c` returns endpoints that have name that is alphabetically later than the string, so \"endpoint-e\" is returned but \"endpoint-a\" is not * `metadata.owner!=sd AND metadata.foo=bar` returns endpoints that have `owner` in metadata key but value is not `sd` AND have key/value `foo=bar` * `doesnotexist.foo=bar` returns an empty list. Note that endpoint doesn't have a field called \"doesnotexist\". Since the filter does not match any endpoints, it returns no results * `attributes.kubernetes_resource_type=KUBERNETES_RESOURCE_TYPE_CLUSTER_ IP` returns endpoints with the corresponding kubernetes_resource_type For more information about filtering, see [API Filtering](https://aip.dev/160).", // "location": "query", // "type": "string" // }, diff --git a/servicenetworking/v1/servicenetworking-api.json b/servicenetworking/v1/servicenetworking-api.json index 8f5af4e4e92..97304e0850a 100644 --- a/servicenetworking/v1/servicenetworking-api.json +++ b/servicenetworking/v1/servicenetworking-api.json @@ -865,7 +865,7 @@ } } }, - "revision": "20220513", + "revision": "20220530", "rootUrl": "https://servicenetworking.googleapis.com/", "schemas": { "AddDnsRecordSetMetadata": { @@ -979,6 +979,11 @@ "description": "Optional. The IAM permission check determines whether the consumer project has 'servicenetworking.services.use' permission or not.", "type": "boolean" }, + "computeIdempotencyWindow": { + "description": "Optional. Specifies a custom time bucket for Arcus subnetwork request idempotency. If two equivalent concurrent requests are made, Arcus will know to ignore the request if it has already been completed or is in progress. Only requests with matching compute_idempotency_window have guaranteed idempotency. Changing this time window between requests results in undefined behavior. Zero (or empty) value with custom_compute_idempotency_window=true specifies no idempotency (i.e. no request ID is provided to Arcus). Maximum value of 14 days (enforced by Arcus limit). For more information on how to use, see: go/revisit-sn-idempotency-window", + "format": "google-duration", + "type": "string" + }, "consumer": { "description": "Required. A resource that represents the service consumer, such as `projects/123456`. The project number can be different from the value in the consumer network parameter. For example, the network might be part of a Shared VPC network. In those cases, Service Networking validates that this resource belongs to that Shared VPC.", "type": "string" @@ -1035,11 +1040,15 @@ "type": "string" }, "subnetworkUsers": { - "description": "A list of members that are granted the `compute.networkUser` role on the subnet.", + "description": "A list of members that are granted the `roles/servicenetworking.subnetworkAdmin` role on the subnet.", "items": { "type": "string" }, "type": "array" + }, + "useCustomComputeIdempotencyWindow": { + "description": "Optional. Specifies if Service Networking should use a custom time bucket for Arcus idempotency. If false, Service Networking uses a 300 second (5 minute) Arcus idempotency window. If true, Service Networking uses a custom idempotency window provided by the user in field compute_idempotency_window. For more information on how to use, see: go/revisit-sn-idempotency-window", + "type": "boolean" } }, "type": "object" diff --git a/servicenetworking/v1/servicenetworking-gen.go b/servicenetworking/v1/servicenetworking-gen.go index f04ce08627f..bc3c4dc3bcd 100644 --- a/servicenetworking/v1/servicenetworking-gen.go +++ b/servicenetworking/v1/servicenetworking-gen.go @@ -472,6 +472,19 @@ type AddSubnetworkRequest struct { // 'servicenetworking.services.use' permission or not. CheckServiceNetworkingUsePermission bool `json:"checkServiceNetworkingUsePermission,omitempty"` + // ComputeIdempotencyWindow: Optional. Specifies a custom time bucket + // for Arcus subnetwork request idempotency. If two equivalent + // concurrent requests are made, Arcus will know to ignore the request + // if it has already been completed or is in progress. Only requests + // with matching compute_idempotency_window have guaranteed idempotency. + // Changing this time window between requests results in undefined + // behavior. Zero (or empty) value with + // custom_compute_idempotency_window=true specifies no idempotency (i.e. + // no request ID is provided to Arcus). Maximum value of 14 days + // (enforced by Arcus limit). For more information on how to use, see: + // go/revisit-sn-idempotency-window + ComputeIdempotencyWindow string `json:"computeIdempotencyWindow,omitempty"` + // Consumer: Required. A resource that represents the service consumer, // such as `projects/123456`. The project number can be different from // the value in the consumer network parameter. For example, the network @@ -549,9 +562,18 @@ type AddSubnetworkRequest struct { Subnetwork string `json:"subnetwork,omitempty"` // SubnetworkUsers: A list of members that are granted the - // `compute.networkUser` role on the subnet. + // `roles/servicenetworking.subnetworkAdmin` role on the subnet. SubnetworkUsers []string `json:"subnetworkUsers,omitempty"` + // UseCustomComputeIdempotencyWindow: Optional. Specifies if Service + // Networking should use a custom time bucket for Arcus idempotency. If + // false, Service Networking uses a 300 second (5 minute) Arcus + // idempotency window. If true, Service Networking uses a custom + // idempotency window provided by the user in field + // compute_idempotency_window. For more information on how to use, see: + // go/revisit-sn-idempotency-window + UseCustomComputeIdempotencyWindow bool `json:"useCustomComputeIdempotencyWindow,omitempty"` + // ForceSendFields is a list of field names (e.g. // "CheckServiceNetworkingUsePermission") to unconditionally include in // API requests. By default, fields with empty or default values are