diff --git a/CHANGES.md b/CHANGES.md index 95c34312ec1..6d827a63530 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -1,5 +1,19 @@ # Changes +## [0.130.0](https://github.com/googleapis/google-api-go-client/compare/v0.129.0...v0.130.0) (2023-07-05) + + +### Features + +* **all:** Auto-regenerate discovery clients ([#2041](https://github.com/googleapis/google-api-go-client/issues/2041)) ([dc4d425](https://github.com/googleapis/google-api-go-client/commit/dc4d425ae1e31ef6a9c9736dd32adbc530e54baa)) +* **all:** Auto-regenerate discovery clients ([#2043](https://github.com/googleapis/google-api-go-client/issues/2043)) ([7a8816b](https://github.com/googleapis/google-api-go-client/commit/7a8816b1c4c0a6ac0e36ae07bc1d6737c13e7a4d)) +* **all:** Auto-regenerate discovery clients ([#2044](https://github.com/googleapis/google-api-go-client/issues/2044)) ([380eafd](https://github.com/googleapis/google-api-go-client/commit/380eafd8ae92e184a2621c9ae73bc967e6829fec)) +* **all:** Auto-regenerate discovery clients ([#2045](https://github.com/googleapis/google-api-go-client/issues/2045)) ([50d3e98](https://github.com/googleapis/google-api-go-client/commit/50d3e988448442d7eada2a85ad37596388beaa48)) +* **all:** Auto-regenerate discovery clients ([#2046](https://github.com/googleapis/google-api-go-client/issues/2046)) ([6711565](https://github.com/googleapis/google-api-go-client/commit/6711565d141865432607cc49f0bb08486d0a5812)) +* **all:** Auto-regenerate discovery clients ([#2049](https://github.com/googleapis/google-api-go-client/issues/2049)) ([5e08be4](https://github.com/googleapis/google-api-go-client/commit/5e08be4f052b052c1d2e25f8f762d028c1527c4e)) +* **all:** Auto-regenerate discovery clients ([#2050](https://github.com/googleapis/google-api-go-client/issues/2050)) ([d79dfc2](https://github.com/googleapis/google-api-go-client/commit/d79dfc2722ff39e5674d3d66bd86496b63dc8204)) +* **all:** Auto-regenerate discovery clients ([#2051](https://github.com/googleapis/google-api-go-client/issues/2051)) ([5ec0817](https://github.com/googleapis/google-api-go-client/commit/5ec0817bc6a56f87b5727c9c845f0d30734469b0)) + ## [0.129.0](https://github.com/googleapis/google-api-go-client/compare/v0.128.0...v0.129.0) (2023-06-27) diff --git a/acceleratedmobilepageurl/v1/acceleratedmobilepageurl-api.json b/acceleratedmobilepageurl/v1/acceleratedmobilepageurl-api.json index c439b36caad..67f336331d3 100644 --- a/acceleratedmobilepageurl/v1/acceleratedmobilepageurl-api.json +++ b/acceleratedmobilepageurl/v1/acceleratedmobilepageurl-api.json @@ -115,7 +115,7 @@ } } }, - "revision": "20200916", + "revision": "20230701", "rootUrl": "https://acceleratedmobilepageurl.googleapis.com/", "schemas": { "AmpUrl": { @@ -151,6 +151,14 @@ "URL_IS_VALID_AMP", "URL_IS_INVALID_AMP" ], + "enumDeprecated": [ + false, + false, + false, + false, + true, + false + ], "enumDescriptions": [ "Not specified error.", "Indicates the requested URL is not found in the index, possibly because it's unable to be found, not able to be accessed by Googlebot, or some other error.", diff --git a/adsense/v2/adsense-api.json b/adsense/v2/adsense-api.json index 84da447caf7..540e51dc128 100644 --- a/adsense/v2/adsense-api.json +++ b/adsense/v2/adsense-api.json @@ -1844,7 +1844,7 @@ } } }, - "revision": "20230612", + "revision": "20230703", "rootUrl": "https://adsense.googleapis.com/", "schemas": { "Account": { @@ -2099,6 +2099,14 @@ "MATCHED_CONTENT", "LINK" ], + "enumDeprecated": [ + false, + false, + false, + false, + false, + true + ], "enumDescriptions": [ "Unspecified ad unit type.", "Display ad unit.", diff --git a/androidenterprise/v1/androidenterprise-api.json b/androidenterprise/v1/androidenterprise-api.json index 436562a4136..b708ab80eea 100644 --- a/androidenterprise/v1/androidenterprise-api.json +++ b/androidenterprise/v1/androidenterprise-api.json @@ -2649,7 +2649,7 @@ } } }, - "revision": "20230515", + "revision": "20230703", "rootUrl": "https://androidenterprise.googleapis.com/", "schemas": { "Administrator": { @@ -4004,6 +4004,7 @@ "id": "Policy", "properties": { "autoUpdatePolicy": { + "deprecated": true, "description": "Recommended alternative: autoUpdateMode which is set per app, provides greater flexibility around update frequency. When autoUpdateMode is set to AUTO_UPDATE_POSTPONED or AUTO_UPDATE_HIGH_PRIORITY, this field has no effect. \"choiceToTheUser\" allows the device's user to configure the app update policy. \"always\" enables auto updates. \"never\" disables auto updates. \"wifiOnly\" enables auto updates only when the device is connected to wifi.", "enum": [ "autoUpdatePolicyUnspecified", diff --git a/androidmanagement/v1/androidmanagement-api.json b/androidmanagement/v1/androidmanagement-api.json index 0e6a6ef3a09..8cfb3c2f098 100644 --- a/androidmanagement/v1/androidmanagement-api.json +++ b/androidmanagement/v1/androidmanagement-api.json @@ -1066,7 +1066,7 @@ } } }, - "revision": "20230529", + "revision": "20230628", "rootUrl": "https://androidmanagement.googleapis.com/", "schemas": { "AdbShellCommandEvent": { @@ -1753,6 +1753,20 @@ ], "type": "string" }, + "userFacingType": { + "description": "Whether the app is user facing.", + "enum": [ + "USER_FACING_TYPE_UNSPECIFIED", + "NOT_USER_FACING", + "USER_FACING" + ], + "enumDescriptions": [ + "App user facing type is unspecified.", + "App is not user facing.", + "App is user facing." + ], + "type": "string" + }, "versionCode": { "description": "The app version code, which can be used to determine whether one version is more recent than another.", "format": "int32", @@ -2477,6 +2491,38 @@ "description": "Covers controls for device connectivity such as Wi-Fi, USB data access, keyboard/mouse connections, and more.", "id": "DeviceConnectivityManagement", "properties": { + "configureWifi": { + "description": "Controls Wi-Fi configuring privileges. Based on the option set, user will have either full or limited or no control in configuring Wi-Fi networks.", + "enum": [ + "CONFIGURE_WIFI_UNSPECIFIED", + "ALLOW_CONFIGURING_WIFI", + "DISALLOW_ADD_WIFI_CONFIG", + "DISALLOW_CONFIGURING_WIFI" + ], + "enumDescriptions": [ + "Unspecified. Defaults to ALLOW_CONFIGURING_WIFI unless wifiConfigDisabled is set to true. If wifiConfigDisabled is set to true, this is equivalent to DISALLOW_CONFIGURING_WIFI.", + "The user is allowed to configure Wi-Fi. wifiConfigDisabled is ignored.", + "Adding new Wi-Fi configurations is disallowed. The user is only able to switch between already configured networks. Supported on Android 13 and above, on fully managed devices and work profiles on company-owned devices. If the setting is not supported, ALLOW_CONFIGURING_WIFI is set. A nonComplianceDetail with API_LEVEL is reported if the Android version is less than 13. wifiConfigDisabled is ignored.", + "Disallows configuring Wi-Fi networks. The setting wifiConfigDisabled is ignored when this value is set. Supported on fully managed devices and work profile on company-owned devices, on all supported API levels. For fully managed devices, setting this removes all configured networks and retains only the networks configured using openNetworkConfiguration policy. For work profiles on company-owned devices, existing configured networks are not affected and the user is not allowed to add, remove, or modify Wi-Fi networks. Note: If a network connection can't be made at boot time and configuring Wi-Fi is disabled then network escape hatch will be shown in order to refresh the device policy (see networkEscapeHatchEnabled)." + ], + "type": "string" + }, + "tetheringSettings": { + "description": "Controls tethering settings. Based on the value set, the user is partially or fully disallowed from using different forms of tethering.", + "enum": [ + "TETHERING_SETTINGS_UNSPECIFIED", + "ALLOW_ALL_TETHERING", + "DISALLOW_WIFI_TETHERING", + "DISALLOW_ALL_TETHERING" + ], + "enumDescriptions": [ + "Unspecified. Defaults to ALLOW_ALL_TETHERING unless tetheringConfigDisabled is set to true. If tetheringConfigDisabled is set to true, this is equivalent to DISALLOW_ALL_TETHERING.", + "Allows configuration and use of all forms of tethering. tetheringConfigDisabled is ignored.", + "Disallows the user from using Wi-Fi tethering. Supported on company owned devices running Android 13 and above. If the setting is not supported, ALLOW_ALL_TETHERING will be set. A nonComplianceDetail with API_LEVEL is reported if the Android version is less than 13. tetheringConfigDisabled is ignored.", + "Disallows all forms of tethering. Supported on fully managed devices and work profile on company-owned devices, on all supported android versions. The setting tetheringConfigDisabled is ignored." + ], + "type": "string" + }, "usbDataAccess": { "description": "Controls what files and/or data can be transferred via USB. Supported only on company-owned devices.", "enum": [ @@ -2492,6 +2538,43 @@ "When set, all types of USB data transfers are prohibited. Supported for devices running Android 12 or above with USB HAL 1.3 or above. If the setting is not supported, DISALLOW_USB_FILE_TRANSFER will be set. A nonComplianceDetail with API_LEVEL is reported if the Android version is less than 12. A nonComplianceDetail with DEVICE_INCOMPATIBLE is reported if the device does not have USB HAL 1.3 or above. usbFileTransferDisabled is ignored." ], "type": "string" + }, + "wifiDirectSettings": { + "description": "Controls configuring and using Wi-Fi direct settings. Supported on company-owned devices running Android 13 and above.", + "enum": [ + "WIFI_DIRECT_SETTINGS_UNSPECIFIED", + "ALLOW_WIFI_DIRECT", + "DISALLOW_WIFI_DIRECT" + ], + "enumDescriptions": [ + "Unspecified. Defaults to ALLOW_WIFI_DIRECT", + "The user is allowed to use Wi-Fi direct.", + "The user is not allowed to use Wi-Fi direct. A nonComplianceDetail with API_LEVEL is reported if the Android version is less than 13." + ], + "type": "string" + } + }, + "type": "object" + }, + "DeviceRadioState": { + "description": "Controls for device radio settings.", + "id": "DeviceRadioState", + "properties": { + "wifiState": { + "description": "Controls current state of Wi-Fi and if user can change its state.", + "enum": [ + "WIFI_STATE_UNSPECIFIED", + "WIFI_STATE_USER_CHOICE", + "WIFI_ENABLED", + "WIFI_DISABLED" + ], + "enumDescriptions": [ + "Unspecified. Defaults to WIFI_STATE_USER_CHOICE", + "User is allowed to enable/disable Wi-Fi.", + "Wi-Fi is on and the user is not allowed to turn it off. A nonComplianceDetail with API_LEVEL is reported if the Android version is less than 13.", + "Wi-Fi is off and the user is not allowed to turn it on. A nonComplianceDetail with API_LEVEL is reported if the Android version is less than 13." + ], + "type": "string" } }, "type": "object" @@ -3672,7 +3755,8 @@ "PASSWORD_POLICIES_PASSWORD_EXPIRED", "PASSWORD_POLICIES_PASSWORD_NOT_SUFFICIENT", "ONC_WIFI_INVALID_VALUE", - "ONC_WIFI_API_LEVEL" + "ONC_WIFI_API_LEVEL", + "ONC_WIFI_INVALID_ENTERPRISE_CONFIG" ], "enumDescriptions": [ "Specific non-compliance reason is not specified. Fields in specific_non_compliance_context are not set.", @@ -3680,7 +3764,8 @@ "The device or profile password has expired. passwordPoliciesContext is set. nonComplianceReason is set to USER_ACTION.", "The device password does not satisfy password requirements. passwordPoliciesContext is set. nonComplianceReason is set to USER_ACTION.", "There is an incorrect value in ONC Wi-Fi configuration. fieldPath specifies which field value is incorrect. oncWifiContext is set. nonComplianceReason is set to INVALID_VALUE.", - "The ONC Wi-Fi setting is not supported in the API level of the Android version running on the device. fieldPath specifies which field value is not supported. oncWifiContext is set. nonComplianceReason is set to API_LEVEL." + "The ONC Wi-Fi setting is not supported in the API level of the Android version running on the device. fieldPath specifies which field value is not supported. oncWifiContext is set. nonComplianceReason is set to API_LEVEL.", + "The enterprise Wi-Fi network is missing either the root CA or domain name. nonComplianceReason is set to INVALID_VALUE." ], "type": "string" } @@ -4344,6 +4429,10 @@ "$ref": "UserFacingMessage", "description": "The device owner information to be shown on the lock screen." }, + "deviceRadioState": { + "$ref": "DeviceRadioState", + "description": "Covers controls for radio state such as Wi-Fi, bluetooth, and more." + }, "encryptionPolicy": { "description": "Whether encryption is enabled", "enum": [ @@ -4501,7 +4590,7 @@ "type": "string" }, "networkEscapeHatchEnabled": { - "description": "Whether the network escape hatch is enabled. If a network connection can't be made at boot time, the escape hatch prompts the user to temporarily connect to a network in order to refresh the device policy. After applying policy, the temporary network will be forgotten and the device will continue booting. This prevents being unable to connect to a network if there is no suitable network in the last policy and the device boots into an app in lock task mode, or the user is otherwise unable to reach device settings.Note: Setting wifiConfigDisabled to true will override this setting under specific circumstances. Please see wifiConfigDisabled for further details.", + "description": "Whether the network escape hatch is enabled. If a network connection can't be made at boot time, the escape hatch prompts the user to temporarily connect to a network in order to refresh the device policy. After applying policy, the temporary network will be forgotten and the device will continue booting. This prevents being unable to connect to a network if there is no suitable network in the last policy and the device boots into an app in lock task mode, or the user is otherwise unable to reach device settings.Note: Setting wifiConfigDisabled to true will override this setting under specific circumstances. Please see wifiConfigDisabled for further details. Setting configureWifi to DISALLOW_CONFIGURING_WIFI will override this setting under specific circumstances. Please see DISALLOW_CONFIGURING_WIFI for further details.", "type": "boolean" }, "networkResetDisabled": { @@ -4686,7 +4775,7 @@ "description": "The system update policy, which controls how OS updates are applied. If the update type is WINDOWED, the update window will automatically apply to Play app updates as well." }, "tetheringConfigDisabled": { - "description": "Whether configuring tethering and portable hotspots is disabled.", + "description": "Whether configuring tethering and portable hotspots is disabled. If tetheringSettings is set to anything other than TETHERING_SETTINGS_UNSPECIFIED, this setting is ignored.", "type": "boolean" }, "uninstallAppsDisabled": { @@ -4719,7 +4808,7 @@ "type": "boolean" }, "wifiConfigDisabled": { - "description": "Whether configuring Wi-Fi networks is disabled. Supported on fully managed devices and work profiles on company-owned devices. For fully managed devices, setting this to true removes all configured networks and retains only the networks configured using openNetworkConfiguration. For work profiles on company-owned devices, existing configured networks are not affected and the user is not allowed to add, remove, or modify Wi-Fi networks. Note: If a network connection can't be made at boot time and configuring Wi-Fi is disabled then network escape hatch will be shown in order to refresh the device policy (see networkEscapeHatchEnabled).", + "description": "Whether configuring Wi-Fi networks is disabled. Supported on fully managed devices and work profiles on company-owned devices. For fully managed devices, setting this to true removes all configured networks and retains only the networks configured using openNetworkConfiguration. For work profiles on company-owned devices, existing configured networks are not affected and the user is not allowed to add, remove, or modify Wi-Fi networks. If configureWifi is set to anything other than CONFIGURE_WIFI_UNSPECIFIED, this setting is ignored. Note: If a network connection can't be made at boot time and configuring Wi-Fi is disabled then network escape hatch will be shown in order to refresh the device policy (see networkEscapeHatchEnabled).", "type": "boolean" }, "wifiConfigsLockdownEnabled": { diff --git a/androidmanagement/v1/androidmanagement-gen.go b/androidmanagement/v1/androidmanagement-gen.go index a5dd9d0f6bd..6a7f6915c4c 100644 --- a/androidmanagement/v1/androidmanagement-gen.go +++ b/androidmanagement/v1/androidmanagement-gen.go @@ -1096,6 +1096,15 @@ type ApplicationReport struct { // "INSTALLED" - App is installed on the device State string `json:"state,omitempty"` + // UserFacingType: Whether the app is user facing. + // + // Possible values: + // "USER_FACING_TYPE_UNSPECIFIED" - App user facing type is + // unspecified. + // "NOT_USER_FACING" - App is not user facing. + // "USER_FACING" - App is user facing. + UserFacingType string `json:"userFacingType,omitempty"` + // VersionCode: The app version code, which can be used to determine // whether one version is more recent than another. VersionCode int64 `json:"versionCode,omitempty"` @@ -2193,6 +2202,60 @@ func (s *Device) MarshalJSON() ([]byte, error) { // DeviceConnectivityManagement: Covers controls for device connectivity // such as Wi-Fi, USB data access, keyboard/mouse connections, and more. type DeviceConnectivityManagement struct { + // ConfigureWifi: Controls Wi-Fi configuring privileges. Based on the + // option set, user will have either full or limited or no control in + // configuring Wi-Fi networks. + // + // Possible values: + // "CONFIGURE_WIFI_UNSPECIFIED" - Unspecified. Defaults to + // ALLOW_CONFIGURING_WIFI unless wifiConfigDisabled is set to true. If + // wifiConfigDisabled is set to true, this is equivalent to + // DISALLOW_CONFIGURING_WIFI. + // "ALLOW_CONFIGURING_WIFI" - The user is allowed to configure Wi-Fi. + // wifiConfigDisabled is ignored. + // "DISALLOW_ADD_WIFI_CONFIG" - Adding new Wi-Fi configurations is + // disallowed. The user is only able to switch between already + // configured networks. Supported on Android 13 and above, on fully + // managed devices and work profiles on company-owned devices. If the + // setting is not supported, ALLOW_CONFIGURING_WIFI is set. A + // nonComplianceDetail with API_LEVEL is reported if the Android version + // is less than 13. wifiConfigDisabled is ignored. + // "DISALLOW_CONFIGURING_WIFI" - Disallows configuring Wi-Fi networks. + // The setting wifiConfigDisabled is ignored when this value is set. + // Supported on fully managed devices and work profile on company-owned + // devices, on all supported API levels. For fully managed devices, + // setting this removes all configured networks and retains only the + // networks configured using openNetworkConfiguration policy. For work + // profiles on company-owned devices, existing configured networks are + // not affected and the user is not allowed to add, remove, or modify + // Wi-Fi networks. Note: If a network connection can't be made at boot + // time and configuring Wi-Fi is disabled then network escape hatch will + // be shown in order to refresh the device policy (see + // networkEscapeHatchEnabled). + ConfigureWifi string `json:"configureWifi,omitempty"` + + // TetheringSettings: Controls tethering settings. Based on the value + // set, the user is partially or fully disallowed from using different + // forms of tethering. + // + // Possible values: + // "TETHERING_SETTINGS_UNSPECIFIED" - Unspecified. Defaults to + // ALLOW_ALL_TETHERING unless tetheringConfigDisabled is set to true. If + // tetheringConfigDisabled is set to true, this is equivalent to + // DISALLOW_ALL_TETHERING. + // "ALLOW_ALL_TETHERING" - Allows configuration and use of all forms + // of tethering. tetheringConfigDisabled is ignored. + // "DISALLOW_WIFI_TETHERING" - Disallows the user from using Wi-Fi + // tethering. Supported on company owned devices running Android 13 and + // above. If the setting is not supported, ALLOW_ALL_TETHERING will be + // set. A nonComplianceDetail with API_LEVEL is reported if the Android + // version is less than 13. tetheringConfigDisabled is ignored. + // "DISALLOW_ALL_TETHERING" - Disallows all forms of tethering. + // Supported on fully managed devices and work profile on company-owned + // devices, on all supported android versions. The setting + // tetheringConfigDisabled is ignored. + TetheringSettings string `json:"tetheringSettings,omitempty"` + // UsbDataAccess: Controls what files and/or data can be transferred via // USB. Supported only on company-owned devices. // @@ -2216,7 +2279,20 @@ type DeviceConnectivityManagement struct { // ignored. UsbDataAccess string `json:"usbDataAccess,omitempty"` - // ForceSendFields is a list of field names (e.g. "UsbDataAccess") to + // WifiDirectSettings: Controls configuring and using Wi-Fi direct + // settings. Supported on company-owned devices running Android 13 and + // above. + // + // Possible values: + // "WIFI_DIRECT_SETTINGS_UNSPECIFIED" - Unspecified. Defaults to + // ALLOW_WIFI_DIRECT + // "ALLOW_WIFI_DIRECT" - The user is allowed to use Wi-Fi direct. + // "DISALLOW_WIFI_DIRECT" - The user is not allowed to use Wi-Fi + // direct. A nonComplianceDetail with API_LEVEL is reported if the + // Android version is less than 13. + WifiDirectSettings string `json:"wifiDirectSettings,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ConfigureWifi") 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 @@ -2224,7 +2300,7 @@ type DeviceConnectivityManagement struct { // This may be used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "UsbDataAccess") to include + // NullFields is a list of field names (e.g. "ConfigureWifi") 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 @@ -2239,6 +2315,46 @@ func (s *DeviceConnectivityManagement) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// DeviceRadioState: Controls for device radio settings. +type DeviceRadioState struct { + // WifiState: Controls current state of Wi-Fi and if user can change its + // state. + // + // Possible values: + // "WIFI_STATE_UNSPECIFIED" - Unspecified. Defaults to + // WIFI_STATE_USER_CHOICE + // "WIFI_STATE_USER_CHOICE" - User is allowed to enable/disable Wi-Fi. + // "WIFI_ENABLED" - Wi-Fi is on and the user is not allowed to turn it + // off. A nonComplianceDetail with API_LEVEL is reported if the Android + // version is less than 13. + // "WIFI_DISABLED" - Wi-Fi is off and the user is not allowed to turn + // it on. A nonComplianceDetail with API_LEVEL is reported if the + // Android version is less than 13. + WifiState string `json:"wifiState,omitempty"` + + // ForceSendFields is a list of field names (e.g. "WifiState") 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. "WifiState") 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 *DeviceRadioState) MarshalJSON() ([]byte, error) { + type NoMethod DeviceRadioState + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // DeviceSettings: Information about security related device settings on // device. type DeviceSettings struct { @@ -4097,6 +4213,9 @@ type NonComplianceDetail struct { // the API level of the Android version running on the device. fieldPath // specifies which field value is not supported. oncWifiContext is set. // nonComplianceReason is set to API_LEVEL. + // "ONC_WIFI_INVALID_ENTERPRISE_CONFIG" - The enterprise Wi-Fi network + // is missing either the root CA or domain name. nonComplianceReason is + // set to INVALID_VALUE. SpecificNonComplianceReason string `json:"specificNonComplianceReason,omitempty"` // ForceSendFields is a list of field names (e.g. "CurrentValue") to @@ -5033,6 +5152,10 @@ type Policy struct { // on the lock screen. DeviceOwnerLockScreenInfo *UserFacingMessage `json:"deviceOwnerLockScreenInfo,omitempty"` + // DeviceRadioState: Covers controls for radio state such as Wi-Fi, + // bluetooth, and more. + DeviceRadioState *DeviceRadioState `json:"deviceRadioState,omitempty"` + // EncryptionPolicy: Whether encryption is enabled // // Possible values: @@ -5193,7 +5316,10 @@ type Policy struct { // an app in lock task mode, or the user is otherwise unable to reach // device settings.Note: Setting wifiConfigDisabled to true will // override this setting under specific circumstances. Please see - // wifiConfigDisabled for further details. + // wifiConfigDisabled for further details. Setting configureWifi to + // DISALLOW_CONFIGURING_WIFI will override this setting under specific + // circumstances. Please see DISALLOW_CONFIGURING_WIFI for further + // details. NetworkEscapeHatchEnabled bool `json:"networkEscapeHatchEnabled,omitempty"` // NetworkResetDisabled: Whether resetting network settings is disabled. @@ -5368,7 +5494,8 @@ type Policy struct { SystemUpdate *SystemUpdate `json:"systemUpdate,omitempty"` // TetheringConfigDisabled: Whether configuring tethering and portable - // hotspots is disabled. + // hotspots is disabled. If tetheringSettings is set to anything other + // than TETHERING_SETTINGS_UNSPECIFIED, this setting is ignored. TetheringConfigDisabled bool `json:"tetheringConfigDisabled,omitempty"` // UninstallAppsDisabled: Whether user uninstallation of applications is @@ -5406,10 +5533,12 @@ type Policy struct { // configured networks and retains only the networks configured using // openNetworkConfiguration. For work profiles on company-owned devices, // existing configured networks are not affected and the user is not - // allowed to add, remove, or modify Wi-Fi networks. Note: If a network - // connection can't be made at boot time and configuring Wi-Fi is - // disabled then network escape hatch will be shown in order to refresh - // the device policy (see networkEscapeHatchEnabled). + // allowed to add, remove, or modify Wi-Fi networks. If configureWifi is + // set to anything other than CONFIGURE_WIFI_UNSPECIFIED, this setting + // is ignored. Note: If a network connection can't be made at boot time + // and configuring Wi-Fi is disabled then network escape hatch will be + // shown in order to refresh the device policy (see + // networkEscapeHatchEnabled). WifiConfigDisabled bool `json:"wifiConfigDisabled,omitempty"` // WifiConfigsLockdownEnabled: DEPRECATED - Use wifi_config_disabled. diff --git a/androidpublisher/v3/androidpublisher-api.json b/androidpublisher/v3/androidpublisher-api.json index 0598f27f822..ca4d61f7d1c 100644 --- a/androidpublisher/v3/androidpublisher-api.json +++ b/androidpublisher/v3/androidpublisher-api.json @@ -4047,9 +4047,57 @@ } } }, - "revision": "20230615", + "revision": "20230628", "rootUrl": "https://androidpublisher.googleapis.com/", "schemas": { + "Abi": { + "description": "Represents an Abi.", + "id": "Abi", + "properties": { + "alias": { + "description": "Alias for an abi.", + "enum": [ + "UNSPECIFIED_CPU_ARCHITECTURE", + "ARMEABI", + "ARMEABI_V7A", + "ARM64_V8A", + "X86", + "X86_64" + ], + "enumDescriptions": [ + "Unspecified abi.", + "ARMEABI abi.", + "ARMEABI_V7A abi.", + "ARM64_V8A abi.", + "X86 abi.", + "X86_64 abi." + ], + "type": "string" + } + }, + "type": "object" + }, + "AbiTargeting": { + "description": "Targeting based on Abi.", + "id": "AbiTargeting", + "properties": { + "alternatives": { + "description": "Targeting of other sibling directories that were in the Bundle. For main splits this is targeting of other main splits.", + "items": { + "$ref": "Abi" + }, + "type": "array" + }, + "value": { + "description": "Value of an abi.", + "items": { + "$ref": "Abi" + }, + "type": "array" + } + }, + "type": "object" + }, "AcquisitionTargetingRule": { "description": "Represents a targeting rule of the form: User never had {scope} before.", "id": "AcquisitionTargetingRule", @@ -4104,6 +4152,86 @@ }, "type": "object" }, + "ApkDescription": { + "description": "Description of the created apks.", + "id": "ApkDescription", + "properties": { + "assetSliceMetadata": { + "$ref": "SplitApkMetadata", + "description": "Set only for asset slices." + }, + "instantApkMetadata": { + "$ref": "SplitApkMetadata", + "description": "Set only for Instant split APKs." + }, + "path": { + "description": "Path of the Apk, will be in the following format: .apk where DownloadId is the ID used to download the apk using GeneratedApks.Download API.", + "type": "string" + }, + "splitApkMetadata": { + "$ref": "SplitApkMetadata", + "description": "Set only for Split APKs." + }, + "standaloneApkMetadata": { + "$ref": "StandaloneApkMetadata", + "description": "Set only for standalone APKs." + }, + "targeting": { + "$ref": "ApkTargeting", + "description": "Apk-level targeting." + } + }, + "type": "object" + }, + "ApkSet": { + "description": "A set of apks representing a module.", + "id": "ApkSet", + "properties": { + "apkDescription": { + "description": "Description of the generated apks.", + "items": { + "$ref": "ApkDescription" + }, + "type": "array" + }, + "moduleMetadata": { + "$ref": "ModuleMetadata", + "description": "Metadata about the module represented by this ApkSet" + } + }, + "type": "object" + }, + "ApkTargeting": { + "description": "Represents a set of apk-level targetings.", + "id": "ApkTargeting", + "properties": { + "abiTargeting": { + "$ref": "AbiTargeting", + "description": "The abi that the apk targets" + }, + "languageTargeting": { + "$ref": "LanguageTargeting", + "description": "The language that the apk targets" + }, + "multiAbiTargeting": { + "$ref": "MultiAbiTargeting", + "description": "Multi-api-level targeting." + }, + "screenDensityTargeting": { + "$ref": "ScreenDensityTargeting", + "description": "The screen density that this apk supports." + }, + "sdkVersionTargeting": { + "$ref": "SdkVersionTargeting", + "description": "The sdk version that the apk targets" + }, + "textureCompressionFormatTargeting": { + "$ref": "TextureCompressionFormatTargeting", + "description": "Texture-compression-format-level targeting" + } + }, + "type": "object" + }, "ApksAddExternallyHostedRequest": { "description": "Request to create a new externally hosted APK.", "id": "ApksAddExternallyHostedRequest", @@ -4190,6 +4318,51 @@ "properties": {}, "type": "object" }, + "AssetModuleMetadata": { + "description": "Metadata of an asset module.", + "id": "AssetModuleMetadata", + "properties": { + "deliveryType": { + "description": "Indicates the delivery type for persistent install.", + "enum": [ + "UNKNOWN_DELIVERY_TYPE", + "INSTALL_TIME", + "ON_DEMAND", + "FAST_FOLLOW" + ], + "enumDescriptions": [ + "Unspecified delivery type.", + "This module will always be downloaded as part of the initial install of the app.", + "This module is requested on-demand, which means it will not be part of the initial install, and will only be sent when requested by the client.", + "This module will be downloaded immediately after initial install finishes. The app can be opened before these modules are downloaded." + ], + "type": "string" + }, + "name": { + "description": "Module name.", + "type": "string" + } + }, + "type": "object" + }, + "AssetSliceSet": { + "description": "Set of asset slices belonging to a single asset module.", + "id": "AssetSliceSet", + "properties": { + "apkDescription": { + "description": "Asset slices.", + "items": { + "$ref": "ApkDescription" + }, + "type": "array" + }, + "assetModuleMetadata": { + "$ref": "AssetModuleMetadata", + "description": "Module level metadata." + } + }, + "type": "object" + }, "AutoRenewingBasePlanType": { "description": "Represents a base plan that automatically renews at the end of its subscription period.", "id": "AutoRenewingBasePlanType", @@ -4574,6 +4747,33 @@ "properties": {}, "type": "object" }, + "DeviceFeature": { + "description": "Represents a device feature.", + "id": "DeviceFeature", + "properties": { + "featureName": { + "description": "Name of the feature.", + "type": "string" + }, + "featureVersion": { + "description": "The feature version specified by android:glEsVersion or android:version in in the AndroidManifest.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "DeviceFeatureTargeting": { + "description": "Targeting for a device feature.", + "id": "DeviceFeatureTargeting", + "properties": { + "requiredFeature": { + "$ref": "DeviceFeature", + "description": "Feature of the device." + } + }, + "type": "object" + }, "DeviceGroup": { "description": "A group of devices. A group is defined by a set of device selectors. A device belongs to the group if it matches any selector (logical OR).", "id": "DeviceGroup", @@ -5107,6 +5307,10 @@ "generatedUniversalApk": { "$ref": "GeneratedUniversalApk", "description": "Generated universal APK, signed with a key corresponding to certificate_sha256_hash. This field is not set if no universal APK was generated for this signing key." + }, + "targetingInfo": { + "$ref": "TargetingInfo", + "description": "Contains targeting information about the generated apks." } }, "type": "object" @@ -5479,6 +5683,27 @@ }, "type": "object" }, + "LanguageTargeting": { + "description": "Targeting based on language.", + "id": "LanguageTargeting", + "properties": { + "alternatives": { + "description": "Alternative languages.", + "items": { + "type": "string" + }, + "type": "array" + }, + "value": { + "description": "ISO-639: 2 or 3 letter language code.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "ListDeviceTierConfigsResponse": { "description": "Response listing existing device tier configs.", "id": "ListDeviceTierConfigsResponse", @@ -5663,6 +5888,78 @@ "properties": {}, "type": "object" }, + "ModuleMetadata": { + "description": "Metadata of a module.", + "id": "ModuleMetadata", + "properties": { + "deliveryType": { + "description": "Indicates the delivery type (e.g. on-demand) of the module.", + "enum": [ + "UNKNOWN_DELIVERY_TYPE", + "INSTALL_TIME", + "ON_DEMAND", + "FAST_FOLLOW" + ], + "enumDescriptions": [ + "Unspecified delivery type.", + "This module will always be downloaded as part of the initial install of the app.", + "This module is requested on-demand, which means it will not be part of the initial install, and will only be sent when requested by the client.", + "This module will be downloaded immediately after initial install finishes. The app can be opened before these modules are downloaded." + ], + "type": "string" + }, + "dependencies": { + "description": "Names of the modules that this module directly depends on. Each module implicitly depends on the base module.", + "items": { + "type": "string" + }, + "type": "array" + }, + "moduleType": { + "description": "Indicates the type of this feature module.", + "enum": [ + "UNKNOWN_MODULE_TYPE", + "FEATURE_MODULE" + ], + "enumDescriptions": [ + "Unknown feature module.", + "Regular feature module." + ], + "type": "string" + }, + "name": { + "description": "Module name.", + "type": "string" + }, + "targeting": { + "$ref": "ModuleTargeting", + "description": "The targeting that makes a conditional module installed. Relevant only for Split APKs." + } + }, + "type": "object" + }, + "ModuleTargeting": { + "description": "Targeting on the module level.", + "id": "ModuleTargeting", + "properties": { + "deviceFeatureTargeting": { + "description": "Targeting for device features.", + "items": { + "$ref": "DeviceFeatureTargeting" + }, + "type": "array" + }, + "sdkVersionTargeting": { + "$ref": "SdkVersionTargeting", + "description": "The sdk version that the variant targets" + }, + "userCountriesTargeting": { + "$ref": "UserCountriesTargeting", + "description": "Countries-level targeting" + } + }, + "type": "object" + }, "Money": { "description": "Represents an amount of money with its currency type.", "id": "Money", @@ -5684,6 +5981,41 @@ }, "type": "object" }, + "MultiAbi": { + "description": "Represents a list of apis.", + "id": "MultiAbi", + "properties": { + "abi": { + "description": "A list of targeted ABIs, as represented by the Android Platform", + "items": { + "$ref": "Abi" + }, + "type": "array" + } + }, + "type": "object" + }, + "MultiAbiTargeting": { + "description": "Targeting based on multiple abis.", + "id": "MultiAbiTargeting", + "properties": { + "alternatives": { + "description": "Targeting of other sibling directories that were in the Bundle. For main splits this is targeting of other main splits.", + "items": { + "$ref": "MultiAbi" + }, + "type": "array" + }, + "value": { + "description": "Value of a multi abi.", + "items": { + "$ref": "MultiAbi" + }, + "type": "array" + } + }, + "type": "object" + }, "OfferDetails": { "description": "Offer details information related to a purchase line item.", "id": "OfferDetails", @@ -6238,6 +6570,150 @@ }, "type": "object" }, + "ScreenDensity": { + "description": "Represents a screen density.", + "id": "ScreenDensity", + "properties": { + "densityAlias": { + "description": "Alias for a screen density.", + "enum": [ + "DENSITY_UNSPECIFIED", + "NODPI", + "LDPI", + "MDPI", + "TVDPI", + "HDPI", + "XHDPI", + "XXHDPI", + "XXXHDPI" + ], + "enumDescriptions": [ + "Unspecified screen density.", + "NODPI screen density.", + "LDPI screen density.", + "MDPI screen density.", + "TVDPI screen density.", + "HDPI screen density.", + "XHDPI screen density.", + "XXHDPI screen density.", + "XXXHDPI screen density." + ], + "type": "string" + }, + "densityDpi": { + "description": "Value for density dpi.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "ScreenDensityTargeting": { + "description": "Targeting based on screen density.", + "id": "ScreenDensityTargeting", + "properties": { + "alternatives": { + "description": "Targeting of other sibling directories that were in the Bundle. For main splits this is targeting of other main splits.", + "items": { + "$ref": "ScreenDensity" + }, + "type": "array" + }, + "value": { + "description": "Value of a screen density.", + "items": { + "$ref": "ScreenDensity" + }, + "type": "array" + } + }, + "type": "object" + }, + "SdkVersion": { + "description": "Represents an sdk version.", + "id": "SdkVersion", + "properties": { + "min": { + "description": "Inclusive minimum value of an sdk version.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "SdkVersionTargeting": { + "description": "Targeting based on sdk version.", + "id": "SdkVersionTargeting", + "properties": { + "alternatives": { + "description": "Targeting of other sibling directories that were in the Bundle. For main splits this is targeting of other main splits.", + "items": { + "$ref": "SdkVersion" + }, + "type": "array" + }, + "value": { + "description": "Value of an sdk version.", + "items": { + "$ref": "SdkVersion" + }, + "type": "array" + } + }, + "type": "object" + }, + "SplitApkMetadata": { + "description": "Holds data specific to Split APKs.", + "id": "SplitApkMetadata", + "properties": { + "isMasterSplit": { + "description": "Indicates whether this APK is the main split of the module.", + "type": "boolean" + }, + "splitId": { + "description": "Id of the split.", + "type": "string" + } + }, + "type": "object" + }, + "SplitApkVariant": { + "description": "Variant is a group of APKs that covers a part of the device configuration space. APKs from multiple variants are never combined on one device.", + "id": "SplitApkVariant", + "properties": { + "apkSet": { + "description": "Set of APKs, one set per module.", + "items": { + "$ref": "ApkSet" + }, + "type": "array" + }, + "targeting": { + "$ref": "VariantTargeting", + "description": "Variant-level targeting." + }, + "variantNumber": { + "description": "Number of the variant, starting at 0 (unless overridden). A device will receive APKs from the first variant that matches the device configuration, with higher variant numbers having priority over lower variant numbers.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "StandaloneApkMetadata": { + "description": "Holds data specific to Standalone APKs.", + "id": "StandaloneApkMetadata", + "properties": { + "fusedModuleName": { + "description": "Names of the modules fused in this standalone APK.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "SubscribeWithGoogleInfo": { "description": "Information associated with purchases made with 'Subscribe with Google'.", "id": "SubscribeWithGoogleInfo", @@ -6886,6 +7362,31 @@ "properties": {}, "type": "object" }, + "TargetingInfo": { + "description": "Targeting information about the generated apks.", + "id": "TargetingInfo", + "properties": { + "assetSliceSet": { + "description": "List of created asset slices.", + "items": { + "$ref": "AssetSliceSet" + }, + "type": "array" + }, + "packageName": { + "description": "The package name of this app.", + "type": "string" + }, + "variant": { + "description": "List of the created variants.", + "items": { + "$ref": "SplitApkVariant" + }, + "type": "array" + } + }, + "type": "object" + }, "TargetingRuleScope": { "description": "Defines the scope of subscriptions which a targeting rule can match to target offers to users based on past or current entitlement.", "id": "TargetingRuleScope", @@ -6917,6 +7418,64 @@ }, "type": "object" }, + "TextureCompressionFormat": { + "description": "Represents texture compression format.", + "id": "TextureCompressionFormat", + "properties": { + "alias": { + "description": "Alias for texture compression format.", + "enum": [ + "UNSPECIFIED_TEXTURE_COMPRESSION_FORMAT", + "ETC1_RGB8", + "PALETTED", + "THREE_DC", + "ATC", + "LATC", + "DXT1", + "S3TC", + "PVRTC", + "ASTC", + "ETC2" + ], + "enumDescriptions": [ + "Unspecified format.", + "ETC1_RGB8 format.", + "PALETTED format.", + "THREE_DC format.", + "ATC format.", + "LATC format.", + "DXT1 format.", + "S3TC format.", + "PVRTC format.", + "ASTC format.", + "ETC2 format." + ], + "type": "string" + } + }, + "type": "object" + }, + "TextureCompressionFormatTargeting": { + "description": "Targeting by a texture compression format.", + "id": "TextureCompressionFormatTargeting", + "properties": { + "alternatives": { + "description": "List of alternative TCFs (TCFs targeted by the sibling splits).", + "items": { + "$ref": "TextureCompressionFormat" + }, + "type": "array" + }, + "value": { + "description": "The list of targeted TCFs. Should not be empty.", + "items": { + "$ref": "TextureCompressionFormat" + }, + "type": "array" + } + }, + "type": "object" + }, "Timestamp": { "description": "A Timestamp represents a point in time independent of any time zone or local calendar, encoded as a count of seconds and fractions of seconds at nanosecond resolution. The count is relative to an epoch at UTC midnight on January 1, 1970.", "id": "Timestamp", @@ -7253,6 +7812,24 @@ }, "type": "object" }, + "UserCountriesTargeting": { + "description": "Describes an inclusive/exclusive list of country codes that module targets.", + "id": "UserCountriesTargeting", + "properties": { + "countryCodes": { + "description": "List of country codes in the two-letter CLDR territory format.", + "items": { + "type": "string" + }, + "type": "array" + }, + "exclude": { + "description": "Indicates if the list above is exclusive.", + "type": "boolean" + } + }, + "type": "object" + }, "UserCountrySet": { "description": "A set of user countries. A country set determines what variation of app content gets served to a specific location.", "id": "UserCountrySet", @@ -7320,6 +7897,33 @@ }, "type": "object" }, + "VariantTargeting": { + "description": "Targeting on the level of variants.", + "id": "VariantTargeting", + "properties": { + "abiTargeting": { + "$ref": "AbiTargeting", + "description": "The abi that the variant targets" + }, + "multiAbiTargeting": { + "$ref": "MultiAbiTargeting", + "description": "Multi-api-level targeting" + }, + "screenDensityTargeting": { + "$ref": "ScreenDensityTargeting", + "description": "The screen densities that this variant supports" + }, + "sdkVersionTargeting": { + "$ref": "SdkVersionTargeting", + "description": "The sdk version that the variant targets" + }, + "textureCompressionFormatTargeting": { + "$ref": "TextureCompressionFormatTargeting", + "description": "Texture-compression-format-level targeting" + } + }, + "type": "object" + }, "VoidedPurchase": { "description": "A VoidedPurchase resource indicates a purchase that was either canceled/refunded/charged-back.", "id": "VoidedPurchase", diff --git a/androidpublisher/v3/androidpublisher-gen.go b/androidpublisher/v3/androidpublisher-gen.go index 8da46323144..4ddf432608c 100644 --- a/androidpublisher/v3/androidpublisher-gen.go +++ b/androidpublisher/v3/androidpublisher-gen.go @@ -518,6 +518,74 @@ type UsersService struct { s *Service } +// Abi: Represents an Abi. +type Abi struct { + // Alias: Alias for an abi. + // + // Possible values: + // "UNSPECIFIED_CPU_ARCHITECTURE" - Unspecified abi. + // "ARMEABI" - ARMEABI abi. + // "ARMEABI_V7A" - ARMEABI_V7A abi. + // "ARM64_V8A" - ARM64_V8A abi. + // "X86" - X86 abi. + // "X86_64" - X86_64 abi. + Alias string `json:"alias,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Alias") 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. "Alias") 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 *Abi) MarshalJSON() ([]byte, error) { + type NoMethod Abi + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// AbiTargeting: Targeting based on Abi. +type AbiTargeting struct { + // Alternatives: Targeting of other sibling directories that were in the + // Bundle. For main splits this is targeting of other main splits. + Alternatives []*Abi `json:"alternatives,omitempty"` + + // Value: Value of an abi. + Value []*Abi `json:"value,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Alternatives") 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. "Alternatives") 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 *AbiTargeting) MarshalJSON() ([]byte, error) { + type NoMethod AbiTargeting + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // AcquisitionTargetingRule: Represents a targeting rule of the form: // User never had {scope} before. type AcquisitionTargetingRule struct { @@ -626,6 +694,128 @@ func (s *ApkBinary) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// ApkDescription: Description of the created apks. +type ApkDescription struct { + // AssetSliceMetadata: Set only for asset slices. + AssetSliceMetadata *SplitApkMetadata `json:"assetSliceMetadata,omitempty"` + + // InstantApkMetadata: Set only for Instant split APKs. + InstantApkMetadata *SplitApkMetadata `json:"instantApkMetadata,omitempty"` + + // Path: Path of the Apk, will be in the following format: .apk where + // DownloadId is the ID used to download the apk using + // GeneratedApks.Download API. + Path string `json:"path,omitempty"` + + // SplitApkMetadata: Set only for Split APKs. + SplitApkMetadata *SplitApkMetadata `json:"splitApkMetadata,omitempty"` + + // StandaloneApkMetadata: Set only for standalone APKs. + StandaloneApkMetadata *StandaloneApkMetadata `json:"standaloneApkMetadata,omitempty"` + + // Targeting: Apk-level targeting. + Targeting *ApkTargeting `json:"targeting,omitempty"` + + // ForceSendFields is a list of field names (e.g. "AssetSliceMetadata") + // 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. "AssetSliceMetadata") 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 *ApkDescription) MarshalJSON() ([]byte, error) { + type NoMethod ApkDescription + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// ApkSet: A set of apks representing a module. +type ApkSet struct { + // ApkDescription: Description of the generated apks. + ApkDescription []*ApkDescription `json:"apkDescription,omitempty"` + + // ModuleMetadata: Metadata about the module represented by this ApkSet + ModuleMetadata *ModuleMetadata `json:"moduleMetadata,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ApkDescription") 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. "ApkDescription") 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 *ApkSet) MarshalJSON() ([]byte, error) { + type NoMethod ApkSet + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// ApkTargeting: Represents a set of apk-level targetings. +type ApkTargeting struct { + // AbiTargeting: The abi that the apk targets + AbiTargeting *AbiTargeting `json:"abiTargeting,omitempty"` + + // LanguageTargeting: The language that the apk targets + LanguageTargeting *LanguageTargeting `json:"languageTargeting,omitempty"` + + // MultiAbiTargeting: Multi-api-level targeting. + MultiAbiTargeting *MultiAbiTargeting `json:"multiAbiTargeting,omitempty"` + + // ScreenDensityTargeting: The screen density that this apk supports. + ScreenDensityTargeting *ScreenDensityTargeting `json:"screenDensityTargeting,omitempty"` + + // SdkVersionTargeting: The sdk version that the apk targets + SdkVersionTargeting *SdkVersionTargeting `json:"sdkVersionTargeting,omitempty"` + + // TextureCompressionFormatTargeting: Texture-compression-format-level + // targeting + TextureCompressionFormatTargeting *TextureCompressionFormatTargeting `json:"textureCompressionFormatTargeting,omitempty"` + + // ForceSendFields is a list of field names (e.g. "AbiTargeting") 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. "AbiTargeting") 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 *ApkTargeting) MarshalJSON() ([]byte, error) { + type NoMethod ApkTargeting + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // ApksAddExternallyHostedRequest: Request to create a new externally // hosted APK. type ApksAddExternallyHostedRequest struct { @@ -812,6 +1002,81 @@ func (s *AppEdit) MarshalJSON() ([]byte, error) { type ArchiveSubscriptionRequest struct { } +// AssetModuleMetadata: Metadata of an asset module. +type AssetModuleMetadata struct { + // DeliveryType: Indicates the delivery type for persistent install. + // + // Possible values: + // "UNKNOWN_DELIVERY_TYPE" - Unspecified delivery type. + // "INSTALL_TIME" - This module will always be downloaded as part of + // the initial install of the app. + // "ON_DEMAND" - This module is requested on-demand, which means it + // will not be part of the initial install, and will only be sent when + // requested by the client. + // "FAST_FOLLOW" - This module will be downloaded immediately after + // initial install finishes. The app can be opened before these modules + // are downloaded. + DeliveryType string `json:"deliveryType,omitempty"` + + // Name: Module name. + Name string `json:"name,omitempty"` + + // ForceSendFields is a list of field names (e.g. "DeliveryType") 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. "DeliveryType") 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 *AssetModuleMetadata) MarshalJSON() ([]byte, error) { + type NoMethod AssetModuleMetadata + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// AssetSliceSet: Set of asset slices belonging to a single asset +// module. +type AssetSliceSet struct { + // ApkDescription: Asset slices. + ApkDescription []*ApkDescription `json:"apkDescription,omitempty"` + + // AssetModuleMetadata: Module level metadata. + AssetModuleMetadata *AssetModuleMetadata `json:"assetModuleMetadata,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ApkDescription") 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. "ApkDescription") 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 *AssetSliceSet) MarshalJSON() ([]byte, error) { + type NoMethod AssetSliceSet + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // AutoRenewingBasePlanType: Represents a base plan that automatically // renews at the end of its subscription period. type AutoRenewingBasePlanType struct { @@ -1508,6 +1773,67 @@ func (s *DeveloperComment) MarshalJSON() ([]byte, error) { type DeveloperInitiatedCancellation struct { } +// DeviceFeature: Represents a device feature. +type DeviceFeature struct { + // FeatureName: Name of the feature. + FeatureName string `json:"featureName,omitempty"` + + // FeatureVersion: The feature version specified by android:glEsVersion + // or android:version in in the AndroidManifest. + FeatureVersion int64 `json:"featureVersion,omitempty"` + + // ForceSendFields is a list of field names (e.g. "FeatureName") 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. "FeatureName") 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 *DeviceFeature) MarshalJSON() ([]byte, error) { + type NoMethod DeviceFeature + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// DeviceFeatureTargeting: Targeting for a device feature. +type DeviceFeatureTargeting struct { + // RequiredFeature: Feature of the device. + RequiredFeature *DeviceFeature `json:"requiredFeature,omitempty"` + + // ForceSendFields is a list of field names (e.g. "RequiredFeature") 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. "RequiredFeature") 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 *DeviceFeatureTargeting) MarshalJSON() ([]byte, error) { + type NoMethod DeviceFeatureTargeting + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // DeviceGroup: A group of devices. A group is defined by a set of // device selectors. A device belongs to the group if it matches any // selector (logical OR). @@ -2297,6 +2623,10 @@ type GeneratedApksPerSigningKey struct { // universal APK was generated for this signing key. GeneratedUniversalApk *GeneratedUniversalApk `json:"generatedUniversalApk,omitempty"` + // TargetingInfo: Contains targeting information about the generated + // apks. + TargetingInfo *TargetingInfo `json:"targetingInfo,omitempty"` + // ForceSendFields is a list of field names (e.g. // "CertificateSha256Hash") to unconditionally include in API requests. // By default, fields with empty or default values are omitted from API @@ -2928,6 +3258,37 @@ func (s *IntroductoryPriceInfo) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// LanguageTargeting: Targeting based on language. +type LanguageTargeting struct { + // Alternatives: Alternative languages. + Alternatives []string `json:"alternatives,omitempty"` + + // Value: ISO-639: 2 or 3 letter language code. + Value []string `json:"value,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Alternatives") 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. "Alternatives") 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 *LanguageTargeting) MarshalJSON() ([]byte, error) { + type NoMethod LanguageTargeting + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // ListDeviceTierConfigsResponse: Response listing existing device tier // configs. type ListDeviceTierConfigsResponse struct { @@ -3283,24 +3644,42 @@ type MigrateBasePlanPricesResponse struct { googleapi.ServerResponse `json:"-"` } -// Money: Represents an amount of money with its currency type. -type Money struct { - // CurrencyCode: The three-letter currency code defined in ISO 4217. - CurrencyCode string `json:"currencyCode,omitempty"` +// ModuleMetadata: Metadata of a module. +type ModuleMetadata struct { + // DeliveryType: Indicates the delivery type (e.g. on-demand) of the + // module. + // + // Possible values: + // "UNKNOWN_DELIVERY_TYPE" - Unspecified delivery type. + // "INSTALL_TIME" - This module will always be downloaded as part of + // the initial install of the app. + // "ON_DEMAND" - This module is requested on-demand, which means it + // will not be part of the initial install, and will only be sent when + // requested by the client. + // "FAST_FOLLOW" - This module will be downloaded immediately after + // initial install finishes. The app can be opened before these modules + // are downloaded. + DeliveryType string `json:"deliveryType,omitempty"` + + // Dependencies: Names of the modules that this module directly depends + // on. Each module implicitly depends on the base module. + Dependencies []string `json:"dependencies,omitempty"` + + // ModuleType: Indicates the type of this feature module. + // + // Possible values: + // "UNKNOWN_MODULE_TYPE" - Unknown feature module. + // "FEATURE_MODULE" - Regular feature module. + ModuleType string `json:"moduleType,omitempty"` - // Nanos: Number of nano (10^-9) units of the amount. The value must be - // between -999,999,999 and +999,999,999 inclusive. If `units` is - // positive, `nanos` must be positive or zero. If `units` is zero, - // `nanos` can be positive, zero, or negative. If `units` is negative, - // `nanos` must be negative or zero. For example $-1.75 is represented - // as `units`=-1 and `nanos`=-750,000,000. - Nanos int64 `json:"nanos,omitempty"` + // Name: Module name. + Name string `json:"name,omitempty"` - // Units: The whole units of the amount. For example if `currencyCode` - // is "USD", then 1 unit is one US dollar. - Units int64 `json:"units,omitempty,string"` + // Targeting: The targeting that makes a conditional module installed. + // Relevant only for Split APKs. + Targeting *ModuleTargeting `json:"targeting,omitempty"` - // ForceSendFields is a list of field names (e.g. "CurrencyCode") to + // ForceSendFields is a list of field names (e.g. "DeliveryType") 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 @@ -3308,7 +3687,7 @@ type Money struct { // This may be used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "CurrencyCode") to include + // NullFields is a list of field names (e.g. "DeliveryType") 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 @@ -3317,23 +3696,159 @@ type Money struct { NullFields []string `json:"-"` } -func (s *Money) MarshalJSON() ([]byte, error) { - type NoMethod Money +func (s *ModuleMetadata) MarshalJSON() ([]byte, error) { + type NoMethod ModuleMetadata raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// OfferDetails: Offer details information related to a purchase line -// item. -type OfferDetails struct { - // BasePlanId: The base plan ID. Present for all base plan and offers. - BasePlanId string `json:"basePlanId,omitempty"` +// ModuleTargeting: Targeting on the module level. +type ModuleTargeting struct { + // DeviceFeatureTargeting: Targeting for device features. + DeviceFeatureTargeting []*DeviceFeatureTargeting `json:"deviceFeatureTargeting,omitempty"` - // OfferId: The offer ID. Only present for discounted offers. - OfferId string `json:"offerId,omitempty"` + // SdkVersionTargeting: The sdk version that the variant targets + SdkVersionTargeting *SdkVersionTargeting `json:"sdkVersionTargeting,omitempty"` - // OfferTags: The latest offer tags associated with the offer. It - // includes tags inherited from the base plan. + // UserCountriesTargeting: Countries-level targeting + UserCountriesTargeting *UserCountriesTargeting `json:"userCountriesTargeting,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "DeviceFeatureTargeting") 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. "DeviceFeatureTargeting") + // 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 *ModuleTargeting) MarshalJSON() ([]byte, error) { + type NoMethod ModuleTargeting + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Money: Represents an amount of money with its currency type. +type Money struct { + // CurrencyCode: The three-letter currency code defined in ISO 4217. + CurrencyCode string `json:"currencyCode,omitempty"` + + // Nanos: Number of nano (10^-9) units of the amount. The value must be + // between -999,999,999 and +999,999,999 inclusive. If `units` is + // positive, `nanos` must be positive or zero. If `units` is zero, + // `nanos` can be positive, zero, or negative. If `units` is negative, + // `nanos` must be negative or zero. For example $-1.75 is represented + // as `units`=-1 and `nanos`=-750,000,000. + Nanos int64 `json:"nanos,omitempty"` + + // Units: The whole units of the amount. For example if `currencyCode` + // is "USD", then 1 unit is one US dollar. + Units int64 `json:"units,omitempty,string"` + + // ForceSendFields is a list of field names (e.g. "CurrencyCode") 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. "CurrencyCode") 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 *Money) MarshalJSON() ([]byte, error) { + type NoMethod Money + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// MultiAbi: Represents a list of apis. +type MultiAbi struct { + // Abi: A list of targeted ABIs, as represented by the Android Platform + Abi []*Abi `json:"abi,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Abi") 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. "Abi") 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 *MultiAbi) MarshalJSON() ([]byte, error) { + type NoMethod MultiAbi + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// MultiAbiTargeting: Targeting based on multiple abis. +type MultiAbiTargeting struct { + // Alternatives: Targeting of other sibling directories that were in the + // Bundle. For main splits this is targeting of other main splits. + Alternatives []*MultiAbi `json:"alternatives,omitempty"` + + // Value: Value of a multi abi. + Value []*MultiAbi `json:"value,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Alternatives") 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. "Alternatives") 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 *MultiAbiTargeting) MarshalJSON() ([]byte, error) { + type NoMethod MultiAbiTargeting + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// OfferDetails: Offer details information related to a purchase line +// item. +type OfferDetails struct { + // BasePlanId: The base plan ID. Present for all base plan and offers. + BasePlanId string `json:"basePlanId,omitempty"` + + // OfferId: The offer ID. Only present for discounted offers. + OfferId string `json:"offerId,omitempty"` + + // OfferTags: The latest offer tags associated with the offer. It + // includes tags inherited from the base plan. OfferTags []string `json:"offerTags,omitempty"` // ForceSendFields is a list of field names (e.g. "BasePlanId") to @@ -4490,6 +5005,240 @@ func (s *ReviewsReplyResponse) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// ScreenDensity: Represents a screen density. +type ScreenDensity struct { + // DensityAlias: Alias for a screen density. + // + // Possible values: + // "DENSITY_UNSPECIFIED" - Unspecified screen density. + // "NODPI" - NODPI screen density. + // "LDPI" - LDPI screen density. + // "MDPI" - MDPI screen density. + // "TVDPI" - TVDPI screen density. + // "HDPI" - HDPI screen density. + // "XHDPI" - XHDPI screen density. + // "XXHDPI" - XXHDPI screen density. + // "XXXHDPI" - XXXHDPI screen density. + DensityAlias string `json:"densityAlias,omitempty"` + + // DensityDpi: Value for density dpi. + DensityDpi int64 `json:"densityDpi,omitempty"` + + // ForceSendFields is a list of field names (e.g. "DensityAlias") 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. "DensityAlias") 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 *ScreenDensity) MarshalJSON() ([]byte, error) { + type NoMethod ScreenDensity + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// ScreenDensityTargeting: Targeting based on screen density. +type ScreenDensityTargeting struct { + // Alternatives: Targeting of other sibling directories that were in the + // Bundle. For main splits this is targeting of other main splits. + Alternatives []*ScreenDensity `json:"alternatives,omitempty"` + + // Value: Value of a screen density. + Value []*ScreenDensity `json:"value,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Alternatives") 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. "Alternatives") 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 *ScreenDensityTargeting) MarshalJSON() ([]byte, error) { + type NoMethod ScreenDensityTargeting + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// SdkVersion: Represents an sdk version. +type SdkVersion struct { + // Min: Inclusive minimum value of an sdk version. + Min int64 `json:"min,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Min") 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. "Min") 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 *SdkVersion) MarshalJSON() ([]byte, error) { + type NoMethod SdkVersion + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// SdkVersionTargeting: Targeting based on sdk version. +type SdkVersionTargeting struct { + // Alternatives: Targeting of other sibling directories that were in the + // Bundle. For main splits this is targeting of other main splits. + Alternatives []*SdkVersion `json:"alternatives,omitempty"` + + // Value: Value of an sdk version. + Value []*SdkVersion `json:"value,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Alternatives") 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. "Alternatives") 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 *SdkVersionTargeting) MarshalJSON() ([]byte, error) { + type NoMethod SdkVersionTargeting + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// SplitApkMetadata: Holds data specific to Split APKs. +type SplitApkMetadata struct { + // IsMasterSplit: Indicates whether this APK is the main split of the + // module. + IsMasterSplit bool `json:"isMasterSplit,omitempty"` + + // SplitId: Id of the split. + SplitId string `json:"splitId,omitempty"` + + // ForceSendFields is a list of field names (e.g. "IsMasterSplit") 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. "IsMasterSplit") 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 *SplitApkMetadata) MarshalJSON() ([]byte, error) { + type NoMethod SplitApkMetadata + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// SplitApkVariant: Variant is a group of APKs that covers a part of the +// device configuration space. APKs from multiple variants are never +// combined on one device. +type SplitApkVariant struct { + // ApkSet: Set of APKs, one set per module. + ApkSet []*ApkSet `json:"apkSet,omitempty"` + + // Targeting: Variant-level targeting. + Targeting *VariantTargeting `json:"targeting,omitempty"` + + // VariantNumber: Number of the variant, starting at 0 (unless + // overridden). A device will receive APKs from the first variant that + // matches the device configuration, with higher variant numbers having + // priority over lower variant numbers. + VariantNumber int64 `json:"variantNumber,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ApkSet") 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. "ApkSet") 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 *SplitApkVariant) MarshalJSON() ([]byte, error) { + type NoMethod SplitApkVariant + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// StandaloneApkMetadata: Holds data specific to Standalone APKs. +type StandaloneApkMetadata struct { + // FusedModuleName: Names of the modules fused in this standalone APK. + FusedModuleName []string `json:"fusedModuleName,omitempty"` + + // ForceSendFields is a list of field names (e.g. "FusedModuleName") 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. "FusedModuleName") 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 *StandaloneApkMetadata) MarshalJSON() ([]byte, error) { + type NoMethod StandaloneApkMetadata + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // SubscribeWithGoogleInfo: Information associated with purchases made // with 'Subscribe with Google'. type SubscribeWithGoogleInfo struct { @@ -5548,6 +6297,40 @@ func (s *SystemFeature) MarshalJSON() ([]byte, error) { type SystemInitiatedCancellation struct { } +// TargetingInfo: Targeting information about the generated apks. +type TargetingInfo struct { + // AssetSliceSet: List of created asset slices. + AssetSliceSet []*AssetSliceSet `json:"assetSliceSet,omitempty"` + + // PackageName: The package name of this app. + PackageName string `json:"packageName,omitempty"` + + // Variant: List of the created variants. + Variant []*SplitApkVariant `json:"variant,omitempty"` + + // ForceSendFields is a list of field names (e.g. "AssetSliceSet") 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. "AssetSliceSet") 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 *TargetingInfo) MarshalJSON() ([]byte, error) { + type NoMethod TargetingInfo + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // TargetingRuleScope: Defines the scope of subscriptions which a // targeting rule can match to target offers to users based on past or // current entitlement. @@ -5620,6 +6403,80 @@ func (s *Testers) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// TextureCompressionFormat: Represents texture compression format. +type TextureCompressionFormat struct { + // Alias: Alias for texture compression format. + // + // Possible values: + // "UNSPECIFIED_TEXTURE_COMPRESSION_FORMAT" - Unspecified format. + // "ETC1_RGB8" - ETC1_RGB8 format. + // "PALETTED" - PALETTED format. + // "THREE_DC" - THREE_DC format. + // "ATC" - ATC format. + // "LATC" - LATC format. + // "DXT1" - DXT1 format. + // "S3TC" - S3TC format. + // "PVRTC" - PVRTC format. + // "ASTC" - ASTC format. + // "ETC2" - ETC2 format. + Alias string `json:"alias,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Alias") 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. "Alias") 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 *TextureCompressionFormat) MarshalJSON() ([]byte, error) { + type NoMethod TextureCompressionFormat + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// TextureCompressionFormatTargeting: Targeting by a texture compression +// format. +type TextureCompressionFormatTargeting struct { + // Alternatives: List of alternative TCFs (TCFs targeted by the sibling + // splits). + Alternatives []*TextureCompressionFormat `json:"alternatives,omitempty"` + + // Value: The list of targeted TCFs. Should not be empty. + Value []*TextureCompressionFormat `json:"value,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Alternatives") 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. "Alternatives") 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 *TextureCompressionFormatTargeting) MarshalJSON() ([]byte, error) { + type NoMethod TextureCompressionFormatTargeting + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // Timestamp: A Timestamp represents a point in time independent of any // time zone or local calendar, encoded as a count of seconds and // fractions of seconds at nanosecond resolution. The count is relative @@ -6150,6 +7007,39 @@ func (s *UserComment) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// UserCountriesTargeting: Describes an inclusive/exclusive list of +// country codes that module targets. +type UserCountriesTargeting struct { + // CountryCodes: List of country codes in the two-letter CLDR territory + // format. + CountryCodes []string `json:"countryCodes,omitempty"` + + // Exclude: Indicates if the list above is exclusive. + Exclude bool `json:"exclude,omitempty"` + + // ForceSendFields is a list of field names (e.g. "CountryCodes") 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. "CountryCodes") 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 *UserCountriesTargeting) MarshalJSON() ([]byte, error) { + type NoMethod UserCountriesTargeting + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // UserCountrySet: A set of user countries. A country set determines // what variation of app content gets served to a specific location. type UserCountrySet struct { @@ -6291,6 +7181,48 @@ func (s *Variant) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// VariantTargeting: Targeting on the level of variants. +type VariantTargeting struct { + // AbiTargeting: The abi that the variant targets + AbiTargeting *AbiTargeting `json:"abiTargeting,omitempty"` + + // MultiAbiTargeting: Multi-api-level targeting + MultiAbiTargeting *MultiAbiTargeting `json:"multiAbiTargeting,omitempty"` + + // ScreenDensityTargeting: The screen densities that this variant + // supports + ScreenDensityTargeting *ScreenDensityTargeting `json:"screenDensityTargeting,omitempty"` + + // SdkVersionTargeting: The sdk version that the variant targets + SdkVersionTargeting *SdkVersionTargeting `json:"sdkVersionTargeting,omitempty"` + + // TextureCompressionFormatTargeting: Texture-compression-format-level + // targeting + TextureCompressionFormatTargeting *TextureCompressionFormatTargeting `json:"textureCompressionFormatTargeting,omitempty"` + + // ForceSendFields is a list of field names (e.g. "AbiTargeting") 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. "AbiTargeting") 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 *VariantTargeting) MarshalJSON() ([]byte, error) { + type NoMethod VariantTargeting + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // VoidedPurchase: A VoidedPurchase resource indicates a purchase that // was either canceled/refunded/charged-back. type VoidedPurchase struct { diff --git a/api-list.json b/api-list.json index 9b366640e82..e4fa3b6ea66 100644 --- a/api-list.json +++ b/api-list.json @@ -841,6 +841,21 @@ "documentationLink": "https://cloud.google.com/binary-authorization/", "preferred": true }, + { + "kind": "discovery#directoryItem", + "id": "blockchainnodeengine:v1", + "name": "blockchainnodeengine", + "version": "v1", + "title": "Blockchain Node Engine API", + "description": "", + "discoveryRestUrl": "https://blockchainnodeengine.googleapis.com/$discovery/rest?version=v1", + "icons": { + "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", + "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" + }, + "documentationLink": "https://cloud.google.com/blockchain-node-engine", + "preferred": true + }, { "kind": "discovery#directoryItem", "id": "blogger:v2", @@ -1484,6 +1499,21 @@ "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" }, "documentationLink": "https://cloud.google.com/support/docs/apis", + "preferred": false + }, + { + "kind": "discovery#directoryItem", + "id": "cloudsupport:v2", + "name": "cloudsupport", + "version": "v2", + "title": "Google Cloud Support API", + "description": "Manages Google Cloud technical support cases for Customer Care support offerings.", + "discoveryRestUrl": "https://cloudsupport.googleapis.com/$discovery/rest?version=v2", + "icons": { + "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", + "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" + }, + "documentationLink": "https://cloud.google.com/support/docs/apis", "preferred": true }, { @@ -6088,7 +6118,7 @@ "name": "workloadmanager", "version": "v1", "title": "Workload Manager API", - "description": "", + "description": "Workload Manager is a service that provides tooling for enterprise workloads to automate the deployment and validation of your workloads against best practices and recommendations.", "discoveryRestUrl": "https://workloadmanager.googleapis.com/$discovery/rest?version=v1", "icons": { "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", diff --git a/apigateway/v1beta/apigateway-api.json b/apigateway/v1beta/apigateway-api.json index e71210c3f5e..f8538062b63 100644 --- a/apigateway/v1beta/apigateway-api.json +++ b/apigateway/v1beta/apigateway-api.json @@ -1083,7 +1083,7 @@ } } }, - "revision": "20230426", + "revision": "20230621", "rootUrl": "https://apigateway.googleapis.com/", "schemas": { "ApigatewayApi": { @@ -1332,6 +1332,7 @@ "type": "object" }, "ApigatewayBackendConfig": { + "deprecated": true, "description": "Configuration for all backends.", "id": "ApigatewayBackendConfig", "properties": { @@ -1464,6 +1465,7 @@ "properties": { "backendConfig": { "$ref": "ApigatewayBackendConfig", + "deprecated": true, "description": "Required. Backend settings that are applied to all backends of the Gateway." } }, diff --git a/apigee/v1/apigee-api.json b/apigee/v1/apigee-api.json index 2e33f9d662f..77fb95743dc 100644 --- a/apigee/v1/apigee-api.json +++ b/apigee/v1/apigee-api.json @@ -1594,6 +1594,488 @@ } } }, + "appgroups": { + "methods": { + "create": { + "description": "Creates an AppGroup. Once created, user can register apps under the AppGroup to obtain secret key and password. At creation time, the AppGroup's state is set as `active`. The attribute `Attribute` with key `attribute_name` as `__apigee_reserved__developer_details` can be used to store developers and their roles. The JSON format expected is: [ { \"developer_id\":\"\", \"roles\":[ \"\" ] } ] and is dealt in base64encoded format. Etag will be available in attribute `Attribute` with key `attribute_name` as `__apigee_reserved__developer_details_etag` for that AppGroup.", + "flatPath": "v1/organizations/{organizationsId}/appgroups", + "httpMethod": "POST", + "id": "apigee.organizations.appgroups.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. Name of the Apigee organization in which the AppGroup is created. Use the following structure in your request: `organizations/{org}`.", + "location": "path", + "pattern": "^organizations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/appgroups", + "request": { + "$ref": "GoogleCloudApigeeV1AppGroup" + }, + "response": { + "$ref": "GoogleCloudApigeeV1AppGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes an AppGroup. All app and API keys associations with the AppGroup are also removed. **Warning**: This API will permanently delete the AppGroup and related artifacts. **Note**: The delete operation is asynchronous. The AppGroup app is deleted immediately, but its associated resources, such as apps and API keys, may take anywhere from a few seconds to a few minutes to be deleted.", + "flatPath": "v1/organizations/{organizationsId}/appgroups/{appgroupsId}", + "httpMethod": "DELETE", + "id": "apigee.organizations.appgroups.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. Name of the AppGroup. Use the following structure in your request: `organizations/{org}/appgroups/{app_group_name}`", + "location": "path", + "pattern": "^organizations/[^/]+/appgroups/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "GoogleCloudApigeeV1AppGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Returns the AppGroup details for the provided AppGroup name in the request URI.", + "flatPath": "v1/organizations/{organizationsId}/appgroups/{appgroupsId}", + "httpMethod": "GET", + "id": "apigee.organizations.appgroups.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. Name of the AppGroup. Use the following structure in your request: `organizations/{org}/appgroups/{app_group_name}`", + "location": "path", + "pattern": "^organizations/[^/]+/appgroups/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "GoogleCloudApigeeV1AppGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists all AppGroups in an organization. A maximum of 1000 AppGroups are returned in the response if PageSize is not specified, or if the PageSize is greater than 1000.", + "flatPath": "v1/organizations/{organizationsId}/appgroups", + "httpMethod": "GET", + "id": "apigee.organizations.appgroups.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "The filter expression to be used to get the list of AppGroups, where filtering can be done on name, correlationID or channelID of the app group. Example: filter = \"name = foobar\"", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Count of AppGroups a single page can have in the response. If unspecified, at most 1000 AppGroups will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The starting index record for listing the AppGroups.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. Name of the Apigee organization. Use the following structure in your request: `organizations/{org}`.", + "location": "path", + "pattern": "^organizations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/appgroups", + "response": { + "$ref": "GoogleCloudApigeeV1ListAppGroupsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "update": { + "description": "Updates an appGroup. This API replaces the existing appGroup details with those specified in the request. Include or exclude any existing details that you want to retain or delete, respectively. Note that the state of the AppGroup should be updated using `action`, and not via AppGroup. The custom attribute limit is 1000, and is how `__apigee_reserved__developer_details` can be updated. **Note**: OAuth access tokens and Key Management Service (KMS) entities (apps, developers, and API products) are cached for 180 seconds (current default). Any custom attributes associated with these entities are cached for at least 180 seconds after the entity is accessed at runtime. Therefore, an `ExpiresIn` element on the OAuthV2 policy won't be able to expire an access token in less than 180 seconds.", + "flatPath": "v1/organizations/{organizationsId}/appgroups/{appgroupsId}", + "httpMethod": "PUT", + "id": "apigee.organizations.appgroups.update", + "parameterOrder": [ + "name" + ], + "parameters": { + "action": { + "description": "Activate or de-activate the appGroup by setting the action as `active` or `inactive`. The `Content-Type` header must be set to `application/octet-stream`, with empty body.", + "location": "query", + "type": "string" + }, + "name": { + "description": "Required. Name of the AppGroup. Use the following structure in your request: `organizations/{org}/appgroups/{app_group_name}`", + "location": "path", + "pattern": "^organizations/[^/]+/appgroups/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "request": { + "$ref": "GoogleCloudApigeeV1AppGroup" + }, + "response": { + "$ref": "GoogleCloudApigeeV1AppGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, + "resources": { + "apps": { + "methods": { + "create": { + "description": "Creates an app and associates it with an AppGroup. This API associates the AppGroup app with the specified API product and auto-generates an API key for the app to use in calls to API proxies inside that API product. The `name` is the unique ID of the app that you can use in API calls.", + "flatPath": "v1/organizations/{organizationsId}/appgroups/{appgroupsId}/apps", + "httpMethod": "POST", + "id": "apigee.organizations.appgroups.apps.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. Name of the AppGroup. Use the following structure in your request: `organizations/{org}/appgroups/{app_group_name}`", + "location": "path", + "pattern": "^organizations/[^/]+/appgroups/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/apps", + "request": { + "$ref": "GoogleCloudApigeeV1AppGroupApp" + }, + "response": { + "$ref": "GoogleCloudApigeeV1AppGroupApp" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes an AppGroup app. **Note**: The delete operation is asynchronous. The AppGroup app is deleted immediately, but its associated resources, such as app keys or access tokens, may take anywhere from a few seconds to a few minutes to be deleted.", + "flatPath": "v1/organizations/{organizationsId}/appgroups/{appgroupsId}/apps/{appsId}", + "httpMethod": "DELETE", + "id": "apigee.organizations.appgroups.apps.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. Name of the AppGroup app. Use the following structure in your request: `organizations/{org}/appgroups/{app_group_name}/apps/{app}`", + "location": "path", + "pattern": "^organizations/[^/]+/appgroups/[^/]+/apps/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "GoogleCloudApigeeV1AppGroupApp" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Returns the details for an AppGroup app.", + "flatPath": "v1/organizations/{organizationsId}/appgroups/{appgroupsId}/apps/{appsId}", + "httpMethod": "GET", + "id": "apigee.organizations.appgroups.apps.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. Name of the AppGroup app. Use the following structure in your request: `organizations/{org}/appgroups/{app_group_name}/apps/{app}`", + "location": "path", + "pattern": "^organizations/[^/]+/appgroups/[^/]+/apps/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "GoogleCloudApigeeV1AppGroupApp" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists all apps created by an AppGroup in an Apigee organization. Optionally, you can request an expanded view of the AppGroup apps. Lists all AppGroupApps in an AppGroup. A maximum of 1000 AppGroup apps are returned in the response if PageSize is not specified, or if the PageSize is greater than 1000.", + "flatPath": "v1/organizations/{organizationsId}/appgroups/{appgroupsId}/apps", + "httpMethod": "GET", + "id": "apigee.organizations.appgroups.apps.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "Optional. Maximum number entries to return. If unspecified, at most 1000 entries will be returned.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. Page token. If provides, must be a valid AppGroup app returned from a previous call that can be used to retrieve the next page.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. Name of the AppGroup. Use the following structure in your request: `organizations/{org}/appgroups/{app_group_name}`", + "location": "path", + "pattern": "^organizations/[^/]+/appgroups/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/apps", + "response": { + "$ref": "GoogleCloudApigeeV1ListAppGroupAppsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "update": { + "description": "Updates the details for an AppGroup app. In addition, you can add an API product to an AppGroup app and automatically generate an API key for the app to use when calling APIs in the API product. If you want to use an existing API key for the API product, add the API product to the API key using the UpdateAppGroupAppKey API. Using this API, you cannot update the app name, as it is the primary key used to identify the app and cannot be changed. This API replaces the existing attributes with those specified in the request. Include or exclude any existing attributes that you want to retain or delete, respectively.", + "flatPath": "v1/organizations/{organizationsId}/appgroups/{appgroupsId}/apps/{appsId}", + "httpMethod": "PUT", + "id": "apigee.organizations.appgroups.apps.update", + "parameterOrder": [ + "name" + ], + "parameters": { + "action": { + "description": "Approve or revoke the consumer key by setting this value to `approve` or `revoke`. The `Content-Type` header must be set to `application/octet-stream`, with empty body.", + "location": "query", + "type": "string" + }, + "name": { + "description": "Required. Name of the AppGroup app. Use the following structure in your request: `organizations/{org}/appgroups/{app_group_name}/apps/{app}`", + "location": "path", + "pattern": "^organizations/[^/]+/appgroups/[^/]+/apps/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "request": { + "$ref": "GoogleCloudApigeeV1AppGroupApp" + }, + "response": { + "$ref": "GoogleCloudApigeeV1AppGroupApp" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, + "resources": { + "keys": { + "methods": { + "create": { + "description": "Creates a custom consumer key and secret for a AppGroup app. This is particularly useful if you want to migrate existing consumer keys and secrets to Apigee from another system. Consumer keys and secrets can contain letters, numbers, underscores, and hyphens. No other special characters are allowed. To avoid service disruptions, a consumer key and secret should not exceed 2 KBs each. **Note**: When creating the consumer key and secret, an association to API products will not be made. Therefore, you should not specify the associated API products in your request. Instead, use the ProductizeAppGroupAppKey API to make the association after the consumer key and secret are created. If a consumer key and secret already exist, you can keep them or delete them using the DeleteAppGroupAppKey API.", + "flatPath": "v1/organizations/{organizationsId}/appgroups/{appgroupsId}/apps/{appsId}/keys", + "httpMethod": "POST", + "id": "apigee.organizations.appgroups.apps.keys.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. Parent of the AppGroup app key. Use the following structure in your request: `organizations/{org}/appgroups/{app_group_name}/apps/{app}/keys`", + "location": "path", + "pattern": "^organizations/[^/]+/appgroups/[^/]+/apps/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/keys", + "request": { + "$ref": "GoogleCloudApigeeV1AppGroupAppKey" + }, + "response": { + "$ref": "GoogleCloudApigeeV1AppGroupAppKey" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes an app's consumer key and removes all API products associated with the app. After the consumer key is deleted, it cannot be used to access any APIs.", + "flatPath": "v1/organizations/{organizationsId}/appgroups/{appgroupsId}/apps/{appsId}/keys/{keysId}", + "httpMethod": "DELETE", + "id": "apigee.organizations.appgroups.apps.keys.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. Name of the AppGroup app key. Use the following structure in your request: `organizations/{org}/appgroups/{app_group_name}/apps/{app}/keys/{key}`", + "location": "path", + "pattern": "^organizations/[^/]+/appgroups/[^/]+/apps/[^/]+/keys/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "GoogleCloudApigeeV1AppGroupAppKey" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets details for a consumer key for a AppGroup app, including the key and secret value, associated API products, and other information.", + "flatPath": "v1/organizations/{organizationsId}/appgroups/{appgroupsId}/apps/{appsId}/keys/{keysId}", + "httpMethod": "GET", + "id": "apigee.organizations.appgroups.apps.keys.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. Name of the AppGroup app key. Use the following structure in your request: `organizations/{org}/appgroups/{app_group_name}/apps/{app}/keys/{key}`", + "location": "path", + "pattern": "^organizations/[^/]+/appgroups/[^/]+/apps/[^/]+/keys/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "GoogleCloudApigeeV1AppGroupAppKey" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "updateAppGroupAppKey": { + "description": "Adds an API product to an AppGroupAppKey, enabling the app that holds the key to access the API resources bundled in the API product. In addition, you can add attributes to the AppGroupAppKey. This API replaces the existing attributes with those specified in the request. Include or exclude any existing attributes that you want to retain or delete, respectively. You can use the same key to access all API products associated with the app.", + "flatPath": "v1/organizations/{organizationsId}/appgroups/{appgroupsId}/apps/{appsId}/keys/{keysId}", + "httpMethod": "POST", + "id": "apigee.organizations.appgroups.apps.keys.updateAppGroupAppKey", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. Name of the AppGroup app key. Use the following structure in your request: `organizations/{org}/appgroups/{app_group_name}/apps/{app}/keys/{key}`", + "location": "path", + "pattern": "^organizations/[^/]+/appgroups/[^/]+/apps/[^/]+/keys/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "request": { + "$ref": "GoogleCloudApigeeV1UpdateAppGroupAppKeyRequest" + }, + "response": { + "$ref": "GoogleCloudApigeeV1AppGroupAppKey" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, + "resources": { + "apiproducts": { + "methods": { + "delete": { + "description": "Removes an API product from an app's consumer key. After the API product is removed, the app cannot access the API resources defined in that API product. **Note**: The consumer key is not removed, only its association with the API product.", + "flatPath": "v1/organizations/{organizationsId}/appgroups/{appgroupsId}/apps/{appsId}/keys/{keysId}/apiproducts/{apiproductsId}", + "httpMethod": "DELETE", + "id": "apigee.organizations.appgroups.apps.keys.apiproducts.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. Parent of the AppGroup app key. Use the following structure in your request: `organizations/{org}/appgroups/{app_group_name}/apps/{app}/keys/{key}/apiproducts/{apiproduct}`", + "location": "path", + "pattern": "^organizations/[^/]+/appgroups/[^/]+/apps/[^/]+/keys/[^/]+/apiproducts/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "GoogleCloudApigeeV1AppGroupAppKey" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "updateAppGroupAppKeyApiProduct": { + "description": "Approves or revokes the consumer key for an API product. After a consumer key is approved, the app can use it to access APIs. A consumer key that is revoked or pending cannot be used to access an API. Any access tokens associated with a revoked consumer key will remain active. However, Apigee checks the status of the consumer key and if set to `revoked` will not allow access to the API.", + "flatPath": "v1/organizations/{organizationsId}/appgroups/{appgroupsId}/apps/{appsId}/keys/{keysId}/apiproducts/{apiproductsId}", + "httpMethod": "POST", + "id": "apigee.organizations.appgroups.apps.keys.apiproducts.updateAppGroupAppKeyApiProduct", + "parameterOrder": [ + "name" + ], + "parameters": { + "action": { + "description": "Approve or revoke the consumer key by setting this value to `approve` or `revoke` respectively. The `Content-Type` header, if set, must be set to `application/octet-stream`, with empty body.", + "location": "query", + "type": "string" + }, + "name": { + "description": "Required. Name of the API product in the developer app key in the following format: `organizations/{org}/appgroups/{app_group_name}/apps/{app}/keys/{key}/apiproducts/{apiproduct}`", + "location": "path", + "pattern": "^organizations/[^/]+/appgroups/[^/]+/apps/[^/]+/keys/[^/]+/apiproducts/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } + } + } + } + } + }, "apps": { "methods": { "get": { @@ -1636,7 +2118,7 @@ "type": "string" }, "apptype": { - "description": "Optional. Filter by the type of the app. Valid values are `company` or `developer`. Defaults to `developer`.", + "description": "Optional. 'apptype' is no longer available. Use a 'filter' instead.", "location": "query", "type": "string" }, @@ -1645,6 +2127,11 @@ "location": "query", "type": "boolean" }, + "filter": { + "description": "Optional. The filter expression to be used to get the list of apps, where filtering can be done on developerEmail, apiProduct, consumerKey, status, appId, appName and appType. Examples: \"developerEmail=foo@bar.com\", \"appType=AppGroup\", or \"appType=Developer\" \"filter\" is supported from ver 1.10.0 and above.", + "location": "query", + "type": "string" + }, "ids": { "description": "Optional. Comma-separated list of app IDs on which to filter.", "location": "query", @@ -1660,6 +2147,17 @@ "location": "query", "type": "string" }, + "pageSize": { + "description": "Optional. Count of apps a single page can have in the response. If unspecified, at most 100 apps will be returned. The maximum value is 100; values above 100 will be coerced to 100. \"page_size\" is supported from ver 1.10.0 and above.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. The starting index record for listing the developers. \"page_token\" is supported from ver 1.10.0 and above.", + "location": "query", + "type": "string" + }, "parent": { "description": "Required. Resource path of the parent in the following format: `organizations/{org}`", "location": "path", @@ -2529,7 +3027,7 @@ "keys": { "methods": { "create": { - "description": "Creates a custom consumer key and secret for a developer app. This is particularly useful if you want to migrate existing consumer keys and secrets to Apigee from another system. Consumer keys and secrets can contain letters, numbers, underscores, and hyphens. No other special characters are allowed. To avoid service disruptions, a consumer key and secret should not exceed 2 KBs each. **Note**: When creating the consumer key and secret, an association to API products will not be made. Therefore, you should not specify the associated API products in your request. Instead, use the UpdateDeveloperAppKey API to make the association after the consumer key and secret are created. If a consumer key and secret already exist, you can keep them or delete them using the DeleteDeveloperAppKey API.", + "description": "Creates a custom consumer key and secret for a developer app. This is particularly useful if you want to migrate existing consumer keys and secrets to Apigee from another system. Consumer keys and secrets can contain letters, numbers, underscores, and hyphens. No other special characters are allowed. To avoid service disruptions, a consumer key and secret should not exceed 2 KBs each. **Note**: When creating the consumer key and secret, an association to API products will not be made. Therefore, you should not specify the associated API products in your request. Instead, use the UpdateDeveloperAppKey API to make the association after the consumer key and secret are created. If a consumer key and secret already exist, you can keep them or delete them using the DeleteDeveloperAppKey API. **Note**: All keys start out with status=approved, even if status=revoked is passed when the key is created. To revoke a key, use the UpdateDeveloperAppKey API.", "flatPath": "v1/organizations/{organizationsId}/developers/{developersId}/apps/{appsId}/keys", "httpMethod": "POST", "id": "apigee.organizations.developers.apps.keys.create", @@ -2731,7 +3229,7 @@ "create": { "methods": { "create": { - "description": "Creates a custom consumer key and secret for a developer app. This is particularly useful if you want to migrate existing consumer keys and secrets to Apigee from another system. Consumer keys and secrets can contain letters, numbers, underscores, and hyphens. No other special characters are allowed. To avoid service disruptions, a consumer key and secret should not exceed 2 KBs each. **Note**: When creating the consumer key and secret, an association to API products will not be made. Therefore, you should not specify the associated API products in your request. Instead, use the UpdateDeveloperAppKey API to make the association after the consumer key and secret are created. If a consumer key and secret already exist, you can keep them or delete them using the DeleteDeveloperAppKey API.", + "description": "Creates a custom consumer key and secret for a developer app. This is particularly useful if you want to migrate existing consumer keys and secrets to Apigee from another system. Consumer keys and secrets can contain letters, numbers, underscores, and hyphens. No other special characters are allowed. To avoid service disruptions, a consumer key and secret should not exceed 2 KBs each. **Note**: When creating the consumer key and secret, an association to API products will not be made. Therefore, you should not specify the associated API products in your request. Instead, use the UpdateDeveloperAppKey API to make the association after the consumer key and secret are created. If a consumer key and secret already exist, you can keep them or delete them using the DeleteDeveloperAppKey API. **Note**: All keys start out with status=approved, even if status=revoked is passed when the key is created. To revoke a key, use the UpdateDeveloperAppKey API.", "flatPath": "v1/organizations/{organizationsId}/developers/{developersId}/apps/{appsId}/keys/create", "httpMethod": "POST", "id": "apigee.organizations.developers.apps.keys.create.create", @@ -8744,7 +9242,7 @@ } } }, - "revision": "20230526", + "revision": "20230627", "rootUrl": "https://apigee.googleapis.com/", "schemas": { "EdgeConfigstoreBundleBadBundle": { @@ -8803,6 +9301,21 @@ }, "type": "object" }, + "GoogleCloudApigeeV1APIProductAssociation": { + "description": "APIProductAssociation has the API product and its administrative state association.", + "id": "GoogleCloudApigeeV1APIProductAssociation", + "properties": { + "apiproduct": { + "description": "API product to be associated with the credential.", + "type": "string" + }, + "status": { + "description": "The API product credential associated status. Valid values are `approved` or `revoked`.", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudApigeeV1Access": { "id": "GoogleCloudApigeeV1Access", "properties": { @@ -9399,6 +9912,10 @@ }, "type": "array" }, + "appGroup": { + "description": "Name of the AppGroup", + "type": "string" + }, "appId": { "description": "ID of the app.", "type": "string" @@ -9432,6 +9949,10 @@ "readOnly": true, "type": "array" }, + "developerEmail": { + "description": "Email of the developer.", + "type": "string" + }, "developerId": { "description": "ID of the developer.", "type": "string" @@ -9465,6 +9986,192 @@ }, "type": "object" }, + "GoogleCloudApigeeV1AppGroup": { + "description": "AppGroup contains the request/response fields representing the logical grouping of apps. Note that appgroup_id, create_time and update_time cannot be changed by the user, and gets updated by the system. The name and the organization once provided cannot be edited subsequently.", + "id": "GoogleCloudApigeeV1AppGroup", + "properties": { + "appGroupId": { + "description": "Output only. Internal identifier that cannot be edited", + "readOnly": true, + "type": "string" + }, + "attributes": { + "description": "A list of attributes", + "items": { + "$ref": "GoogleCloudApigeeV1Attribute" + }, + "type": "array" + }, + "channelId": { + "description": "channel identifier identifies the owner maintaing this grouping.", + "type": "string" + }, + "channelUri": { + "description": "A reference to the associated storefront/marketplace.", + "type": "string" + }, + "createdAt": { + "description": "Output only. Created time as milliseconds since epoch.", + "format": "int64", + "readOnly": true, + "type": "string" + }, + "displayName": { + "description": "app group name displayed in the UI", + "type": "string" + }, + "lastModifiedAt": { + "description": "Output only. Modified time as milliseconds since epoch.", + "format": "int64", + "readOnly": true, + "type": "string" + }, + "name": { + "description": "Immutable. Name of the AppGroup. Characters you can use in the name are restricted to: A-Z0-9._\\-$ %.", + "type": "string" + }, + "organization": { + "description": "Immutable. the org the app group is created", + "type": "string" + }, + "status": { + "description": "Valid values are `active` or `inactive`. Note that the status of the AppGroup should be updated via UpdateAppGroupRequest by setting the action as `active` or `inactive`.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudApigeeV1AppGroupApp": { + "description": "Response for [GetAppGroupApp].[AppGroupApps.GetAppGroupApp], [CreateAppGroupAppRequest].[AppGroupApp.CreateAppGroupAppRequest] and [DeleteAppGroupApp].[AppGroupApp.DeleteAppGroupApp]", + "id": "GoogleCloudApigeeV1AppGroupApp", + "properties": { + "apiProducts": { + "description": "List of API products associated with the AppGroup app.", + "items": { + "type": "string" + }, + "type": "array" + }, + "appGroup": { + "description": "Immutable. Name of the parent AppGroup whose resource name format is of syntax (organizations/*/appgroups/*).", + "type": "string" + }, + "appId": { + "description": "Immutable. ID of the AppGroup app.", + "type": "string" + }, + "attributes": { + "description": "List of attributes for the AppGroup app.", + "items": { + "$ref": "GoogleCloudApigeeV1Attribute" + }, + "type": "array" + }, + "callbackUrl": { + "description": "Callback URL used by OAuth 2.0 authorization servers to communicate authorization codes back to AppGroup apps.", + "type": "string" + }, + "createdAt": { + "description": "Output only. Time the AppGroup app was created in milliseconds since epoch.", + "format": "int64", + "readOnly": true, + "type": "string" + }, + "credentials": { + "description": "Output only. Set of credentials for the AppGroup app consisting of the consumer key/secret pairs associated with the API products.", + "items": { + "$ref": "GoogleCloudApigeeV1Credential" + }, + "readOnly": true, + "type": "array" + }, + "keyExpiresIn": { + "description": "Immutable. Expiration time, in seconds, for the consumer key that is generated for the AppGroup app. If not set or left to the default value of `-1`, the API key never expires. The expiration time can't be updated after it is set.", + "format": "int64", + "type": "string" + }, + "lastModifiedAt": { + "description": "Output only. Time the AppGroup app was modified in milliseconds since epoch.", + "format": "int64", + "readOnly": true, + "type": "string" + }, + "name": { + "description": "Immutable. Name of the AppGroup app whose resource name format is of syntax (organizations/*/appgroups/*/apps/*).", + "type": "string" + }, + "scopes": { + "description": "Scopes to apply to the AppGroup app. The specified scopes must already exist for the API product that you associate with the AppGroup app.", + "items": { + "type": "string" + }, + "type": "array" + }, + "status": { + "description": "Status of the App. Valid values include `approved` or `revoked`.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudApigeeV1AppGroupAppKey": { + "description": "AppGroupAppKey contains all the information associated with the credentials.", + "id": "GoogleCloudApigeeV1AppGroupAppKey", + "properties": { + "apiProducts": { + "description": "Output only. List of API products and its status for which the credential can be used. **Note**: Use UpdateAppGroupAppKeyApiProductRequest API to make the association after the consumer key and secret are created.", + "items": { + "$ref": "GoogleCloudApigeeV1APIProductAssociation" + }, + "readOnly": true, + "type": "array" + }, + "attributes": { + "description": "List of attributes associated with the credential.", + "items": { + "$ref": "GoogleCloudApigeeV1Attribute" + }, + "type": "array" + }, + "consumerKey": { + "description": "Immutable. Consumer key.", + "type": "string" + }, + "consumerSecret": { + "description": "Secret key.", + "type": "string" + }, + "expiresAt": { + "description": "Output only. Time the AppGroup app expires in milliseconds since epoch.", + "format": "int64", + "readOnly": true, + "type": "string" + }, + "expiresInSeconds": { + "description": "Immutable. Expiration time, in seconds, for the consumer key. If not set or left to the default value of `-1`, the API key never expires. The expiration time can't be updated after it is set.", + "format": "int64", + "type": "string" + }, + "issuedAt": { + "description": "Output only. Time the AppGroup app was created in milliseconds since epoch.", + "format": "int64", + "readOnly": true, + "type": "string" + }, + "scopes": { + "description": "Scopes to apply to the app. The specified scope names must already be defined for the API product that you associate with the app.", + "items": { + "type": "string" + }, + "type": "array" + }, + "status": { + "description": "Status of the credential. Valid values include `approved` or `revoked`.", + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudApigeeV1ArchiveDeployment": { "description": "Archive Deployment information.", "id": "GoogleCloudApigeeV1ArchiveDeployment", @@ -10987,6 +11694,7 @@ "type": "array" }, "name": { + "deprecated": true, "description": "Comma joined dimension names. E.g. \"dim1_name,dim2_name\". Deprecated. If name already has comma before join, we may get wrong splits. Please use individual_names.", "type": "string" } @@ -11784,6 +12492,7 @@ "type": "string" }, "peeringCidrRange": { + "deprecated": true, "description": "Optional. Size of the CIDR block range that will be reserved by the instance. PAID organizations support `SLASH_16` to `SLASH_20` and defaults to `SLASH_16`. Evaluation organizations support only `SLASH_23`.", "enum": [ "CIDR_RANGE_UNSPECIFIED", @@ -12078,6 +12787,47 @@ }, "type": "object" }, + "GoogleCloudApigeeV1ListAppGroupAppsResponse": { + "description": "Response for ListAppGroupApps", + "id": "GoogleCloudApigeeV1ListAppGroupAppsResponse", + "properties": { + "appGroupApps": { + "description": "List of AppGroup apps and their credentials.", + "items": { + "$ref": "GoogleCloudApigeeV1AppGroupApp" + }, + "type": "array" + }, + "nextPageToken": { + "description": "Token that can be sent as `next_page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudApigeeV1ListAppGroupsResponse": { + "description": "ListAppGroupsResponse contains the 0 or more AppGroups, along with the optional page token and the total count of apps.", + "id": "GoogleCloudApigeeV1ListAppGroupsResponse", + "properties": { + "appGroups": { + "description": "List of AppGroups.", + "items": { + "$ref": "GoogleCloudApigeeV1AppGroup" + }, + "type": "array" + }, + "nextPageToken": { + "description": "Token that can be sent as `next_page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages.", + "type": "string" + }, + "totalSize": { + "description": "Total count of AppGroups.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, "GoogleCloudApigeeV1ListAppsResponse": { "id": "GoogleCloudApigeeV1ListAppsResponse", "properties": { @@ -12086,6 +12836,15 @@ "$ref": "GoogleCloudApigeeV1App" }, "type": "array" + }, + "nextPageToken": { + "description": "Token that can be sent as `next_page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages.", + "type": "string" + }, + "totalSize": { + "description": "Total count of Apps.", + "format": "int32", + "type": "integer" } }, "type": "object" @@ -12910,6 +13669,7 @@ "description": "Addon configurations of the Apigee organization." }, "analyticsRegion": { + "deprecated": true, "description": "Required. DEPRECATED: This field will eventually be deprecated and replaced with a differently-named field. Primary Google Cloud region for analytics data storage. For valid values, see [Create an Apigee organization](https://cloud.google.com/apigee/docs/api-platform/get-started/create-org).", "type": "string" }, @@ -13057,6 +13817,7 @@ "type": "string" }, "subscriptionType": { + "deprecated": true, "description": "Output only. DEPRECATED: This will eventually be replaced by BillingType. Subscription type of the Apigee organization. Valid values include trial (free, limited, and for evaluation purposes only) or paid (full subscription has been purchased). See [Apigee pricing](https://cloud.google.com/apigee/pricing/).", "enum": [ "SUBSCRIPTION_TYPE_UNSPECIFIED", @@ -13107,6 +13868,7 @@ "type": "string" }, "projectIds": { + "deprecated": true, "description": "DEPRECATED: Use `project_id`. An Apigee Organization is mapped to a single project.", "items": { "type": "string" @@ -13179,87 +13941,6 @@ }, "type": "object" }, - "GoogleCloudApigeeV1ProfileConfig": { - "description": "ProfileConfig defines a set of categories and policies which will be used to compute security score.", - "id": "GoogleCloudApigeeV1ProfileConfig", - "properties": { - "categories": { - "description": "List of categories of profile config.", - "items": { - "$ref": "GoogleCloudApigeeV1ProfileConfigCategory" - }, - "type": "array" - } - }, - "type": "object" - }, - "GoogleCloudApigeeV1ProfileConfigAbuse": { - "description": "Checks for abuse, which includes any requests sent to the API for purposes other than what it is intended for, such as high volumes of requests, data scraping, and abuse related to authorization.", - "id": "GoogleCloudApigeeV1ProfileConfigAbuse", - "properties": {}, - "type": "object" - }, - "GoogleCloudApigeeV1ProfileConfigAuthorization": { - "description": "By default, following policies will be included: - JWS - JWT - OAuth - BasicAuth - APIKey", - "id": "GoogleCloudApigeeV1ProfileConfigAuthorization", - "properties": {}, - "type": "object" - }, - "GoogleCloudApigeeV1ProfileConfigCORS": { - "description": "Checks to see if you have CORS policy in place.", - "id": "GoogleCloudApigeeV1ProfileConfigCORS", - "properties": {}, - "type": "object" - }, - "GoogleCloudApigeeV1ProfileConfigCategory": { - "description": "Advanced API Security provides security profile that scores the following categories.", - "id": "GoogleCloudApigeeV1ProfileConfigCategory", - "properties": { - "abuse": { - "$ref": "GoogleCloudApigeeV1ProfileConfigAbuse", - "description": "Checks for abuse, which includes any requests sent to the API for purposes other than what it is intended for, such as high volumes of requests, data scraping, and abuse related to authorization." - }, - "authorization": { - "$ref": "GoogleCloudApigeeV1ProfileConfigAuthorization", - "description": "Checks to see if you have an authorization policy in place." - }, - "cors": { - "$ref": "GoogleCloudApigeeV1ProfileConfigCORS", - "description": "Checks to see if you have CORS policy in place." - }, - "mediation": { - "$ref": "GoogleCloudApigeeV1ProfileConfigMediation", - "description": "Checks to see if you have a mediation policy in place." - }, - "mtls": { - "$ref": "GoogleCloudApigeeV1ProfileConfigMTLS", - "description": "Checks to see if you have configured mTLS for the target server." - }, - "threat": { - "$ref": "GoogleCloudApigeeV1ProfileConfigThreat", - "description": "Checks to see if you have a threat protection policy in place." - } - }, - "type": "object" - }, - "GoogleCloudApigeeV1ProfileConfigMTLS": { - "description": "Checks to see if you have configured mTLS for the target server.", - "id": "GoogleCloudApigeeV1ProfileConfigMTLS", - "properties": {}, - "type": "object" - }, - "GoogleCloudApigeeV1ProfileConfigMediation": { - "description": "By default, following policies will be included: - OASValidation - SOAPMessageValidation", - "id": "GoogleCloudApigeeV1ProfileConfigMediation", - "properties": {}, - "type": "object" - }, - "GoogleCloudApigeeV1ProfileConfigThreat": { - "description": "By default, following policies will be included: - XMLThreatProtection - JSONThreatProtection", - "id": "GoogleCloudApigeeV1ProfileConfigThreat", - "properties": {}, - "type": "object" - }, "GoogleCloudApigeeV1Properties": { "description": "Message for compatibility with legacy Edge specification for Java Properties object in JSON.", "id": "GoogleCloudApigeeV1Properties", @@ -13723,6 +14404,7 @@ "type": "string" }, "paymentFundingModel": { + "deprecated": true, "description": "DEPRECATED: This field is no longer supported and will eventually be removed when Apigee Hybrid 1.5/1.6 is no longer supported. Instead, use the `billingType` field inside `DeveloperMonetizationConfig` resource. Flag that specifies the billing account type, prepaid or postpaid.", "enum": [ "PAYMENT_FUNDING_MODEL_UNSPECIFIED", @@ -14498,10 +15180,6 @@ "description": "Immutable. Name of the security profile resource. Format: organizations/{org}/securityProfiles/{profile}", "type": "string" }, - "profileConfig": { - "$ref": "GoogleCloudApigeeV1ProfileConfig", - "description": "Customized profile configuration that computes the security score." - }, "revisionCreateTime": { "description": "Output only. The time when revision was created.", "format": "google-datetime", @@ -15367,6 +16045,28 @@ }, "type": "object" }, + "GoogleCloudApigeeV1UpdateAppGroupAppKeyRequest": { + "description": "Request for UpdateAppGroupAppKey", + "id": "GoogleCloudApigeeV1UpdateAppGroupAppKeyRequest", + "properties": { + "action": { + "description": "Approve or revoke the consumer key by setting this value to `approve` or `revoke` respectively. The `Content-Type` header, if set, must be set to `application/octet-stream`, with empty body.", + "type": "string" + }, + "apiProducts": { + "description": "The list of API products that will be associated with the credential. This list will be appended to the existing list of associated API Products for this App Key. Duplicates will be ignored.", + "items": { + "type": "string" + }, + "type": "array" + }, + "appGroupAppKey": { + "$ref": "GoogleCloudApigeeV1AppGroupAppKey", + "description": "The new AppGroupKey to be amended. Note that the status can be updated only via action." + } + }, + "type": "object" + }, "GoogleCloudApigeeV1UpdateError": { "description": "Details on why a resource update failed in the runtime.", "id": "GoogleCloudApigeeV1UpdateError", diff --git a/apigee/v1/apigee-gen.go b/apigee/v1/apigee-gen.go index fb7cde3528a..31dcb487319 100644 --- a/apigee/v1/apigee-gen.go +++ b/apigee/v1/apigee-gen.go @@ -170,6 +170,7 @@ func NewOrganizationsService(s *Service) *OrganizationsService { rs.Analytics = NewOrganizationsAnalyticsService(s) rs.Apiproducts = NewOrganizationsApiproductsService(s) rs.Apis = NewOrganizationsApisService(s) + rs.Appgroups = NewOrganizationsAppgroupsService(s) rs.Apps = NewOrganizationsAppsService(s) rs.Datacollectors = NewOrganizationsDatacollectorsService(s) rs.Deployments = NewOrganizationsDeploymentsService(s) @@ -200,6 +201,8 @@ type OrganizationsService struct { Apis *OrganizationsApisService + Appgroups *OrganizationsAppgroupsService + Apps *OrganizationsAppsService Datacollectors *OrganizationsDatacollectorsService @@ -360,6 +363,51 @@ type OrganizationsApisRevisionsDeploymentsService struct { s *Service } +func NewOrganizationsAppgroupsService(s *Service) *OrganizationsAppgroupsService { + rs := &OrganizationsAppgroupsService{s: s} + rs.Apps = NewOrganizationsAppgroupsAppsService(s) + return rs +} + +type OrganizationsAppgroupsService struct { + s *Service + + Apps *OrganizationsAppgroupsAppsService +} + +func NewOrganizationsAppgroupsAppsService(s *Service) *OrganizationsAppgroupsAppsService { + rs := &OrganizationsAppgroupsAppsService{s: s} + rs.Keys = NewOrganizationsAppgroupsAppsKeysService(s) + return rs +} + +type OrganizationsAppgroupsAppsService struct { + s *Service + + Keys *OrganizationsAppgroupsAppsKeysService +} + +func NewOrganizationsAppgroupsAppsKeysService(s *Service) *OrganizationsAppgroupsAppsKeysService { + rs := &OrganizationsAppgroupsAppsKeysService{s: s} + rs.Apiproducts = NewOrganizationsAppgroupsAppsKeysApiproductsService(s) + return rs +} + +type OrganizationsAppgroupsAppsKeysService struct { + s *Service + + Apiproducts *OrganizationsAppgroupsAppsKeysApiproductsService +} + +func NewOrganizationsAppgroupsAppsKeysApiproductsService(s *Service) *OrganizationsAppgroupsAppsKeysApiproductsService { + rs := &OrganizationsAppgroupsAppsKeysApiproductsService{s: s} + return rs +} + +type OrganizationsAppgroupsAppsKeysApiproductsService struct { + s *Service +} + func NewOrganizationsAppsService(s *Service) *OrganizationsAppsService { rs := &OrganizationsAppsService{s: s} return rs @@ -1239,6 +1287,39 @@ func (s *GoogleApiHttpBody) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// GoogleCloudApigeeV1APIProductAssociation: APIProductAssociation has +// the API product and its administrative state association. +type GoogleCloudApigeeV1APIProductAssociation struct { + // Apiproduct: API product to be associated with the credential. + Apiproduct string `json:"apiproduct,omitempty"` + + // Status: The API product credential associated status. Valid values + // are `approved` or `revoked`. + Status string `json:"status,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Apiproduct") 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. "Apiproduct") 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 *GoogleCloudApigeeV1APIProductAssociation) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudApigeeV1APIProductAssociation + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + type GoogleCloudApigeeV1Access struct { Get *GoogleCloudApigeeV1AccessGet `json:"Get,omitempty"` @@ -2138,6 +2219,9 @@ type GoogleCloudApigeeV1App struct { // ApiProducts: List of API products associated with the app. ApiProducts []*GoogleCloudApigeeV1ApiProductRef `json:"apiProducts,omitempty"` + // AppGroup: Name of the AppGroup + AppGroup string `json:"appGroup,omitempty"` + // AppId: ID of the app. AppId string `json:"appId,omitempty"` @@ -2158,6 +2242,9 @@ type GoogleCloudApigeeV1App struct { // are API key/secret pairs associated with API products. Credentials []*GoogleCloudApigeeV1Credential `json:"credentials,omitempty"` + // DeveloperEmail: Email of the developer. + DeveloperEmail string `json:"developerEmail,omitempty"` + // DeveloperId: ID of the developer. DeveloperId string `json:"developerId,omitempty"` @@ -2208,6 +2295,223 @@ func (s *GoogleCloudApigeeV1App) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// GoogleCloudApigeeV1AppGroup: AppGroup contains the request/response +// fields representing the logical grouping of apps. Note that +// appgroup_id, create_time and update_time cannot be changed by the +// user, and gets updated by the system. The name and the organization +// once provided cannot be edited subsequently. +type GoogleCloudApigeeV1AppGroup struct { + // AppGroupId: Output only. Internal identifier that cannot be edited + AppGroupId string `json:"appGroupId,omitempty"` + + // Attributes: A list of attributes + Attributes []*GoogleCloudApigeeV1Attribute `json:"attributes,omitempty"` + + // ChannelId: channel identifier identifies the owner maintaing this + // grouping. + ChannelId string `json:"channelId,omitempty"` + + // ChannelUri: A reference to the associated storefront/marketplace. + ChannelUri string `json:"channelUri,omitempty"` + + // CreatedAt: Output only. Created time as milliseconds since epoch. + CreatedAt int64 `json:"createdAt,omitempty,string"` + + // DisplayName: app group name displayed in the UI + DisplayName string `json:"displayName,omitempty"` + + // LastModifiedAt: Output only. Modified time as milliseconds since + // epoch. + LastModifiedAt int64 `json:"lastModifiedAt,omitempty,string"` + + // Name: Immutable. Name of the AppGroup. Characters you can use in the + // name are restricted to: A-Z0-9._\-$ %. + Name string `json:"name,omitempty"` + + // Organization: Immutable. the org the app group is created + Organization string `json:"organization,omitempty"` + + // Status: Valid values are `active` or `inactive`. Note that the status + // of the AppGroup should be updated via UpdateAppGroupRequest by + // setting the action as `active` or `inactive`. + Status string `json:"status,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "AppGroupId") 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. "AppGroupId") 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 *GoogleCloudApigeeV1AppGroup) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudApigeeV1AppGroup + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudApigeeV1AppGroupApp: Response for +// [GetAppGroupApp].[AppGroupApps.GetAppGroupApp], +// [CreateAppGroupAppRequest].[AppGroupApp.CreateAppGroupAppRequest] and +// [DeleteAppGroupApp].[AppGroupApp.DeleteAppGroupApp] +type GoogleCloudApigeeV1AppGroupApp struct { + // ApiProducts: List of API products associated with the AppGroup app. + ApiProducts []string `json:"apiProducts,omitempty"` + + // AppGroup: Immutable. Name of the parent AppGroup whose resource name + // format is of syntax (organizations/*/appgroups/*). + AppGroup string `json:"appGroup,omitempty"` + + // AppId: Immutable. ID of the AppGroup app. + AppId string `json:"appId,omitempty"` + + // Attributes: List of attributes for the AppGroup app. + Attributes []*GoogleCloudApigeeV1Attribute `json:"attributes,omitempty"` + + // CallbackUrl: Callback URL used by OAuth 2.0 authorization servers to + // communicate authorization codes back to AppGroup apps. + CallbackUrl string `json:"callbackUrl,omitempty"` + + // CreatedAt: Output only. Time the AppGroup app was created in + // milliseconds since epoch. + CreatedAt int64 `json:"createdAt,omitempty,string"` + + // Credentials: Output only. Set of credentials for the AppGroup app + // consisting of the consumer key/secret pairs associated with the API + // products. + Credentials []*GoogleCloudApigeeV1Credential `json:"credentials,omitempty"` + + // KeyExpiresIn: Immutable. Expiration time, in seconds, for the + // consumer key that is generated for the AppGroup app. If not set or + // left to the default value of `-1`, the API key never expires. The + // expiration time can't be updated after it is set. + KeyExpiresIn int64 `json:"keyExpiresIn,omitempty,string"` + + // LastModifiedAt: Output only. Time the AppGroup app was modified in + // milliseconds since epoch. + LastModifiedAt int64 `json:"lastModifiedAt,omitempty,string"` + + // Name: Immutable. Name of the AppGroup app whose resource name format + // is of syntax (organizations/*/appgroups/*/apps/*). + Name string `json:"name,omitempty"` + + // Scopes: Scopes to apply to the AppGroup app. The specified scopes + // must already exist for the API product that you associate with the + // AppGroup app. + Scopes []string `json:"scopes,omitempty"` + + // Status: Status of the App. Valid values include `approved` or + // `revoked`. + Status string `json:"status,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "ApiProducts") 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. "ApiProducts") 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 *GoogleCloudApigeeV1AppGroupApp) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudApigeeV1AppGroupApp + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudApigeeV1AppGroupAppKey: AppGroupAppKey contains all the +// information associated with the credentials. +type GoogleCloudApigeeV1AppGroupAppKey struct { + // ApiProducts: Output only. List of API products and its status for + // which the credential can be used. **Note**: Use + // UpdateAppGroupAppKeyApiProductRequest API to make the association + // after the consumer key and secret are created. + ApiProducts []*GoogleCloudApigeeV1APIProductAssociation `json:"apiProducts,omitempty"` + + // Attributes: List of attributes associated with the credential. + Attributes []*GoogleCloudApigeeV1Attribute `json:"attributes,omitempty"` + + // ConsumerKey: Immutable. Consumer key. + ConsumerKey string `json:"consumerKey,omitempty"` + + // ConsumerSecret: Secret key. + ConsumerSecret string `json:"consumerSecret,omitempty"` + + // ExpiresAt: Output only. Time the AppGroup app expires in milliseconds + // since epoch. + ExpiresAt int64 `json:"expiresAt,omitempty,string"` + + // ExpiresInSeconds: Immutable. Expiration time, in seconds, for the + // consumer key. If not set or left to the default value of `-1`, the + // API key never expires. The expiration time can't be updated after it + // is set. + ExpiresInSeconds int64 `json:"expiresInSeconds,omitempty,string"` + + // IssuedAt: Output only. Time the AppGroup app was created in + // milliseconds since epoch. + IssuedAt int64 `json:"issuedAt,omitempty,string"` + + // Scopes: Scopes to apply to the app. The specified scope names must + // already be defined for the API product that you associate with the + // app. + Scopes []string `json:"scopes,omitempty"` + + // Status: Status of the credential. Valid values include `approved` or + // `revoked`. + Status string `json:"status,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "ApiProducts") 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. "ApiProducts") 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 *GoogleCloudApigeeV1AppGroupAppKey) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudApigeeV1AppGroupAppKey + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // GoogleCloudApigeeV1ArchiveDeployment: Archive Deployment information. type GoogleCloudApigeeV1ArchiveDeployment struct { // CreatedAt: Output only. The time at which the Archive Deployment was @@ -6088,14 +6392,22 @@ func (s *GoogleCloudApigeeV1ListApiProxiesResponse) MarshalJSON() ([]byte, error return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -type GoogleCloudApigeeV1ListAppsResponse struct { - App []*GoogleCloudApigeeV1App `json:"app,omitempty"` +// GoogleCloudApigeeV1ListAppGroupAppsResponse: Response for +// ListAppGroupApps +type GoogleCloudApigeeV1ListAppGroupAppsResponse struct { + // AppGroupApps: List of AppGroup apps and their credentials. + AppGroupApps []*GoogleCloudApigeeV1AppGroupApp `json:"appGroupApps,omitempty"` + + // NextPageToken: Token that can be sent as `next_page_token` to + // retrieve the next page. If this field is omitted, there are no + // subsequent pages. + NextPageToken string `json:"nextPageToken,omitempty"` // ServerResponse contains the HTTP response code and headers from the // server. googleapi.ServerResponse `json:"-"` - // ForceSendFields is a list of field names (e.g. "App") to + // ForceSendFields is a list of field names (e.g. "AppGroupApps") 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 @@ -6103,65 +6415,145 @@ type GoogleCloudApigeeV1ListAppsResponse struct { // This may be used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "App") to include in API - // requests with the JSON null value. By default, fields with empty - // values are omitted from API requests. However, any field with an - // empty value appearing in NullFields will be sent to the server as + // NullFields is a list of field names (e.g. "AppGroupApps") 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 *GoogleCloudApigeeV1ListAppsResponse) MarshalJSON() ([]byte, error) { - type NoMethod GoogleCloudApigeeV1ListAppsResponse +func (s *GoogleCloudApigeeV1ListAppGroupAppsResponse) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudApigeeV1ListAppGroupAppsResponse raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// GoogleCloudApigeeV1ListArchiveDeploymentsResponse: Response for -// ListArchiveDeployments method. -type GoogleCloudApigeeV1ListArchiveDeploymentsResponse struct { - // ArchiveDeployments: Archive Deployments in the specified environment. - ArchiveDeployments []*GoogleCloudApigeeV1ArchiveDeployment `json:"archiveDeployments,omitempty"` +// GoogleCloudApigeeV1ListAppGroupsResponse: ListAppGroupsResponse +// contains the 0 or more AppGroups, along with the optional page token +// and the total count of apps. +type GoogleCloudApigeeV1ListAppGroupsResponse struct { + // AppGroups: List of AppGroups. + AppGroups []*GoogleCloudApigeeV1AppGroup `json:"appGroups,omitempty"` - // NextPageToken: Page token that you can include in a - // ListArchiveDeployments request to retrieve the next page. If omitted, - // no subsequent pages exist. + // NextPageToken: Token that can be sent as `next_page_token` to + // retrieve the next page. If this field is omitted, there are no + // subsequent pages. NextPageToken string `json:"nextPageToken,omitempty"` + // TotalSize: Total count of AppGroups. + TotalSize int64 `json:"totalSize,omitempty"` + // ServerResponse contains the HTTP response code and headers from the // server. googleapi.ServerResponse `json:"-"` - // ForceSendFields is a list of field names (e.g. "ArchiveDeployments") - // to unconditionally include in API requests. By default, fields with + // ForceSendFields is a list of field names (e.g. "AppGroups") 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. "ArchiveDeployments") 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. "AppGroups") 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 *GoogleCloudApigeeV1ListArchiveDeploymentsResponse) MarshalJSON() ([]byte, error) { - type NoMethod GoogleCloudApigeeV1ListArchiveDeploymentsResponse +func (s *GoogleCloudApigeeV1ListAppGroupsResponse) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudApigeeV1ListAppGroupsResponse raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// GoogleCloudApigeeV1ListAsyncQueriesResponse: The response for -// ListAsyncQueries. -type GoogleCloudApigeeV1ListAsyncQueriesResponse struct { - // Queries: The asynchronous queries belong to requested resource name. - Queries []*GoogleCloudApigeeV1AsyncQuery `json:"queries,omitempty"` +type GoogleCloudApigeeV1ListAppsResponse struct { + App []*GoogleCloudApigeeV1App `json:"app,omitempty"` + + // NextPageToken: Token that can be sent as `next_page_token` to + // retrieve the next page. If this field is omitted, there are no + // subsequent pages. + NextPageToken string `json:"nextPageToken,omitempty"` + + // TotalSize: Total count of Apps. + TotalSize int64 `json:"totalSize,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "App") 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. "App") 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 *GoogleCloudApigeeV1ListAppsResponse) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudApigeeV1ListAppsResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudApigeeV1ListArchiveDeploymentsResponse: Response for +// ListArchiveDeployments method. +type GoogleCloudApigeeV1ListArchiveDeploymentsResponse struct { + // ArchiveDeployments: Archive Deployments in the specified environment. + ArchiveDeployments []*GoogleCloudApigeeV1ArchiveDeployment `json:"archiveDeployments,omitempty"` + + // NextPageToken: Page token that you can include in a + // ListArchiveDeployments request to retrieve the next page. If omitted, + // no subsequent pages exist. + NextPageToken string `json:"nextPageToken,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "ArchiveDeployments") + // 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. "ArchiveDeployments") 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 *GoogleCloudApigeeV1ListArchiveDeploymentsResponse) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudApigeeV1ListArchiveDeploymentsResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudApigeeV1ListAsyncQueriesResponse: The response for +// ListAsyncQueries. +type GoogleCloudApigeeV1ListAsyncQueriesResponse struct { + // Queries: The asynchronous queries belong to requested resource name. + Queries []*GoogleCloudApigeeV1AsyncQuery `json:"queries,omitempty"` // ServerResponse contains the HTTP response code and headers from the // server. @@ -8043,117 +8435,6 @@ func (s *GoogleCloudApigeeV1Point) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// GoogleCloudApigeeV1ProfileConfig: ProfileConfig defines a set of -// categories and policies which will be used to compute security score. -type GoogleCloudApigeeV1ProfileConfig struct { - // Categories: List of categories of profile config. - Categories []*GoogleCloudApigeeV1ProfileConfigCategory `json:"categories,omitempty"` - - // ForceSendFields is a list of field names (e.g. "Categories") 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. "Categories") 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 *GoogleCloudApigeeV1ProfileConfig) MarshalJSON() ([]byte, error) { - type NoMethod GoogleCloudApigeeV1ProfileConfig - raw := NoMethod(*s) - return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) -} - -// GoogleCloudApigeeV1ProfileConfigAbuse: Checks for abuse, which -// includes any requests sent to the API for purposes other than what it -// is intended for, such as high volumes of requests, data scraping, and -// abuse related to authorization. -type GoogleCloudApigeeV1ProfileConfigAbuse struct { -} - -// GoogleCloudApigeeV1ProfileConfigAuthorization: By default, following -// policies will be included: - JWS - JWT - OAuth - BasicAuth - APIKey -type GoogleCloudApigeeV1ProfileConfigAuthorization struct { -} - -// GoogleCloudApigeeV1ProfileConfigCORS: Checks to see if you have CORS -// policy in place. -type GoogleCloudApigeeV1ProfileConfigCORS struct { -} - -// GoogleCloudApigeeV1ProfileConfigCategory: Advanced API Security -// provides security profile that scores the following categories. -type GoogleCloudApigeeV1ProfileConfigCategory struct { - // Abuse: Checks for abuse, which includes any requests sent to the API - // for purposes other than what it is intended for, such as high volumes - // of requests, data scraping, and abuse related to authorization. - Abuse *GoogleCloudApigeeV1ProfileConfigAbuse `json:"abuse,omitempty"` - - // Authorization: Checks to see if you have an authorization policy in - // place. - Authorization *GoogleCloudApigeeV1ProfileConfigAuthorization `json:"authorization,omitempty"` - - // Cors: Checks to see if you have CORS policy in place. - Cors *GoogleCloudApigeeV1ProfileConfigCORS `json:"cors,omitempty"` - - // Mediation: Checks to see if you have a mediation policy in place. - Mediation *GoogleCloudApigeeV1ProfileConfigMediation `json:"mediation,omitempty"` - - // Mtls: Checks to see if you have configured mTLS for the target - // server. - Mtls *GoogleCloudApigeeV1ProfileConfigMTLS `json:"mtls,omitempty"` - - // Threat: Checks to see if you have a threat protection policy in - // place. - Threat *GoogleCloudApigeeV1ProfileConfigThreat `json:"threat,omitempty"` - - // ForceSendFields is a list of field names (e.g. "Abuse") 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. "Abuse") 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 *GoogleCloudApigeeV1ProfileConfigCategory) MarshalJSON() ([]byte, error) { - type NoMethod GoogleCloudApigeeV1ProfileConfigCategory - raw := NoMethod(*s) - return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) -} - -// GoogleCloudApigeeV1ProfileConfigMTLS: Checks to see if you have -// configured mTLS for the target server. -type GoogleCloudApigeeV1ProfileConfigMTLS struct { -} - -// GoogleCloudApigeeV1ProfileConfigMediation: By default, following -// policies will be included: - OASValidation - SOAPMessageValidation -type GoogleCloudApigeeV1ProfileConfigMediation struct { -} - -// GoogleCloudApigeeV1ProfileConfigThreat: By default, following -// policies will be included: - XMLThreatProtection - -// JSONThreatProtection -type GoogleCloudApigeeV1ProfileConfigThreat struct { -} - // GoogleCloudApigeeV1Properties: Message for compatibility with legacy // Edge specification for Java Properties object in JSON. type GoogleCloudApigeeV1Properties struct { @@ -10056,10 +10337,6 @@ type GoogleCloudApigeeV1SecurityProfile struct { // organizations/{org}/securityProfiles/{profile} Name string `json:"name,omitempty"` - // ProfileConfig: Customized profile configuration that computes the - // security score. - ProfileConfig *GoogleCloudApigeeV1ProfileConfig `json:"profileConfig,omitempty"` - // RevisionCreateTime: Output only. The time when revision was created. RevisionCreateTime string `json:"revisionCreateTime,omitempty"` @@ -11459,6 +11736,46 @@ func (s *GoogleCloudApigeeV1TraceSamplingConfig) UnmarshalJSON(data []byte) erro return nil } +// GoogleCloudApigeeV1UpdateAppGroupAppKeyRequest: Request for +// UpdateAppGroupAppKey +type GoogleCloudApigeeV1UpdateAppGroupAppKeyRequest struct { + // Action: Approve or revoke the consumer key by setting this value to + // `approve` or `revoke` respectively. The `Content-Type` header, if + // set, must be set to `application/octet-stream`, with empty body. + Action string `json:"action,omitempty"` + + // ApiProducts: The list of API products that will be associated with + // the credential. This list will be appended to the existing list of + // associated API Products for this App Key. Duplicates will be ignored. + ApiProducts []string `json:"apiProducts,omitempty"` + + // AppGroupAppKey: The new AppGroupKey to be amended. Note that the + // status can be updated only via action. + AppGroupAppKey *GoogleCloudApigeeV1AppGroupAppKey `json:"appGroupAppKey,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Action") 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. "Action") 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 *GoogleCloudApigeeV1UpdateAppGroupAppKeyRequest) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudApigeeV1UpdateAppGroupAppKeyRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // GoogleCloudApigeeV1UpdateError: Details on why a resource update // failed in the runtime. type GoogleCloudApigeeV1UpdateError struct { @@ -19954,96 +20271,99 @@ func (c *OrganizationsApisRevisionsDeploymentsListCall) Do(opts ...googleapi.Cal } -// method id "apigee.organizations.apps.get": +// method id "apigee.organizations.appgroups.create": -type OrganizationsAppsGetCall struct { - s *Service - name string - urlParams_ gensupport.URLParams - ifNoneMatch_ string - ctx_ context.Context - header_ http.Header +type OrganizationsAppgroupsCreateCall struct { + s *Service + parent string + googlecloudapigeev1appgroup *GoogleCloudApigeeV1AppGroup + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header } -// Get: Gets the app profile for the specified app ID. +// Create: Creates an AppGroup. Once created, user can register apps +// under the AppGroup to obtain secret key and password. At creation +// time, the AppGroup's state is set as `active`. The attribute +// `Attribute` with key `attribute_name` as +// `__apigee_reserved__developer_details` can be used to store +// developers and their roles. The JSON format expected is: [ { +// "developer_id":"", "roles":[ "" ] } ] and is dealt in base64encoded +// format. Etag will be available in attribute `Attribute` with key +// `attribute_name` as `__apigee_reserved__developer_details_etag` for +// that AppGroup. // -// - name: App ID in the following format: -// `organizations/{org}/apps/{app}`. -func (r *OrganizationsAppsService) Get(name string) *OrganizationsAppsGetCall { - c := &OrganizationsAppsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} - c.name = name +// - parent: Name of the Apigee organization in which the AppGroup is +// created. Use the following structure in your request: +// `organizations/{org}`. +func (r *OrganizationsAppgroupsService) Create(parent string, googlecloudapigeev1appgroup *GoogleCloudApigeeV1AppGroup) *OrganizationsAppgroupsCreateCall { + c := &OrganizationsAppgroupsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + c.googlecloudapigeev1appgroup = googlecloudapigeev1appgroup 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 *OrganizationsAppsGetCall) Fields(s ...googleapi.Field) *OrganizationsAppsGetCall { +func (c *OrganizationsAppgroupsCreateCall) Fields(s ...googleapi.Field) *OrganizationsAppgroupsCreateCall { 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 *OrganizationsAppsGetCall) IfNoneMatch(entityTag string) *OrganizationsAppsGetCall { - 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 *OrganizationsAppsGetCall) Context(ctx context.Context) *OrganizationsAppsGetCall { +func (c *OrganizationsAppgroupsCreateCall) Context(ctx context.Context) *OrganizationsAppgroupsCreateCall { 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 *OrganizationsAppsGetCall) Header() http.Header { +func (c *OrganizationsAppgroupsCreateCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } -func (c *OrganizationsAppsGetCall) doRequest(alt string) (*http.Response, error) { +func (c *OrganizationsAppgroupsCreateCall) doRequest(alt string) (*http.Response, error) { reqHeaders := make(http.Header) reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version) for k, v := range c.header_ { reqHeaders[k] = v } reqHeaders.Set("User-Agent", c.s.userAgent()) - if c.ifNoneMatch_ != "" { - reqHeaders.Set("If-None-Match", c.ifNoneMatch_) - } var body io.Reader = nil + body, err := googleapi.WithoutDataWrapper.JSONReader(c.googlecloudapigeev1appgroup) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") - urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/appgroups") urls += "?" + c.urlParams_.Encode() - req, err := http.NewRequest("GET", urls, body) + req, err := http.NewRequest("POST", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ - "name": c.name, + "parent": c.parent, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } -// Do executes the "apigee.organizations.apps.get" call. -// Exactly one of *GoogleCloudApigeeV1App or error will be non-nil. Any -// non-2xx status code is an error. Response headers are in either -// *GoogleCloudApigeeV1App.ServerResponse.Header or (if a response was -// returned at all) in error.(*googleapi.Error).Header. Use +// Do executes the "apigee.organizations.appgroups.create" call. +// Exactly one of *GoogleCloudApigeeV1AppGroup or error will be non-nil. +// Any non-2xx status code is an error. Response headers are in either +// *GoogleCloudApigeeV1AppGroup.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 *OrganizationsAppsGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudApigeeV1App, error) { +func (c *OrganizationsAppgroupsCreateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudApigeeV1AppGroup, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { @@ -20062,7 +20382,7 @@ func (c *OrganizationsAppsGetCall) Do(opts ...googleapi.CallOption) (*GoogleClou if err := googleapi.CheckResponse(res); err != nil { return nil, gensupport.WrapError(err) } - ret := &GoogleCloudApigeeV1App{ + ret := &GoogleCloudApigeeV1AppGroup{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, @@ -20074,25 +20394,28 @@ func (c *OrganizationsAppsGetCall) Do(opts ...googleapi.CallOption) (*GoogleClou } return ret, nil // { - // "description": "Gets the app profile for the specified app ID.", - // "flatPath": "v1/organizations/{organizationsId}/apps/{appsId}", - // "httpMethod": "GET", - // "id": "apigee.organizations.apps.get", + // "description": "Creates an AppGroup. Once created, user can register apps under the AppGroup to obtain secret key and password. At creation time, the AppGroup's state is set as `active`. The attribute `Attribute` with key `attribute_name` as `__apigee_reserved__developer_details` can be used to store developers and their roles. The JSON format expected is: [ { \"developer_id\":\"\", \"roles\":[ \"\" ] } ] and is dealt in base64encoded format. Etag will be available in attribute `Attribute` with key `attribute_name` as `__apigee_reserved__developer_details_etag` for that AppGroup.", + // "flatPath": "v1/organizations/{organizationsId}/appgroups", + // "httpMethod": "POST", + // "id": "apigee.organizations.appgroups.create", // "parameterOrder": [ - // "name" + // "parent" // ], // "parameters": { - // "name": { - // "description": "Required. App ID in the following format: `organizations/{org}/apps/{app}`", + // "parent": { + // "description": "Required. Name of the Apigee organization in which the AppGroup is created. Use the following structure in your request: `organizations/{org}`.", // "location": "path", - // "pattern": "^organizations/[^/]+/apps/[^/]+$", + // "pattern": "^organizations/[^/]+$", // "required": true, // "type": "string" // } // }, - // "path": "v1/{+name}", + // "path": "v1/{+parent}/appgroups", + // "request": { + // "$ref": "GoogleCloudApigeeV1AppGroup" + // }, // "response": { - // "$ref": "GoogleCloudApigeeV1App" + // "$ref": "GoogleCloudApigeeV1AppGroup" // }, // "scopes": [ // "https://www.googleapis.com/auth/cloud-platform" @@ -20101,25 +20424,2532 @@ func (c *OrganizationsAppsGetCall) Do(opts ...googleapi.CallOption) (*GoogleClou } -// method id "apigee.organizations.apps.list": +// method id "apigee.organizations.appgroups.delete": -type OrganizationsAppsListCall struct { - s *Service - parent string - urlParams_ gensupport.URLParams - ifNoneMatch_ string - ctx_ context.Context - header_ http.Header +type OrganizationsAppgroupsDeleteCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header } -// List: Lists IDs of apps within an organization that have the -// specified app status (approved or revoked) or are of the specified -// app type (developer or company). +// Delete: Deletes an AppGroup. All app and API keys associations with +// the AppGroup are also removed. **Warning**: This API will permanently +// delete the AppGroup and related artifacts. **Note**: The delete +// operation is asynchronous. The AppGroup app is deleted immediately, +// but its associated resources, such as apps and API keys, may take +// anywhere from a few seconds to a few minutes to be deleted. // -// - parent: Resource path of the parent in the following format: -// `organizations/{org}`. -func (r *OrganizationsAppsService) List(parent string) *OrganizationsAppsListCall { - c := &OrganizationsAppsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} +// - name: Name of the AppGroup. Use the following structure in your +// request: `organizations/{org}/appgroups/{app_group_name}`. +func (r *OrganizationsAppgroupsService) Delete(name string) *OrganizationsAppgroupsDeleteCall { + c := &OrganizationsAppgroupsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *OrganizationsAppgroupsDeleteCall) Fields(s ...googleapi.Field) *OrganizationsAppgroupsDeleteCall { + 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 *OrganizationsAppgroupsDeleteCall) Context(ctx context.Context) *OrganizationsAppgroupsDeleteCall { + 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 *OrganizationsAppgroupsDeleteCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *OrganizationsAppgroupsDeleteCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("DELETE", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "apigee.organizations.appgroups.delete" call. +// Exactly one of *GoogleCloudApigeeV1AppGroup or error will be non-nil. +// Any non-2xx status code is an error. Response headers are in either +// *GoogleCloudApigeeV1AppGroup.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 *OrganizationsAppgroupsDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleCloudApigeeV1AppGroup, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &GoogleCloudApigeeV1AppGroup{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Deletes an AppGroup. All app and API keys associations with the AppGroup are also removed. **Warning**: This API will permanently delete the AppGroup and related artifacts. **Note**: The delete operation is asynchronous. The AppGroup app is deleted immediately, but its associated resources, such as apps and API keys, may take anywhere from a few seconds to a few minutes to be deleted.", + // "flatPath": "v1/organizations/{organizationsId}/appgroups/{appgroupsId}", + // "httpMethod": "DELETE", + // "id": "apigee.organizations.appgroups.delete", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Required. Name of the AppGroup. Use the following structure in your request: `organizations/{org}/appgroups/{app_group_name}`", + // "location": "path", + // "pattern": "^organizations/[^/]+/appgroups/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+name}", + // "response": { + // "$ref": "GoogleCloudApigeeV1AppGroup" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "apigee.organizations.appgroups.get": + +type OrganizationsAppgroupsGetCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Returns the AppGroup details for the provided AppGroup name in +// the request URI. +// +// - name: Name of the AppGroup. Use the following structure in your +// request: `organizations/{org}/appgroups/{app_group_name}`. +func (r *OrganizationsAppgroupsService) Get(name string) *OrganizationsAppgroupsGetCall { + c := &OrganizationsAppgroupsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *OrganizationsAppgroupsGetCall) Fields(s ...googleapi.Field) *OrganizationsAppgroupsGetCall { + 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 *OrganizationsAppgroupsGetCall) IfNoneMatch(entityTag string) *OrganizationsAppgroupsGetCall { + 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 *OrganizationsAppgroupsGetCall) Context(ctx context.Context) *OrganizationsAppgroupsGetCall { + 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 *OrganizationsAppgroupsGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *OrganizationsAppgroupsGetCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("GET", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "apigee.organizations.appgroups.get" call. +// Exactly one of *GoogleCloudApigeeV1AppGroup or error will be non-nil. +// Any non-2xx status code is an error. Response headers are in either +// *GoogleCloudApigeeV1AppGroup.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 *OrganizationsAppgroupsGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudApigeeV1AppGroup, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &GoogleCloudApigeeV1AppGroup{ + 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 AppGroup details for the provided AppGroup name in the request URI.", + // "flatPath": "v1/organizations/{organizationsId}/appgroups/{appgroupsId}", + // "httpMethod": "GET", + // "id": "apigee.organizations.appgroups.get", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Required. Name of the AppGroup. Use the following structure in your request: `organizations/{org}/appgroups/{app_group_name}`", + // "location": "path", + // "pattern": "^organizations/[^/]+/appgroups/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+name}", + // "response": { + // "$ref": "GoogleCloudApigeeV1AppGroup" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "apigee.organizations.appgroups.list": + +type OrganizationsAppgroupsListCall struct { + s *Service + parent string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// List: Lists all AppGroups in an organization. A maximum of 1000 +// AppGroups are returned in the response if PageSize is not specified, +// or if the PageSize is greater than 1000. +// +// - parent: Name of the Apigee organization. Use the following +// structure in your request: `organizations/{org}`. +func (r *OrganizationsAppgroupsService) List(parent string) *OrganizationsAppgroupsListCall { + c := &OrganizationsAppgroupsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + return c +} + +// Filter sets the optional parameter "filter": The filter expression to +// be used to get the list of AppGroups, where filtering can be done on +// name, correlationID or channelID of the app group. Example: filter = +// "name = foobar" +func (c *OrganizationsAppgroupsListCall) Filter(filter string) *OrganizationsAppgroupsListCall { + c.urlParams_.Set("filter", filter) + return c +} + +// PageSize sets the optional parameter "pageSize": Count of AppGroups a +// single page can have in the response. If unspecified, at most 1000 +// AppGroups will be returned. The maximum value is 1000; values above +// 1000 will be coerced to 1000. +func (c *OrganizationsAppgroupsListCall) PageSize(pageSize int64) *OrganizationsAppgroupsListCall { + c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) + return c +} + +// PageToken sets the optional parameter "pageToken": The starting index +// record for listing the AppGroups. +func (c *OrganizationsAppgroupsListCall) PageToken(pageToken string) *OrganizationsAppgroupsListCall { + 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 *OrganizationsAppgroupsListCall) Fields(s ...googleapi.Field) *OrganizationsAppgroupsListCall { + 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 *OrganizationsAppgroupsListCall) IfNoneMatch(entityTag string) *OrganizationsAppgroupsListCall { + 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 *OrganizationsAppgroupsListCall) Context(ctx context.Context) *OrganizationsAppgroupsListCall { + 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 *OrganizationsAppgroupsListCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *OrganizationsAppgroupsListCall) 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}/appgroups") + 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 "apigee.organizations.appgroups.list" call. +// Exactly one of *GoogleCloudApigeeV1ListAppGroupsResponse or error +// will be non-nil. Any non-2xx status code is an error. Response +// headers are in either +// *GoogleCloudApigeeV1ListAppGroupsResponse.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 *OrganizationsAppgroupsListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudApigeeV1ListAppGroupsResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &GoogleCloudApigeeV1ListAppGroupsResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Lists all AppGroups in an organization. A maximum of 1000 AppGroups are returned in the response if PageSize is not specified, or if the PageSize is greater than 1000.", + // "flatPath": "v1/organizations/{organizationsId}/appgroups", + // "httpMethod": "GET", + // "id": "apigee.organizations.appgroups.list", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "filter": { + // "description": "The filter expression to be used to get the list of AppGroups, where filtering can be done on name, correlationID or channelID of the app group. Example: filter = \"name = foobar\"", + // "location": "query", + // "type": "string" + // }, + // "pageSize": { + // "description": "Count of AppGroups a single page can have in the response. If unspecified, at most 1000 AppGroups will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000.", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "pageToken": { + // "description": "The starting index record for listing the AppGroups.", + // "location": "query", + // "type": "string" + // }, + // "parent": { + // "description": "Required. Name of the Apigee organization. Use the following structure in your request: `organizations/{org}`.", + // "location": "path", + // "pattern": "^organizations/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+parent}/appgroups", + // "response": { + // "$ref": "GoogleCloudApigeeV1ListAppGroupsResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// Pages invokes f for each page of results. +// A non-nil error returned from f will halt the iteration. +// The provided context supersedes any context provided to the Context method. +func (c *OrganizationsAppgroupsListCall) Pages(ctx context.Context, f func(*GoogleCloudApigeeV1ListAppGroupsResponse) error) error { + c.ctx_ = ctx + defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point + for { + x, err := c.Do() + if err != nil { + return err + } + if err := f(x); err != nil { + return err + } + if x.NextPageToken == "" { + return nil + } + c.PageToken(x.NextPageToken) + } +} + +// method id "apigee.organizations.appgroups.update": + +type OrganizationsAppgroupsUpdateCall struct { + s *Service + name string + googlecloudapigeev1appgroup *GoogleCloudApigeeV1AppGroup + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Update: Updates an appGroup. This API replaces the existing appGroup +// details with those specified in the request. Include or exclude any +// existing details that you want to retain or delete, respectively. +// Note that the state of the AppGroup should be updated using `action`, +// and not via AppGroup. The custom attribute limit is 1000, and is how +// `__apigee_reserved__developer_details` can be updated. **Note**: +// OAuth access tokens and Key Management Service (KMS) entities (apps, +// developers, and API products) are cached for 180 seconds (current +// default). Any custom attributes associated with these entities are +// cached for at least 180 seconds after the entity is accessed at +// runtime. Therefore, an `ExpiresIn` element on the OAuthV2 policy +// won't be able to expire an access token in less than 180 seconds. +// +// - name: Name of the AppGroup. Use the following structure in your +// request: `organizations/{org}/appgroups/{app_group_name}`. +func (r *OrganizationsAppgroupsService) Update(name string, googlecloudapigeev1appgroup *GoogleCloudApigeeV1AppGroup) *OrganizationsAppgroupsUpdateCall { + c := &OrganizationsAppgroupsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + c.googlecloudapigeev1appgroup = googlecloudapigeev1appgroup + return c +} + +// Action sets the optional parameter "action": Activate or de-activate +// the appGroup by setting the action as `active` or `inactive`. The +// `Content-Type` header must be set to `application/octet-stream`, with +// empty body. +func (c *OrganizationsAppgroupsUpdateCall) Action(action string) *OrganizationsAppgroupsUpdateCall { + c.urlParams_.Set("action", action) + 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 *OrganizationsAppgroupsUpdateCall) Fields(s ...googleapi.Field) *OrganizationsAppgroupsUpdateCall { + 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 *OrganizationsAppgroupsUpdateCall) Context(ctx context.Context) *OrganizationsAppgroupsUpdateCall { + 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 *OrganizationsAppgroupsUpdateCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *OrganizationsAppgroupsUpdateCall) 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.googlecloudapigeev1appgroup) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("PUT", 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 "apigee.organizations.appgroups.update" call. +// Exactly one of *GoogleCloudApigeeV1AppGroup or error will be non-nil. +// Any non-2xx status code is an error. Response headers are in either +// *GoogleCloudApigeeV1AppGroup.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 *OrganizationsAppgroupsUpdateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudApigeeV1AppGroup, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &GoogleCloudApigeeV1AppGroup{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Updates an appGroup. This API replaces the existing appGroup details with those specified in the request. Include or exclude any existing details that you want to retain or delete, respectively. Note that the state of the AppGroup should be updated using `action`, and not via AppGroup. The custom attribute limit is 1000, and is how `__apigee_reserved__developer_details` can be updated. **Note**: OAuth access tokens and Key Management Service (KMS) entities (apps, developers, and API products) are cached for 180 seconds (current default). Any custom attributes associated with these entities are cached for at least 180 seconds after the entity is accessed at runtime. Therefore, an `ExpiresIn` element on the OAuthV2 policy won't be able to expire an access token in less than 180 seconds.", + // "flatPath": "v1/organizations/{organizationsId}/appgroups/{appgroupsId}", + // "httpMethod": "PUT", + // "id": "apigee.organizations.appgroups.update", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "action": { + // "description": "Activate or de-activate the appGroup by setting the action as `active` or `inactive`. The `Content-Type` header must be set to `application/octet-stream`, with empty body.", + // "location": "query", + // "type": "string" + // }, + // "name": { + // "description": "Required. Name of the AppGroup. Use the following structure in your request: `organizations/{org}/appgroups/{app_group_name}`", + // "location": "path", + // "pattern": "^organizations/[^/]+/appgroups/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+name}", + // "request": { + // "$ref": "GoogleCloudApigeeV1AppGroup" + // }, + // "response": { + // "$ref": "GoogleCloudApigeeV1AppGroup" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "apigee.organizations.appgroups.apps.create": + +type OrganizationsAppgroupsAppsCreateCall struct { + s *Service + parent string + googlecloudapigeev1appgroupapp *GoogleCloudApigeeV1AppGroupApp + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Create: Creates an app and associates it with an AppGroup. This API +// associates the AppGroup app with the specified API product and +// auto-generates an API key for the app to use in calls to API proxies +// inside that API product. The `name` is the unique ID of the app that +// you can use in API calls. +// +// - parent: Name of the AppGroup. Use the following structure in your +// request: `organizations/{org}/appgroups/{app_group_name}`. +func (r *OrganizationsAppgroupsAppsService) Create(parent string, googlecloudapigeev1appgroupapp *GoogleCloudApigeeV1AppGroupApp) *OrganizationsAppgroupsAppsCreateCall { + c := &OrganizationsAppgroupsAppsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + c.googlecloudapigeev1appgroupapp = googlecloudapigeev1appgroupapp + 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 *OrganizationsAppgroupsAppsCreateCall) Fields(s ...googleapi.Field) *OrganizationsAppgroupsAppsCreateCall { + 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 *OrganizationsAppgroupsAppsCreateCall) Context(ctx context.Context) *OrganizationsAppgroupsAppsCreateCall { + 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 *OrganizationsAppgroupsAppsCreateCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *OrganizationsAppgroupsAppsCreateCall) 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.googlecloudapigeev1appgroupapp) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/apps") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("POST", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "parent": c.parent, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "apigee.organizations.appgroups.apps.create" call. +// Exactly one of *GoogleCloudApigeeV1AppGroupApp or error will be +// non-nil. Any non-2xx status code is an error. Response headers are in +// either *GoogleCloudApigeeV1AppGroupApp.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 *OrganizationsAppgroupsAppsCreateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudApigeeV1AppGroupApp, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &GoogleCloudApigeeV1AppGroupApp{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Creates an app and associates it with an AppGroup. This API associates the AppGroup app with the specified API product and auto-generates an API key for the app to use in calls to API proxies inside that API product. The `name` is the unique ID of the app that you can use in API calls.", + // "flatPath": "v1/organizations/{organizationsId}/appgroups/{appgroupsId}/apps", + // "httpMethod": "POST", + // "id": "apigee.organizations.appgroups.apps.create", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "parent": { + // "description": "Required. Name of the AppGroup. Use the following structure in your request: `organizations/{org}/appgroups/{app_group_name}`", + // "location": "path", + // "pattern": "^organizations/[^/]+/appgroups/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+parent}/apps", + // "request": { + // "$ref": "GoogleCloudApigeeV1AppGroupApp" + // }, + // "response": { + // "$ref": "GoogleCloudApigeeV1AppGroupApp" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "apigee.organizations.appgroups.apps.delete": + +type OrganizationsAppgroupsAppsDeleteCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Delete: Deletes an AppGroup app. **Note**: The delete operation is +// asynchronous. The AppGroup app is deleted immediately, but its +// associated resources, such as app keys or access tokens, may take +// anywhere from a few seconds to a few minutes to be deleted. +// +// - name: Name of the AppGroup app. Use the following structure in your +// request: +// `organizations/{org}/appgroups/{app_group_name}/apps/{app}`. +func (r *OrganizationsAppgroupsAppsService) Delete(name string) *OrganizationsAppgroupsAppsDeleteCall { + c := &OrganizationsAppgroupsAppsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *OrganizationsAppgroupsAppsDeleteCall) Fields(s ...googleapi.Field) *OrganizationsAppgroupsAppsDeleteCall { + 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 *OrganizationsAppgroupsAppsDeleteCall) Context(ctx context.Context) *OrganizationsAppgroupsAppsDeleteCall { + 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 *OrganizationsAppgroupsAppsDeleteCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *OrganizationsAppgroupsAppsDeleteCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("DELETE", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "apigee.organizations.appgroups.apps.delete" call. +// Exactly one of *GoogleCloudApigeeV1AppGroupApp or error will be +// non-nil. Any non-2xx status code is an error. Response headers are in +// either *GoogleCloudApigeeV1AppGroupApp.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 *OrganizationsAppgroupsAppsDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleCloudApigeeV1AppGroupApp, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &GoogleCloudApigeeV1AppGroupApp{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Deletes an AppGroup app. **Note**: The delete operation is asynchronous. The AppGroup app is deleted immediately, but its associated resources, such as app keys or access tokens, may take anywhere from a few seconds to a few minutes to be deleted.", + // "flatPath": "v1/organizations/{organizationsId}/appgroups/{appgroupsId}/apps/{appsId}", + // "httpMethod": "DELETE", + // "id": "apigee.organizations.appgroups.apps.delete", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Required. Name of the AppGroup app. Use the following structure in your request: `organizations/{org}/appgroups/{app_group_name}/apps/{app}`", + // "location": "path", + // "pattern": "^organizations/[^/]+/appgroups/[^/]+/apps/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+name}", + // "response": { + // "$ref": "GoogleCloudApigeeV1AppGroupApp" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "apigee.organizations.appgroups.apps.get": + +type OrganizationsAppgroupsAppsGetCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Returns the details for an AppGroup app. +// +// - name: Name of the AppGroup app. Use the following structure in your +// request: +// `organizations/{org}/appgroups/{app_group_name}/apps/{app}`. +func (r *OrganizationsAppgroupsAppsService) Get(name string) *OrganizationsAppgroupsAppsGetCall { + c := &OrganizationsAppgroupsAppsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *OrganizationsAppgroupsAppsGetCall) Fields(s ...googleapi.Field) *OrganizationsAppgroupsAppsGetCall { + 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 *OrganizationsAppgroupsAppsGetCall) IfNoneMatch(entityTag string) *OrganizationsAppgroupsAppsGetCall { + 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 *OrganizationsAppgroupsAppsGetCall) Context(ctx context.Context) *OrganizationsAppgroupsAppsGetCall { + 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 *OrganizationsAppgroupsAppsGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *OrganizationsAppgroupsAppsGetCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("GET", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "apigee.organizations.appgroups.apps.get" call. +// Exactly one of *GoogleCloudApigeeV1AppGroupApp or error will be +// non-nil. Any non-2xx status code is an error. Response headers are in +// either *GoogleCloudApigeeV1AppGroupApp.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 *OrganizationsAppgroupsAppsGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudApigeeV1AppGroupApp, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &GoogleCloudApigeeV1AppGroupApp{ + 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 details for an AppGroup app.", + // "flatPath": "v1/organizations/{organizationsId}/appgroups/{appgroupsId}/apps/{appsId}", + // "httpMethod": "GET", + // "id": "apigee.organizations.appgroups.apps.get", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Required. Name of the AppGroup app. Use the following structure in your request: `organizations/{org}/appgroups/{app_group_name}/apps/{app}`", + // "location": "path", + // "pattern": "^organizations/[^/]+/appgroups/[^/]+/apps/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+name}", + // "response": { + // "$ref": "GoogleCloudApigeeV1AppGroupApp" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "apigee.organizations.appgroups.apps.list": + +type OrganizationsAppgroupsAppsListCall struct { + s *Service + parent string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// List: Lists all apps created by an AppGroup in an Apigee +// organization. Optionally, you can request an expanded view of the +// AppGroup apps. Lists all AppGroupApps in an AppGroup. A maximum of +// 1000 AppGroup apps are returned in the response if PageSize is not +// specified, or if the PageSize is greater than 1000. +// +// - parent: Name of the AppGroup. Use the following structure in your +// request: `organizations/{org}/appgroups/{app_group_name}`. +func (r *OrganizationsAppgroupsAppsService) List(parent string) *OrganizationsAppgroupsAppsListCall { + c := &OrganizationsAppgroupsAppsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + return c +} + +// PageSize sets the optional parameter "pageSize": Maximum number +// entries to return. If unspecified, at most 1000 entries will be +// returned. +func (c *OrganizationsAppgroupsAppsListCall) PageSize(pageSize int64) *OrganizationsAppgroupsAppsListCall { + c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) + return c +} + +// PageToken sets the optional parameter "pageToken": Page token. If +// provides, must be a valid AppGroup app returned from a previous call +// that can be used to retrieve the next page. +func (c *OrganizationsAppgroupsAppsListCall) PageToken(pageToken string) *OrganizationsAppgroupsAppsListCall { + 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 *OrganizationsAppgroupsAppsListCall) Fields(s ...googleapi.Field) *OrganizationsAppgroupsAppsListCall { + 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 *OrganizationsAppgroupsAppsListCall) IfNoneMatch(entityTag string) *OrganizationsAppgroupsAppsListCall { + 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 *OrganizationsAppgroupsAppsListCall) Context(ctx context.Context) *OrganizationsAppgroupsAppsListCall { + 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 *OrganizationsAppgroupsAppsListCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *OrganizationsAppgroupsAppsListCall) 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}/apps") + 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 "apigee.organizations.appgroups.apps.list" call. +// Exactly one of *GoogleCloudApigeeV1ListAppGroupAppsResponse or error +// will be non-nil. Any non-2xx status code is an error. Response +// headers are in either +// *GoogleCloudApigeeV1ListAppGroupAppsResponse.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 *OrganizationsAppgroupsAppsListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudApigeeV1ListAppGroupAppsResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &GoogleCloudApigeeV1ListAppGroupAppsResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Lists all apps created by an AppGroup in an Apigee organization. Optionally, you can request an expanded view of the AppGroup apps. Lists all AppGroupApps in an AppGroup. A maximum of 1000 AppGroup apps are returned in the response if PageSize is not specified, or if the PageSize is greater than 1000.", + // "flatPath": "v1/organizations/{organizationsId}/appgroups/{appgroupsId}/apps", + // "httpMethod": "GET", + // "id": "apigee.organizations.appgroups.apps.list", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "pageSize": { + // "description": "Optional. Maximum number entries to return. If unspecified, at most 1000 entries will be returned.", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "pageToken": { + // "description": "Optional. Page token. If provides, must be a valid AppGroup app returned from a previous call that can be used to retrieve the next page.", + // "location": "query", + // "type": "string" + // }, + // "parent": { + // "description": "Required. Name of the AppGroup. Use the following structure in your request: `organizations/{org}/appgroups/{app_group_name}`", + // "location": "path", + // "pattern": "^organizations/[^/]+/appgroups/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+parent}/apps", + // "response": { + // "$ref": "GoogleCloudApigeeV1ListAppGroupAppsResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// Pages invokes f for each page of results. +// A non-nil error returned from f will halt the iteration. +// The provided context supersedes any context provided to the Context method. +func (c *OrganizationsAppgroupsAppsListCall) Pages(ctx context.Context, f func(*GoogleCloudApigeeV1ListAppGroupAppsResponse) error) error { + c.ctx_ = ctx + defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point + for { + x, err := c.Do() + if err != nil { + return err + } + if err := f(x); err != nil { + return err + } + if x.NextPageToken == "" { + return nil + } + c.PageToken(x.NextPageToken) + } +} + +// method id "apigee.organizations.appgroups.apps.update": + +type OrganizationsAppgroupsAppsUpdateCall struct { + s *Service + name string + googlecloudapigeev1appgroupapp *GoogleCloudApigeeV1AppGroupApp + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Update: Updates the details for an AppGroup app. In addition, you can +// add an API product to an AppGroup app and automatically generate an +// API key for the app to use when calling APIs in the API product. If +// you want to use an existing API key for the API product, add the API +// product to the API key using the UpdateAppGroupAppKey API. Using this +// API, you cannot update the app name, as it is the primary key used to +// identify the app and cannot be changed. This API replaces the +// existing attributes with those specified in the request. Include or +// exclude any existing attributes that you want to retain or delete, +// respectively. +// +// - name: Name of the AppGroup app. Use the following structure in your +// request: +// `organizations/{org}/appgroups/{app_group_name}/apps/{app}`. +func (r *OrganizationsAppgroupsAppsService) Update(name string, googlecloudapigeev1appgroupapp *GoogleCloudApigeeV1AppGroupApp) *OrganizationsAppgroupsAppsUpdateCall { + c := &OrganizationsAppgroupsAppsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + c.googlecloudapigeev1appgroupapp = googlecloudapigeev1appgroupapp + return c +} + +// Action sets the optional parameter "action": Approve or revoke the +// consumer key by setting this value to `approve` or `revoke`. The +// `Content-Type` header must be set to `application/octet-stream`, with +// empty body. +func (c *OrganizationsAppgroupsAppsUpdateCall) Action(action string) *OrganizationsAppgroupsAppsUpdateCall { + c.urlParams_.Set("action", action) + 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 *OrganizationsAppgroupsAppsUpdateCall) Fields(s ...googleapi.Field) *OrganizationsAppgroupsAppsUpdateCall { + 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 *OrganizationsAppgroupsAppsUpdateCall) Context(ctx context.Context) *OrganizationsAppgroupsAppsUpdateCall { + 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 *OrganizationsAppgroupsAppsUpdateCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *OrganizationsAppgroupsAppsUpdateCall) 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.googlecloudapigeev1appgroupapp) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("PUT", 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 "apigee.organizations.appgroups.apps.update" call. +// Exactly one of *GoogleCloudApigeeV1AppGroupApp or error will be +// non-nil. Any non-2xx status code is an error. Response headers are in +// either *GoogleCloudApigeeV1AppGroupApp.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 *OrganizationsAppgroupsAppsUpdateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudApigeeV1AppGroupApp, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &GoogleCloudApigeeV1AppGroupApp{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Updates the details for an AppGroup app. In addition, you can add an API product to an AppGroup app and automatically generate an API key for the app to use when calling APIs in the API product. If you want to use an existing API key for the API product, add the API product to the API key using the UpdateAppGroupAppKey API. Using this API, you cannot update the app name, as it is the primary key used to identify the app and cannot be changed. This API replaces the existing attributes with those specified in the request. Include or exclude any existing attributes that you want to retain or delete, respectively.", + // "flatPath": "v1/organizations/{organizationsId}/appgroups/{appgroupsId}/apps/{appsId}", + // "httpMethod": "PUT", + // "id": "apigee.organizations.appgroups.apps.update", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "action": { + // "description": "Approve or revoke the consumer key by setting this value to `approve` or `revoke`. The `Content-Type` header must be set to `application/octet-stream`, with empty body.", + // "location": "query", + // "type": "string" + // }, + // "name": { + // "description": "Required. Name of the AppGroup app. Use the following structure in your request: `organizations/{org}/appgroups/{app_group_name}/apps/{app}`", + // "location": "path", + // "pattern": "^organizations/[^/]+/appgroups/[^/]+/apps/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+name}", + // "request": { + // "$ref": "GoogleCloudApigeeV1AppGroupApp" + // }, + // "response": { + // "$ref": "GoogleCloudApigeeV1AppGroupApp" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "apigee.organizations.appgroups.apps.keys.create": + +type OrganizationsAppgroupsAppsKeysCreateCall struct { + s *Service + parent string + googlecloudapigeev1appgroupappkey *GoogleCloudApigeeV1AppGroupAppKey + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Create: Creates a custom consumer key and secret for a AppGroup app. +// This is particularly useful if you want to migrate existing consumer +// keys and secrets to Apigee from another system. Consumer keys and +// secrets can contain letters, numbers, underscores, and hyphens. No +// other special characters are allowed. To avoid service disruptions, a +// consumer key and secret should not exceed 2 KBs each. **Note**: When +// creating the consumer key and secret, an association to API products +// will not be made. Therefore, you should not specify the associated +// API products in your request. Instead, use the +// ProductizeAppGroupAppKey API to make the association after the +// consumer key and secret are created. If a consumer key and secret +// already exist, you can keep them or delete them using the +// DeleteAppGroupAppKey API. +// +// - parent: Parent of the AppGroup app key. Use the following structure +// in your request: +// `organizations/{org}/appgroups/{app_group_name}/apps/{app}/keys`. +func (r *OrganizationsAppgroupsAppsKeysService) Create(parent string, googlecloudapigeev1appgroupappkey *GoogleCloudApigeeV1AppGroupAppKey) *OrganizationsAppgroupsAppsKeysCreateCall { + c := &OrganizationsAppgroupsAppsKeysCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + c.googlecloudapigeev1appgroupappkey = googlecloudapigeev1appgroupappkey + 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 *OrganizationsAppgroupsAppsKeysCreateCall) Fields(s ...googleapi.Field) *OrganizationsAppgroupsAppsKeysCreateCall { + 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 *OrganizationsAppgroupsAppsKeysCreateCall) Context(ctx context.Context) *OrganizationsAppgroupsAppsKeysCreateCall { + 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 *OrganizationsAppgroupsAppsKeysCreateCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *OrganizationsAppgroupsAppsKeysCreateCall) 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.googlecloudapigeev1appgroupappkey) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/keys") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("POST", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "parent": c.parent, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "apigee.organizations.appgroups.apps.keys.create" call. +// Exactly one of *GoogleCloudApigeeV1AppGroupAppKey or error will be +// non-nil. Any non-2xx status code is an error. Response headers are in +// either *GoogleCloudApigeeV1AppGroupAppKey.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 *OrganizationsAppgroupsAppsKeysCreateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudApigeeV1AppGroupAppKey, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &GoogleCloudApigeeV1AppGroupAppKey{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Creates a custom consumer key and secret for a AppGroup app. This is particularly useful if you want to migrate existing consumer keys and secrets to Apigee from another system. Consumer keys and secrets can contain letters, numbers, underscores, and hyphens. No other special characters are allowed. To avoid service disruptions, a consumer key and secret should not exceed 2 KBs each. **Note**: When creating the consumer key and secret, an association to API products will not be made. Therefore, you should not specify the associated API products in your request. Instead, use the ProductizeAppGroupAppKey API to make the association after the consumer key and secret are created. If a consumer key and secret already exist, you can keep them or delete them using the DeleteAppGroupAppKey API.", + // "flatPath": "v1/organizations/{organizationsId}/appgroups/{appgroupsId}/apps/{appsId}/keys", + // "httpMethod": "POST", + // "id": "apigee.organizations.appgroups.apps.keys.create", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "parent": { + // "description": "Required. Parent of the AppGroup app key. Use the following structure in your request: `organizations/{org}/appgroups/{app_group_name}/apps/{app}/keys`", + // "location": "path", + // "pattern": "^organizations/[^/]+/appgroups/[^/]+/apps/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+parent}/keys", + // "request": { + // "$ref": "GoogleCloudApigeeV1AppGroupAppKey" + // }, + // "response": { + // "$ref": "GoogleCloudApigeeV1AppGroupAppKey" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "apigee.organizations.appgroups.apps.keys.delete": + +type OrganizationsAppgroupsAppsKeysDeleteCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Delete: Deletes an app's consumer key and removes all API products +// associated with the app. After the consumer key is deleted, it cannot +// be used to access any APIs. +// +// - name: Name of the AppGroup app key. Use the following structure in +// your request: +// `organizations/{org}/appgroups/{app_group_name}/apps/{app}/keys/{key +// }`. +func (r *OrganizationsAppgroupsAppsKeysService) Delete(name string) *OrganizationsAppgroupsAppsKeysDeleteCall { + c := &OrganizationsAppgroupsAppsKeysDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *OrganizationsAppgroupsAppsKeysDeleteCall) Fields(s ...googleapi.Field) *OrganizationsAppgroupsAppsKeysDeleteCall { + 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 *OrganizationsAppgroupsAppsKeysDeleteCall) Context(ctx context.Context) *OrganizationsAppgroupsAppsKeysDeleteCall { + 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 *OrganizationsAppgroupsAppsKeysDeleteCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *OrganizationsAppgroupsAppsKeysDeleteCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("DELETE", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "apigee.organizations.appgroups.apps.keys.delete" call. +// Exactly one of *GoogleCloudApigeeV1AppGroupAppKey or error will be +// non-nil. Any non-2xx status code is an error. Response headers are in +// either *GoogleCloudApigeeV1AppGroupAppKey.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 *OrganizationsAppgroupsAppsKeysDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleCloudApigeeV1AppGroupAppKey, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &GoogleCloudApigeeV1AppGroupAppKey{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Deletes an app's consumer key and removes all API products associated with the app. After the consumer key is deleted, it cannot be used to access any APIs.", + // "flatPath": "v1/organizations/{organizationsId}/appgroups/{appgroupsId}/apps/{appsId}/keys/{keysId}", + // "httpMethod": "DELETE", + // "id": "apigee.organizations.appgroups.apps.keys.delete", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Required. Name of the AppGroup app key. Use the following structure in your request: `organizations/{org}/appgroups/{app_group_name}/apps/{app}/keys/{key}`", + // "location": "path", + // "pattern": "^organizations/[^/]+/appgroups/[^/]+/apps/[^/]+/keys/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+name}", + // "response": { + // "$ref": "GoogleCloudApigeeV1AppGroupAppKey" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "apigee.organizations.appgroups.apps.keys.get": + +type OrganizationsAppgroupsAppsKeysGetCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Gets details for a consumer key for a AppGroup app, including +// the key and secret value, associated API products, and other +// information. +// +// - name: Name of the AppGroup app key. Use the following structure in +// your request: +// `organizations/{org}/appgroups/{app_group_name}/apps/{app}/keys/{key +// }`. +func (r *OrganizationsAppgroupsAppsKeysService) Get(name string) *OrganizationsAppgroupsAppsKeysGetCall { + c := &OrganizationsAppgroupsAppsKeysGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *OrganizationsAppgroupsAppsKeysGetCall) Fields(s ...googleapi.Field) *OrganizationsAppgroupsAppsKeysGetCall { + 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 *OrganizationsAppgroupsAppsKeysGetCall) IfNoneMatch(entityTag string) *OrganizationsAppgroupsAppsKeysGetCall { + 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 *OrganizationsAppgroupsAppsKeysGetCall) Context(ctx context.Context) *OrganizationsAppgroupsAppsKeysGetCall { + 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 *OrganizationsAppgroupsAppsKeysGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *OrganizationsAppgroupsAppsKeysGetCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("GET", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "apigee.organizations.appgroups.apps.keys.get" call. +// Exactly one of *GoogleCloudApigeeV1AppGroupAppKey or error will be +// non-nil. Any non-2xx status code is an error. Response headers are in +// either *GoogleCloudApigeeV1AppGroupAppKey.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 *OrganizationsAppgroupsAppsKeysGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudApigeeV1AppGroupAppKey, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &GoogleCloudApigeeV1AppGroupAppKey{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Gets details for a consumer key for a AppGroup app, including the key and secret value, associated API products, and other information.", + // "flatPath": "v1/organizations/{organizationsId}/appgroups/{appgroupsId}/apps/{appsId}/keys/{keysId}", + // "httpMethod": "GET", + // "id": "apigee.organizations.appgroups.apps.keys.get", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Required. Name of the AppGroup app key. Use the following structure in your request: `organizations/{org}/appgroups/{app_group_name}/apps/{app}/keys/{key}`", + // "location": "path", + // "pattern": "^organizations/[^/]+/appgroups/[^/]+/apps/[^/]+/keys/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+name}", + // "response": { + // "$ref": "GoogleCloudApigeeV1AppGroupAppKey" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "apigee.organizations.appgroups.apps.keys.updateAppGroupAppKey": + +type OrganizationsAppgroupsAppsKeysUpdateAppGroupAppKeyCall struct { + s *Service + name string + googlecloudapigeev1updateappgroupappkeyrequest *GoogleCloudApigeeV1UpdateAppGroupAppKeyRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// UpdateAppGroupAppKey: Adds an API product to an AppGroupAppKey, +// enabling the app that holds the key to access the API resources +// bundled in the API product. In addition, you can add attributes to +// the AppGroupAppKey. This API replaces the existing attributes with +// those specified in the request. Include or exclude any existing +// attributes that you want to retain or delete, respectively. You can +// use the same key to access all API products associated with the app. +// +// - name: Name of the AppGroup app key. Use the following structure in +// your request: +// `organizations/{org}/appgroups/{app_group_name}/apps/{app}/keys/{key +// }`. +func (r *OrganizationsAppgroupsAppsKeysService) UpdateAppGroupAppKey(name string, googlecloudapigeev1updateappgroupappkeyrequest *GoogleCloudApigeeV1UpdateAppGroupAppKeyRequest) *OrganizationsAppgroupsAppsKeysUpdateAppGroupAppKeyCall { + c := &OrganizationsAppgroupsAppsKeysUpdateAppGroupAppKeyCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + c.googlecloudapigeev1updateappgroupappkeyrequest = googlecloudapigeev1updateappgroupappkeyrequest + 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 *OrganizationsAppgroupsAppsKeysUpdateAppGroupAppKeyCall) Fields(s ...googleapi.Field) *OrganizationsAppgroupsAppsKeysUpdateAppGroupAppKeyCall { + 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 *OrganizationsAppgroupsAppsKeysUpdateAppGroupAppKeyCall) Context(ctx context.Context) *OrganizationsAppgroupsAppsKeysUpdateAppGroupAppKeyCall { + 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 *OrganizationsAppgroupsAppsKeysUpdateAppGroupAppKeyCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *OrganizationsAppgroupsAppsKeysUpdateAppGroupAppKeyCall) 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.googlecloudapigeev1updateappgroupappkeyrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("POST", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "apigee.organizations.appgroups.apps.keys.updateAppGroupAppKey" call. +// Exactly one of *GoogleCloudApigeeV1AppGroupAppKey or error will be +// non-nil. Any non-2xx status code is an error. Response headers are in +// either *GoogleCloudApigeeV1AppGroupAppKey.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 *OrganizationsAppgroupsAppsKeysUpdateAppGroupAppKeyCall) Do(opts ...googleapi.CallOption) (*GoogleCloudApigeeV1AppGroupAppKey, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &GoogleCloudApigeeV1AppGroupAppKey{ + 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": "Adds an API product to an AppGroupAppKey, enabling the app that holds the key to access the API resources bundled in the API product. In addition, you can add attributes to the AppGroupAppKey. This API replaces the existing attributes with those specified in the request. Include or exclude any existing attributes that you want to retain or delete, respectively. You can use the same key to access all API products associated with the app.", + // "flatPath": "v1/organizations/{organizationsId}/appgroups/{appgroupsId}/apps/{appsId}/keys/{keysId}", + // "httpMethod": "POST", + // "id": "apigee.organizations.appgroups.apps.keys.updateAppGroupAppKey", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Required. Name of the AppGroup app key. Use the following structure in your request: `organizations/{org}/appgroups/{app_group_name}/apps/{app}/keys/{key}`", + // "location": "path", + // "pattern": "^organizations/[^/]+/appgroups/[^/]+/apps/[^/]+/keys/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+name}", + // "request": { + // "$ref": "GoogleCloudApigeeV1UpdateAppGroupAppKeyRequest" + // }, + // "response": { + // "$ref": "GoogleCloudApigeeV1AppGroupAppKey" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "apigee.organizations.appgroups.apps.keys.apiproducts.delete": + +type OrganizationsAppgroupsAppsKeysApiproductsDeleteCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Delete: Removes an API product from an app's consumer key. After the +// API product is removed, the app cannot access the API resources +// defined in that API product. **Note**: The consumer key is not +// removed, only its association with the API product. +// +// - name: Parent of the AppGroup app key. Use the following structure +// in your request: +// `organizations/{org}/appgroups/{app_group_name}/apps/{app}/keys/{key +// }/apiproducts/{apiproduct}`. +func (r *OrganizationsAppgroupsAppsKeysApiproductsService) Delete(name string) *OrganizationsAppgroupsAppsKeysApiproductsDeleteCall { + c := &OrganizationsAppgroupsAppsKeysApiproductsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *OrganizationsAppgroupsAppsKeysApiproductsDeleteCall) Fields(s ...googleapi.Field) *OrganizationsAppgroupsAppsKeysApiproductsDeleteCall { + 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 *OrganizationsAppgroupsAppsKeysApiproductsDeleteCall) Context(ctx context.Context) *OrganizationsAppgroupsAppsKeysApiproductsDeleteCall { + 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 *OrganizationsAppgroupsAppsKeysApiproductsDeleteCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *OrganizationsAppgroupsAppsKeysApiproductsDeleteCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("DELETE", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "apigee.organizations.appgroups.apps.keys.apiproducts.delete" call. +// Exactly one of *GoogleCloudApigeeV1AppGroupAppKey or error will be +// non-nil. Any non-2xx status code is an error. Response headers are in +// either *GoogleCloudApigeeV1AppGroupAppKey.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 *OrganizationsAppgroupsAppsKeysApiproductsDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleCloudApigeeV1AppGroupAppKey, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &GoogleCloudApigeeV1AppGroupAppKey{ + 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": "Removes an API product from an app's consumer key. After the API product is removed, the app cannot access the API resources defined in that API product. **Note**: The consumer key is not removed, only its association with the API product.", + // "flatPath": "v1/organizations/{organizationsId}/appgroups/{appgroupsId}/apps/{appsId}/keys/{keysId}/apiproducts/{apiproductsId}", + // "httpMethod": "DELETE", + // "id": "apigee.organizations.appgroups.apps.keys.apiproducts.delete", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Required. Parent of the AppGroup app key. Use the following structure in your request: `organizations/{org}/appgroups/{app_group_name}/apps/{app}/keys/{key}/apiproducts/{apiproduct}`", + // "location": "path", + // "pattern": "^organizations/[^/]+/appgroups/[^/]+/apps/[^/]+/keys/[^/]+/apiproducts/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+name}", + // "response": { + // "$ref": "GoogleCloudApigeeV1AppGroupAppKey" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "apigee.organizations.appgroups.apps.keys.apiproducts.updateAppGroupAppKeyApiProduct": + +type OrganizationsAppgroupsAppsKeysApiproductsUpdateAppGroupAppKeyApiProductCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// UpdateAppGroupAppKeyApiProduct: Approves or revokes the consumer key +// for an API product. After a consumer key is approved, the app can use +// it to access APIs. A consumer key that is revoked or pending cannot +// be used to access an API. Any access tokens associated with a revoked +// consumer key will remain active. However, Apigee checks the status of +// the consumer key and if set to `revoked` will not allow access to the +// API. +// +// - name: Name of the API product in the developer app key in the +// following format: +// `organizations/{org}/appgroups/{app_group_name}/apps/{app}/keys/{key +// }/apiproducts/{apiproduct}`. +func (r *OrganizationsAppgroupsAppsKeysApiproductsService) UpdateAppGroupAppKeyApiProduct(name string) *OrganizationsAppgroupsAppsKeysApiproductsUpdateAppGroupAppKeyApiProductCall { + c := &OrganizationsAppgroupsAppsKeysApiproductsUpdateAppGroupAppKeyApiProductCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// Action sets the optional parameter "action": Approve or revoke the +// consumer key by setting this value to `approve` or `revoke` +// respectively. The `Content-Type` header, if set, must be set to +// `application/octet-stream`, with empty body. +func (c *OrganizationsAppgroupsAppsKeysApiproductsUpdateAppGroupAppKeyApiProductCall) Action(action string) *OrganizationsAppgroupsAppsKeysApiproductsUpdateAppGroupAppKeyApiProductCall { + c.urlParams_.Set("action", action) + 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 *OrganizationsAppgroupsAppsKeysApiproductsUpdateAppGroupAppKeyApiProductCall) Fields(s ...googleapi.Field) *OrganizationsAppgroupsAppsKeysApiproductsUpdateAppGroupAppKeyApiProductCall { + 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 *OrganizationsAppgroupsAppsKeysApiproductsUpdateAppGroupAppKeyApiProductCall) Context(ctx context.Context) *OrganizationsAppgroupsAppsKeysApiproductsUpdateAppGroupAppKeyApiProductCall { + 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 *OrganizationsAppgroupsAppsKeysApiproductsUpdateAppGroupAppKeyApiProductCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *OrganizationsAppgroupsAppsKeysApiproductsUpdateAppGroupAppKeyApiProductCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("POST", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "apigee.organizations.appgroups.apps.keys.apiproducts.updateAppGroupAppKeyApiProduct" call. +// Exactly one of *GoogleProtobufEmpty or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *GoogleProtobufEmpty.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 *OrganizationsAppgroupsAppsKeysApiproductsUpdateAppGroupAppKeyApiProductCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &GoogleProtobufEmpty{ + 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": "Approves or revokes the consumer key for an API product. After a consumer key is approved, the app can use it to access APIs. A consumer key that is revoked or pending cannot be used to access an API. Any access tokens associated with a revoked consumer key will remain active. However, Apigee checks the status of the consumer key and if set to `revoked` will not allow access to the API.", + // "flatPath": "v1/organizations/{organizationsId}/appgroups/{appgroupsId}/apps/{appsId}/keys/{keysId}/apiproducts/{apiproductsId}", + // "httpMethod": "POST", + // "id": "apigee.organizations.appgroups.apps.keys.apiproducts.updateAppGroupAppKeyApiProduct", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "action": { + // "description": "Approve or revoke the consumer key by setting this value to `approve` or `revoke` respectively. The `Content-Type` header, if set, must be set to `application/octet-stream`, with empty body.", + // "location": "query", + // "type": "string" + // }, + // "name": { + // "description": "Required. Name of the API product in the developer app key in the following format: `organizations/{org}/appgroups/{app_group_name}/apps/{app}/keys/{key}/apiproducts/{apiproduct}`", + // "location": "path", + // "pattern": "^organizations/[^/]+/appgroups/[^/]+/apps/[^/]+/keys/[^/]+/apiproducts/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+name}", + // "response": { + // "$ref": "GoogleProtobufEmpty" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "apigee.organizations.apps.get": + +type OrganizationsAppsGetCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Gets the app profile for the specified app ID. +// +// - name: App ID in the following format: +// `organizations/{org}/apps/{app}`. +func (r *OrganizationsAppsService) Get(name string) *OrganizationsAppsGetCall { + c := &OrganizationsAppsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *OrganizationsAppsGetCall) Fields(s ...googleapi.Field) *OrganizationsAppsGetCall { + 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 *OrganizationsAppsGetCall) IfNoneMatch(entityTag string) *OrganizationsAppsGetCall { + 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 *OrganizationsAppsGetCall) Context(ctx context.Context) *OrganizationsAppsGetCall { + 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 *OrganizationsAppsGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *OrganizationsAppsGetCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("GET", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "apigee.organizations.apps.get" call. +// Exactly one of *GoogleCloudApigeeV1App or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *GoogleCloudApigeeV1App.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 *OrganizationsAppsGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudApigeeV1App, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &GoogleCloudApigeeV1App{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Gets the app profile for the specified app ID.", + // "flatPath": "v1/organizations/{organizationsId}/apps/{appsId}", + // "httpMethod": "GET", + // "id": "apigee.organizations.apps.get", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Required. App ID in the following format: `organizations/{org}/apps/{app}`", + // "location": "path", + // "pattern": "^organizations/[^/]+/apps/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+name}", + // "response": { + // "$ref": "GoogleCloudApigeeV1App" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "apigee.organizations.apps.list": + +type OrganizationsAppsListCall struct { + s *Service + parent string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// List: Lists IDs of apps within an organization that have the +// specified app status (approved or revoked) or are of the specified +// app type (developer or company). +// +// - parent: Resource path of the parent in the following format: +// `organizations/{org}`. +func (r *OrganizationsAppsService) List(parent string) *OrganizationsAppsListCall { + c := &OrganizationsAppsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.parent = parent return c } @@ -20130,9 +22960,8 @@ func (c *OrganizationsAppsListCall) ApiProduct(apiProduct string) *Organizations return c } -// Apptype sets the optional parameter "apptype": Filter by the type of -// the app. Valid values are `company` or `developer`. Defaults to -// `developer`. +// Apptype sets the optional parameter "apptype": 'apptype' is no longer +// available. Use a 'filter' instead. func (c *OrganizationsAppsListCall) Apptype(apptype string) *OrganizationsAppsListCall { c.urlParams_.Set("apptype", apptype) return c @@ -20146,6 +22975,17 @@ func (c *OrganizationsAppsListCall) Expand(expand bool) *OrganizationsAppsListCa return c } +// Filter sets the optional parameter "filter": The filter expression to +// be used to get the list of apps, where filtering can be done on +// developerEmail, apiProduct, consumerKey, status, appId, appName and +// appType. Examples: "developerEmail=foo@bar.com", "appType=AppGroup", +// or "appType=Developer" "filter" is supported from ver 1.10.0 and +// above. +func (c *OrganizationsAppsListCall) Filter(filter string) *OrganizationsAppsListCall { + c.urlParams_.Set("filter", filter) + return c +} + // Ids sets the optional parameter "ids": Comma-separated list of app // IDs on which to filter. func (c *OrganizationsAppsListCall) Ids(ids string) *OrganizationsAppsListCall { @@ -20168,6 +23008,24 @@ func (c *OrganizationsAppsListCall) KeyStatus(keyStatus string) *OrganizationsAp return c } +// PageSize sets the optional parameter "pageSize": Count of apps a +// single page can have in the response. If unspecified, at most 100 +// apps will be returned. The maximum value is 100; values above 100 +// will be coerced to 100. "page_size" is supported from ver 1.10.0 and +// above. +func (c *OrganizationsAppsListCall) PageSize(pageSize int64) *OrganizationsAppsListCall { + c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) + return c +} + +// PageToken sets the optional parameter "pageToken": The starting index +// record for listing the developers. "page_token" is supported from ver +// 1.10.0 and above. +func (c *OrganizationsAppsListCall) PageToken(pageToken string) *OrganizationsAppsListCall { + c.urlParams_.Set("pageToken", pageToken) + return c +} + // Rows sets the optional parameter "rows": Maximum number of app IDs to // return. Defaults to 10000. func (c *OrganizationsAppsListCall) Rows(rows int64) *OrganizationsAppsListCall { @@ -20304,7 +23162,7 @@ func (c *OrganizationsAppsListCall) Do(opts ...googleapi.CallOption) (*GoogleClo // "type": "string" // }, // "apptype": { - // "description": "Optional. Filter by the type of the app. Valid values are `company` or `developer`. Defaults to `developer`.", + // "description": "Optional. 'apptype' is no longer available. Use a 'filter' instead.", // "location": "query", // "type": "string" // }, @@ -20313,6 +23171,11 @@ func (c *OrganizationsAppsListCall) Do(opts ...googleapi.CallOption) (*GoogleClo // "location": "query", // "type": "boolean" // }, + // "filter": { + // "description": "Optional. The filter expression to be used to get the list of apps, where filtering can be done on developerEmail, apiProduct, consumerKey, status, appId, appName and appType. Examples: \"developerEmail=foo@bar.com\", \"appType=AppGroup\", or \"appType=Developer\" \"filter\" is supported from ver 1.10.0 and above.", + // "location": "query", + // "type": "string" + // }, // "ids": { // "description": "Optional. Comma-separated list of app IDs on which to filter.", // "location": "query", @@ -20328,6 +23191,17 @@ func (c *OrganizationsAppsListCall) Do(opts ...googleapi.CallOption) (*GoogleClo // "location": "query", // "type": "string" // }, + // "pageSize": { + // "description": "Optional. Count of apps a single page can have in the response. If unspecified, at most 100 apps will be returned. The maximum value is 100; values above 100 will be coerced to 100. \"page_size\" is supported from ver 1.10.0 and above.", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "pageToken": { + // "description": "Optional. The starting index record for listing the developers. \"page_token\" is supported from ver 1.10.0 and above.", + // "location": "query", + // "type": "string" + // }, // "parent": { // "description": "Required. Resource path of the parent in the following format: `organizations/{org}`", // "location": "path", @@ -20363,6 +23237,27 @@ func (c *OrganizationsAppsListCall) Do(opts ...googleapi.CallOption) (*GoogleClo } +// 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 *OrganizationsAppsListCall) Pages(ctx context.Context, f func(*GoogleCloudApigeeV1ListAppsResponse) error) error { + c.ctx_ = ctx + defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point + for { + x, err := c.Do() + if err != nil { + return err + } + if err := f(x); err != nil { + return err + } + if x.NextPageToken == "" { + return nil + } + c.PageToken(x.NextPageToken) + } +} + // method id "apigee.organizations.datacollectors.create": type OrganizationsDatacollectorsCreateCall struct { @@ -24666,7 +27561,10 @@ type OrganizationsDevelopersAppsKeysCreateCall struct { // API products in your request. Instead, use the UpdateDeveloperAppKey // API to make the association after the consumer key and secret are // created. If a consumer key and secret already exist, you can keep -// them or delete them using the DeleteDeveloperAppKey API. +// them or delete them using the DeleteDeveloperAppKey API. **Note**: +// All keys start out with status=approved, even if status=revoked is +// passed when the key is created. To revoke a key, use the +// UpdateDeveloperAppKey API. // // - parent: Parent of the developer app key. Use the following // structure in your request: @@ -24770,7 +27668,7 @@ func (c *OrganizationsDevelopersAppsKeysCreateCall) Do(opts ...googleapi.CallOpt } return ret, nil // { - // "description": "Creates a custom consumer key and secret for a developer app. This is particularly useful if you want to migrate existing consumer keys and secrets to Apigee from another system. Consumer keys and secrets can contain letters, numbers, underscores, and hyphens. No other special characters are allowed. To avoid service disruptions, a consumer key and secret should not exceed 2 KBs each. **Note**: When creating the consumer key and secret, an association to API products will not be made. Therefore, you should not specify the associated API products in your request. Instead, use the UpdateDeveloperAppKey API to make the association after the consumer key and secret are created. If a consumer key and secret already exist, you can keep them or delete them using the DeleteDeveloperAppKey API.", + // "description": "Creates a custom consumer key and secret for a developer app. This is particularly useful if you want to migrate existing consumer keys and secrets to Apigee from another system. Consumer keys and secrets can contain letters, numbers, underscores, and hyphens. No other special characters are allowed. To avoid service disruptions, a consumer key and secret should not exceed 2 KBs each. **Note**: When creating the consumer key and secret, an association to API products will not be made. Therefore, you should not specify the associated API products in your request. Instead, use the UpdateDeveloperAppKey API to make the association after the consumer key and secret are created. If a consumer key and secret already exist, you can keep them or delete them using the DeleteDeveloperAppKey API. **Note**: All keys start out with status=approved, even if status=revoked is passed when the key is created. To revoke a key, use the UpdateDeveloperAppKey API.", // "flatPath": "v1/organizations/{organizationsId}/developers/{developersId}/apps/{appsId}/keys", // "httpMethod": "POST", // "id": "apigee.organizations.developers.apps.keys.create", @@ -25727,7 +28625,10 @@ type OrganizationsDevelopersAppsKeysCreateCreateCall struct { // API products in your request. Instead, use the UpdateDeveloperAppKey // API to make the association after the consumer key and secret are // created. If a consumer key and secret already exist, you can keep -// them or delete them using the DeleteDeveloperAppKey API. +// them or delete them using the DeleteDeveloperAppKey API. **Note**: +// All keys start out with status=approved, even if status=revoked is +// passed when the key is created. To revoke a key, use the +// UpdateDeveloperAppKey API. // // - parent: Parent of the developer app key. Use the following // structure in your request: @@ -25831,7 +28732,7 @@ func (c *OrganizationsDevelopersAppsKeysCreateCreateCall) Do(opts ...googleapi.C } return ret, nil // { - // "description": "Creates a custom consumer key and secret for a developer app. This is particularly useful if you want to migrate existing consumer keys and secrets to Apigee from another system. Consumer keys and secrets can contain letters, numbers, underscores, and hyphens. No other special characters are allowed. To avoid service disruptions, a consumer key and secret should not exceed 2 KBs each. **Note**: When creating the consumer key and secret, an association to API products will not be made. Therefore, you should not specify the associated API products in your request. Instead, use the UpdateDeveloperAppKey API to make the association after the consumer key and secret are created. If a consumer key and secret already exist, you can keep them or delete them using the DeleteDeveloperAppKey API.", + // "description": "Creates a custom consumer key and secret for a developer app. This is particularly useful if you want to migrate existing consumer keys and secrets to Apigee from another system. Consumer keys and secrets can contain letters, numbers, underscores, and hyphens. No other special characters are allowed. To avoid service disruptions, a consumer key and secret should not exceed 2 KBs each. **Note**: When creating the consumer key and secret, an association to API products will not be made. Therefore, you should not specify the associated API products in your request. Instead, use the UpdateDeveloperAppKey API to make the association after the consumer key and secret are created. If a consumer key and secret already exist, you can keep them or delete them using the DeleteDeveloperAppKey API. **Note**: All keys start out with status=approved, even if status=revoked is passed when the key is created. To revoke a key, use the UpdateDeveloperAppKey API.", // "flatPath": "v1/organizations/{organizationsId}/developers/{developersId}/apps/{appsId}/keys/create", // "httpMethod": "POST", // "id": "apigee.organizations.developers.apps.keys.create.create", diff --git a/artifactregistry/v1/artifactregistry-api.json b/artifactregistry/v1/artifactregistry-api.json index 5c73ba0cc0c..47611296da4 100644 --- a/artifactregistry/v1/artifactregistry-api.json +++ b/artifactregistry/v1/artifactregistry-api.json @@ -1355,6 +1355,34 @@ }, "versions": { "methods": { + "batchDelete": { + "description": "Deletes multiple versions across a repository. The returned operation will complete once the versions have been deleted.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/repositories/{repositoriesId}/packages/{packagesId}/versions:batchDelete", + "httpMethod": "POST", + "id": "artifactregistry.projects.locations.repositories.packages.versions.batchDelete", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "The name of the repository holding all requested versions.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/repositories/[^/]+/packages/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/versions:batchDelete", + "request": { + "$ref": "BatchDeleteVersionsRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, "delete": { "description": "Deletes a version and all of its content. The returned operation will complete once the version has been deleted.", "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/repositories/{repositoriesId}/packages/{packagesId}/versions/{versionsId}", @@ -1633,7 +1661,7 @@ } } }, - "revision": "20230622", + "revision": "20230628", "rootUrl": "https://artifactregistry.googleapis.com/", "schemas": { "AptArtifact": { @@ -1698,6 +1726,24 @@ }, "type": "object" }, + "BatchDeleteVersionsRequest": { + "description": "The request to delete multiple versions across a repository.", + "id": "BatchDeleteVersionsRequest", + "properties": { + "names": { + "description": "Required. The names of the versions to delete. A maximum of 10000 versions can be deleted in a batch.", + "items": { + "type": "string" + }, + "type": "array" + }, + "validateOnly": { + "description": "If true, the request is performed without deleting data, following AIP-163.", + "type": "boolean" + } + }, + "type": "object" + }, "Binding": { "description": "Associates `members`, or principals, with a `role`.", "id": "Binding", @@ -1720,6 +1766,117 @@ }, "type": "object" }, + "CleanupPolicy": { + "description": "Artifact policy configuration for repository cleanup policies.", + "id": "CleanupPolicy", + "properties": { + "action": { + "description": "Policy action.", + "enum": [ + "ACTION_UNSPECIFIED", + "DELETE", + "KEEP" + ], + "enumDescriptions": [ + "Action not specified.", + "Delete action.", + "Keep action." + ], + "type": "string" + }, + "condition": { + "$ref": "CleanupPolicyCondition", + "description": "Policy condition for matching versions." + }, + "id": { + "description": "The user-provided ID of the cleanup policy.", + "type": "string" + }, + "mostRecentVersions": { + "$ref": "CleanupPolicyMostRecentVersions", + "description": "Policy condition for retaining a minimum number of versions. May only be specified with a Keep action." + } + }, + "type": "object" + }, + "CleanupPolicyCondition": { + "description": "CleanupPolicyCondition is a set of conditions attached to a CleanupPolicy. If multiple entries are set, all must be satisfied for the condition to be satisfied.", + "id": "CleanupPolicyCondition", + "properties": { + "newerThan": { + "description": "Match versions newer than a duration.", + "format": "google-duration", + "type": "string" + }, + "olderThan": { + "description": "Match versions older than a duration.", + "format": "google-duration", + "type": "string" + }, + "packageNamePrefixes": { + "description": "Match versions by package prefix. Applied on any prefix match.", + "items": { + "type": "string" + }, + "type": "array" + }, + "tagPrefixes": { + "description": "Match versions by tag prefix. Applied on any prefix match.", + "items": { + "type": "string" + }, + "type": "array" + }, + "tagState": { + "description": "Match versions by tag status.", + "enum": [ + "TAG_STATE_UNSPECIFIED", + "TAGGED", + "UNTAGGED", + "ANY" + ], + "enumDescriptions": [ + "Tag status not specified.", + "Applies to tagged versions only.", + "Applies to untagged versions only.", + "Applies to all versions." + ], + "type": "string" + }, + "versionAge": { + "description": "DEPRECATED: Use older_than.", + "format": "google-duration", + "type": "string" + }, + "versionNamePrefixes": { + "description": "Match versions by version name prefix. Applied on any prefix match.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "CleanupPolicyMostRecentVersions": { + "description": "CleanupPolicyMostRecentVersions is an alternate condition of a CleanupPolicy for retaining a minimum number of versions.", + "id": "CleanupPolicyMostRecentVersions", + "properties": { + "keepCount": { + "description": "Minimum number of versions to keep.", + "format": "int32", + "type": "integer" + }, + "packageNamePrefixes": { + "description": "List of package name prefixes that will apply this rule.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "DockerImage": { "description": "DockerImage represents a docker artifact. The following fields are returned as untyped metadata in the Version resource, using camelcase keys (i.e. metadata.imageSizeBytes): * imageSizeBytes * mediaType * buildTime", "id": "DockerImage", @@ -2731,6 +2888,17 @@ "description": "A Repository for storing artifacts with a specific format.", "id": "Repository", "properties": { + "cleanupPolicies": { + "additionalProperties": { + "$ref": "CleanupPolicy" + }, + "description": "Optional. Cleanup policies for this repository. Cleanup policies indicate when certain package versions can be automatically deleted. Map keys are policy IDs supplied by users during policy creation. They must unique within a repository and be under 128 characters in length.", + "type": "object" + }, + "cleanupPolicyDryRun": { + "description": "Optional. If true, the cleanup pipeline is prevented from deleting versions in this repository.", + "type": "boolean" + }, "createTime": { "description": "Output only. The time when the repository was created.", "format": "google-datetime", @@ -2756,7 +2924,8 @@ "YUM", "GOOGET", "PYTHON", - "KFP" + "KFP", + "GO" ], "enumDescriptions": [ "Unspecified package format.", @@ -2767,7 +2936,8 @@ "YUM package format.", "GooGet package format.", "Python package format.", - "Kubeflow Pipelines package format." + "Kubeflow Pipelines package format.", + "Go package format." ], "type": "string" }, diff --git a/artifactregistry/v1/artifactregistry-gen.go b/artifactregistry/v1/artifactregistry-gen.go index ac36530cf3a..fd1bfb08fec 100644 --- a/artifactregistry/v1/artifactregistry-gen.go +++ b/artifactregistry/v1/artifactregistry-gen.go @@ -431,6 +431,40 @@ func (s *BatchDeleteVersionsMetadata) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// BatchDeleteVersionsRequest: The request to delete multiple versions +// across a repository. +type BatchDeleteVersionsRequest struct { + // Names: Required. The names of the versions to delete. A maximum of + // 10000 versions can be deleted in a batch. + Names []string `json:"names,omitempty"` + + // ValidateOnly: If true, the request is performed without deleting + // data, following AIP-163. + ValidateOnly bool `json:"validateOnly,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Names") 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. "Names") 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 *BatchDeleteVersionsRequest) MarshalJSON() ([]byte, error) { + type NoMethod BatchDeleteVersionsRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // Binding: Associates `members`, or principals, with a `role`. type Binding struct { // Condition: The condition that is associated with this binding. If the @@ -509,6 +543,141 @@ func (s *Binding) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// CleanupPolicy: Artifact policy configuration for repository cleanup +// policies. +type CleanupPolicy struct { + // Action: Policy action. + // + // Possible values: + // "ACTION_UNSPECIFIED" - Action not specified. + // "DELETE" - Delete action. + // "KEEP" - Keep action. + Action string `json:"action,omitempty"` + + // Condition: Policy condition for matching versions. + Condition *CleanupPolicyCondition `json:"condition,omitempty"` + + // Id: The user-provided ID of the cleanup policy. + Id string `json:"id,omitempty"` + + // MostRecentVersions: Policy condition for retaining a minimum number + // of versions. May only be specified with a Keep action. + MostRecentVersions *CleanupPolicyMostRecentVersions `json:"mostRecentVersions,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Action") 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. "Action") 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 *CleanupPolicy) MarshalJSON() ([]byte, error) { + type NoMethod CleanupPolicy + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// CleanupPolicyCondition: CleanupPolicyCondition is a set of conditions +// attached to a CleanupPolicy. If multiple entries are set, all must be +// satisfied for the condition to be satisfied. +type CleanupPolicyCondition struct { + // NewerThan: Match versions newer than a duration. + NewerThan string `json:"newerThan,omitempty"` + + // OlderThan: Match versions older than a duration. + OlderThan string `json:"olderThan,omitempty"` + + // PackageNamePrefixes: Match versions by package prefix. Applied on any + // prefix match. + PackageNamePrefixes []string `json:"packageNamePrefixes,omitempty"` + + // TagPrefixes: Match versions by tag prefix. Applied on any prefix + // match. + TagPrefixes []string `json:"tagPrefixes,omitempty"` + + // TagState: Match versions by tag status. + // + // Possible values: + // "TAG_STATE_UNSPECIFIED" - Tag status not specified. + // "TAGGED" - Applies to tagged versions only. + // "UNTAGGED" - Applies to untagged versions only. + // "ANY" - Applies to all versions. + TagState string `json:"tagState,omitempty"` + + // VersionAge: DEPRECATED: Use older_than. + VersionAge string `json:"versionAge,omitempty"` + + // VersionNamePrefixes: Match versions by version name prefix. Applied + // on any prefix match. + VersionNamePrefixes []string `json:"versionNamePrefixes,omitempty"` + + // ForceSendFields is a list of field names (e.g. "NewerThan") 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. "NewerThan") 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 *CleanupPolicyCondition) MarshalJSON() ([]byte, error) { + type NoMethod CleanupPolicyCondition + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// CleanupPolicyMostRecentVersions: CleanupPolicyMostRecentVersions is +// an alternate condition of a CleanupPolicy for retaining a minimum +// number of versions. +type CleanupPolicyMostRecentVersions struct { + // KeepCount: Minimum number of versions to keep. + KeepCount int64 `json:"keepCount,omitempty"` + + // PackageNamePrefixes: List of package name prefixes that will apply + // this rule. + PackageNamePrefixes []string `json:"packageNamePrefixes,omitempty"` + + // ForceSendFields is a list of field names (e.g. "KeepCount") 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. "KeepCount") 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 *CleanupPolicyMostRecentVersions) MarshalJSON() ([]byte, error) { + type NoMethod CleanupPolicyMostRecentVersions + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // DockerImage: DockerImage represents a docker artifact. The following // fields are returned as untyped metadata in the Version resource, // using camelcase keys (i.e. metadata.imageSizeBytes): * imageSizeBytes @@ -2351,6 +2520,17 @@ func (s *RemoteRepositoryConfig) MarshalJSON() ([]byte, error) { // Repository: A Repository for storing artifacts with a specific // format. type Repository struct { + // CleanupPolicies: Optional. Cleanup policies for this repository. + // Cleanup policies indicate when certain package versions can be + // automatically deleted. Map keys are policy IDs supplied by users + // during policy creation. They must unique within a repository and be + // under 128 characters in length. + CleanupPolicies map[string]CleanupPolicy `json:"cleanupPolicies,omitempty"` + + // CleanupPolicyDryRun: Optional. If true, the cleanup pipeline is + // prevented from deleting versions in this repository. + CleanupPolicyDryRun bool `json:"cleanupPolicyDryRun,omitempty"` + // CreateTime: Output only. The time when the repository was created. CreateTime string `json:"createTime,omitempty"` @@ -2373,6 +2553,7 @@ type Repository struct { // "GOOGET" - GooGet package format. // "PYTHON" - Python package format. // "KFP" - Kubeflow Pipelines package format. + // "GO" - Go package format. Format string `json:"format,omitempty"` // KmsKeyName: The Cloud KMS resource name of the customer managed @@ -2434,7 +2615,7 @@ type Repository struct { // server. googleapi.ServerResponse `json:"-"` - // ForceSendFields is a list of field names (e.g. "CreateTime") to + // ForceSendFields is a list of field names (e.g. "CleanupPolicies") 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 @@ -2442,12 +2623,13 @@ type Repository struct { // This may be used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "CreateTime") to include in - // API requests with the JSON null value. By default, fields with empty - // values are omitted from API requests. However, any field with an - // empty value appearing in NullFields will be sent to the server as - // null. It is an error if a field in this list has a non-empty value. - // This may be used to include null fields in Patch requests. + // NullFields is a list of field names (e.g. "CleanupPolicies") 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:"-"` } @@ -9438,6 +9620,149 @@ func (c *ProjectsLocationsRepositoriesPackagesTagsPatchCall) Do(opts ...googleap } +// method id "artifactregistry.projects.locations.repositories.packages.versions.batchDelete": + +type ProjectsLocationsRepositoriesPackagesVersionsBatchDeleteCall struct { + s *Service + parent string + batchdeleteversionsrequest *BatchDeleteVersionsRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// BatchDelete: Deletes multiple versions across a repository. The +// returned operation will complete once the versions have been deleted. +// +// - parent: The name of the repository holding all requested versions. +func (r *ProjectsLocationsRepositoriesPackagesVersionsService) BatchDelete(parent string, batchdeleteversionsrequest *BatchDeleteVersionsRequest) *ProjectsLocationsRepositoriesPackagesVersionsBatchDeleteCall { + c := &ProjectsLocationsRepositoriesPackagesVersionsBatchDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + c.batchdeleteversionsrequest = batchdeleteversionsrequest + 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 *ProjectsLocationsRepositoriesPackagesVersionsBatchDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsRepositoriesPackagesVersionsBatchDeleteCall { + 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 *ProjectsLocationsRepositoriesPackagesVersionsBatchDeleteCall) Context(ctx context.Context) *ProjectsLocationsRepositoriesPackagesVersionsBatchDeleteCall { + 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 *ProjectsLocationsRepositoriesPackagesVersionsBatchDeleteCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsRepositoriesPackagesVersionsBatchDeleteCall) 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.batchdeleteversionsrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/versions:batchDelete") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("POST", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "parent": c.parent, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "artifactregistry.projects.locations.repositories.packages.versions.batchDelete" 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 *ProjectsLocationsRepositoriesPackagesVersionsBatchDeleteCall) Do(opts ...googleapi.CallOption) (*Operation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &Operation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Deletes multiple versions across a repository. The returned operation will complete once the versions have been deleted.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/repositories/{repositoriesId}/packages/{packagesId}/versions:batchDelete", + // "httpMethod": "POST", + // "id": "artifactregistry.projects.locations.repositories.packages.versions.batchDelete", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "parent": { + // "description": "The name of the repository holding all requested versions.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/repositories/[^/]+/packages/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+parent}/versions:batchDelete", + // "request": { + // "$ref": "BatchDeleteVersionsRequest" + // }, + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + // method id "artifactregistry.projects.locations.repositories.packages.versions.delete": type ProjectsLocationsRepositoriesPackagesVersionsDeleteCall struct { diff --git a/assuredworkloads/v1/assuredworkloads-api.json b/assuredworkloads/v1/assuredworkloads-api.json index 2f674725b93..f1335161391 100644 --- a/assuredworkloads/v1/assuredworkloads-api.json +++ b/assuredworkloads/v1/assuredworkloads-api.json @@ -519,7 +519,7 @@ } } }, - "revision": "20230612", + "revision": "20230623", "rootUrl": "https://assuredworkloads.googleapis.com/", "schemas": { "GoogleCloudAssuredworkloadsV1AcknowledgeViolationRequest": { @@ -565,7 +565,8 @@ "ASSURED_WORKLOADS_FOR_PARTNERS", "ISR_REGIONS", "ISR_REGIONS_AND_SUPPORT", - "CA_PROTECTED_B" + "CA_PROTECTED_B", + "IL5" ], "enumDescriptions": [ "Unknown compliance regime.", @@ -583,7 +584,8 @@ "Assured Workloads for Partners;", "Assured Workloads for Israel", "Assured Workloads for Israel Regions", - "Assured Workloads for Canada Protected B regime" + "Assured Workloads for Canada Protected B regime", + "Information protection as per DoD IL5 requirements." ], "type": "string" }, @@ -737,11 +739,6 @@ "readOnly": true, "type": "string" }, - "orgPolicyConstraint": { - "description": "Output only. Immutable. The org-policy-constraint that was incorrectly changed, which resulted in this violation.", - "readOnly": true, - "type": "string" - }, "remediation": { "$ref": "GoogleCloudAssuredworkloadsV1ViolationRemediation", "description": "Output only. Compliance violation remediation", @@ -913,7 +910,8 @@ "ASSURED_WORKLOADS_FOR_PARTNERS", "ISR_REGIONS", "ISR_REGIONS_AND_SUPPORT", - "CA_PROTECTED_B" + "CA_PROTECTED_B", + "IL5" ], "enumDescriptions": [ "Unknown compliance regime.", @@ -931,7 +929,8 @@ "Assured Workloads for Partners;", "Assured Workloads for Israel", "Assured Workloads for Israel Regions", - "Assured Workloads for Canada Protected B regime" + "Assured Workloads for Canada Protected B regime", + "Information protection as per DoD IL5 requirements." ], "type": "string" }, diff --git a/assuredworkloads/v1/assuredworkloads-gen.go b/assuredworkloads/v1/assuredworkloads-gen.go index d1079b27f38..411fc629db3 100644 --- a/assuredworkloads/v1/assuredworkloads-gen.go +++ b/assuredworkloads/v1/assuredworkloads-gen.go @@ -271,6 +271,7 @@ type GoogleCloudAssuredworkloadsV1CreateWorkloadOperationMetadata struct { // "ISR_REGIONS" - Assured Workloads for Israel // "ISR_REGIONS_AND_SUPPORT" - Assured Workloads for Israel Regions // "CA_PROTECTED_B" - Assured Workloads for Canada Protected B regime + // "IL5" - Information protection as per DoD IL5 requirements. ComplianceRegime string `json:"complianceRegime,omitempty"` // CreateTime: Optional. Time when the operation was created. @@ -519,11 +520,6 @@ type GoogleCloudAssuredworkloadsV1Violation struct { // organizations/{organization_id}/policies/{constraint_name} NonCompliantOrgPolicy string `json:"nonCompliantOrgPolicy,omitempty"` - // OrgPolicyConstraint: Output only. Immutable. The - // org-policy-constraint that was incorrectly changed, which resulted in - // this violation. - OrgPolicyConstraint string `json:"orgPolicyConstraint,omitempty"` - // Remediation: Output only. Compliance violation remediation Remediation *GoogleCloudAssuredworkloadsV1ViolationRemediation `json:"remediation,omitempty"` @@ -772,6 +768,7 @@ type GoogleCloudAssuredworkloadsV1Workload struct { // "ISR_REGIONS" - Assured Workloads for Israel // "ISR_REGIONS_AND_SUPPORT" - Assured Workloads for Israel Regions // "CA_PROTECTED_B" - Assured Workloads for Canada Protected B regime + // "IL5" - Information protection as per DoD IL5 requirements. ComplianceRegime string `json:"complianceRegime,omitempty"` // ComplianceStatus: Output only. Count of active Violations in the diff --git a/assuredworkloads/v1beta1/assuredworkloads-api.json b/assuredworkloads/v1beta1/assuredworkloads-api.json index ba1fc28d470..b9b4c49ff31 100644 --- a/assuredworkloads/v1beta1/assuredworkloads-api.json +++ b/assuredworkloads/v1beta1/assuredworkloads-api.json @@ -595,7 +595,7 @@ } } }, - "revision": "20230612", + "revision": "20230623", "rootUrl": "https://assuredworkloads.googleapis.com/", "schemas": { "GoogleCloudAssuredworkloadsV1beta1AcknowledgeViolationRequest": { @@ -655,7 +655,8 @@ "ASSURED_WORKLOADS_FOR_PARTNERS", "ISR_REGIONS", "ISR_REGIONS_AND_SUPPORT", - "CA_PROTECTED_B" + "CA_PROTECTED_B", + "IL5" ], "enumDescriptions": [ "Unknown compliance regime.", @@ -673,7 +674,8 @@ "Assured Workloads for Partners;", "Assured Workloads for Israel", "Assured Workloads for Israel Regions", - "Assured Workloads for Canada Protected B regime" + "Assured Workloads for Canada Protected B regime", + "Information protection as per DoD IL5 requirements." ], "type": "string" }, @@ -814,11 +816,6 @@ "readOnly": true, "type": "string" }, - "orgPolicyConstraint": { - "description": "Output only. Immutable. The org-policy-constraint that was incorrectly changed, which resulted in this violation.", - "readOnly": true, - "type": "string" - }, "remediation": { "$ref": "GoogleCloudAssuredworkloadsV1beta1ViolationRemediation", "description": "Output only. Compliance violation remediation", @@ -994,7 +991,8 @@ "ASSURED_WORKLOADS_FOR_PARTNERS", "ISR_REGIONS", "ISR_REGIONS_AND_SUPPORT", - "CA_PROTECTED_B" + "CA_PROTECTED_B", + "IL5" ], "enumDescriptions": [ "Unknown compliance regime.", @@ -1012,7 +1010,8 @@ "Assured Workloads for Partners;", "Assured Workloads for Israel", "Assured Workloads for Israel Regions", - "Assured Workloads for Canada Protected B regime" + "Assured Workloads for Canada Protected B regime", + "Information protection as per DoD IL5 requirements." ], "type": "string" }, diff --git a/assuredworkloads/v1beta1/assuredworkloads-gen.go b/assuredworkloads/v1beta1/assuredworkloads-gen.go index 695f0a6e1aa..7b507df5d6a 100644 --- a/assuredworkloads/v1beta1/assuredworkloads-gen.go +++ b/assuredworkloads/v1beta1/assuredworkloads-gen.go @@ -391,6 +391,7 @@ type GoogleCloudAssuredworkloadsV1beta1CreateWorkloadOperationMetadata struct { // "ISR_REGIONS" - Assured Workloads for Israel // "ISR_REGIONS_AND_SUPPORT" - Assured Workloads for Israel Regions // "CA_PROTECTED_B" - Assured Workloads for Canada Protected B regime + // "IL5" - Information protection as per DoD IL5 requirements. ComplianceRegime string `json:"complianceRegime,omitempty"` // CreateTime: Optional. Time when the operation was created. @@ -607,11 +608,6 @@ type GoogleCloudAssuredworkloadsV1beta1Violation struct { // organizations/{organization_id}/policies/{constraint_name} NonCompliantOrgPolicy string `json:"nonCompliantOrgPolicy,omitempty"` - // OrgPolicyConstraint: Output only. Immutable. The - // org-policy-constraint that was incorrectly changed, which resulted in - // this violation. - OrgPolicyConstraint string `json:"orgPolicyConstraint,omitempty"` - // Remediation: Output only. Compliance violation remediation Remediation *GoogleCloudAssuredworkloadsV1beta1ViolationRemediation `json:"remediation,omitempty"` @@ -864,6 +860,7 @@ type GoogleCloudAssuredworkloadsV1beta1Workload struct { // "ISR_REGIONS" - Assured Workloads for Israel // "ISR_REGIONS_AND_SUPPORT" - Assured Workloads for Israel Regions // "CA_PROTECTED_B" - Assured Workloads for Canada Protected B regime + // "IL5" - Information protection as per DoD IL5 requirements. ComplianceRegime string `json:"complianceRegime,omitempty"` // ComplianceStatus: Output only. Count of active Violations in the diff --git a/baremetalsolution/v2/baremetalsolution-api.json b/baremetalsolution/v2/baremetalsolution-api.json index 3c2bbc073f4..1d7a7db0d8f 100644 --- a/baremetalsolution/v2/baremetalsolution-api.json +++ b/baremetalsolution/v2/baremetalsolution-api.json @@ -176,35 +176,6 @@ } }, "resources": { - "instanceProvisioningSettings": { - "methods": { - "fetch": { - "description": "Get instance provisioning settings for a given project. This is hidden method used by UI only.", - "flatPath": "v2/projects/{projectsId}/locations/{locationsId}/instanceProvisioningSettings:fetch", - "httpMethod": "GET", - "id": "baremetalsolution.projects.locations.instanceProvisioningSettings.fetch", - "parameterOrder": [ - "location" - ], - "parameters": { - "location": { - "description": "Required. The parent project and location containing the ProvisioningSettings.", - "location": "path", - "pattern": "^projects/[^/]+/locations/[^/]+$", - "required": true, - "type": "string" - } - }, - "path": "v2/{+location}/instanceProvisioningSettings:fetch", - "response": { - "$ref": "FetchInstanceProvisioningSettingsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - } - } - }, "instances": { "methods": { "detachLun": { @@ -1577,7 +1548,7 @@ } } }, - "revision": "20230607", + "revision": "20230628", "rootUrl": "https://baremetalsolution.googleapis.com/", "schemas": { "AllowedClient": { @@ -1676,25 +1647,12 @@ "properties": {}, "type": "object" }, - "FetchInstanceProvisioningSettingsResponse": { - "description": "Response with all provisioning settings.", - "id": "FetchInstanceProvisioningSettingsResponse", - "properties": { - "images": { - "description": "The OS images available.", - "items": { - "$ref": "OSImage" - }, - "type": "array" - } - }, - "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": { + "deprecated": true, "description": "The index of the logical interface mapping to the index of the hardware bond or nic on the chosen network template. This field is deprecated.", "format": "int32", "type": "integer" @@ -1713,35 +1671,6 @@ }, "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", @@ -1890,6 +1819,7 @@ }, "clientNetwork": { "$ref": "NetworkAddress", + "deprecated": true, "description": "Client network address. Filled if InstanceConfig.multivlan_config is false." }, "hyperthreading": { @@ -1940,6 +1870,7 @@ }, "privateNetwork": { "$ref": "NetworkAddress", + "deprecated": true, "description": "Private network address, if any. Filled if InstanceConfig.multivlan_config is false." }, "sshKeyNames": { @@ -1970,6 +1901,7 @@ "type": "string" }, "instanceType": { + "deprecated": true, "description": "Instance type. Deprecated: use gcp_service.", "type": "string" }, @@ -2808,40 +2740,6 @@ }, "type": "object" }, - "OSImage": { - "description": "Operation System image.", - "id": "OSImage", - "properties": { - "applicableInstanceTypes": { - "description": "Instance types this image is applicable to. [Available types](https://cloud.google.com/bare-metal/docs/bms-planning#server_configurations)", - "items": { - "type": "string" - }, - "type": "array" - }, - "code": { - "description": "OS Image code.", - "type": "string" - }, - "description": { - "description": "OS Image description.", - "type": "string" - }, - "name": { - "description": "Output only. OS Image's unique name.", - "readOnly": true, - "type": "string" - }, - "supportedNetworkTemplates": { - "description": "Network templates that can be used with this OS Image.", - "items": { - "$ref": "ServerNetworkTemplate" - }, - "type": "array" - } - }, - "type": "object" - }, "Operation": { "description": "This resource represents a long-running operation that is the result of a network API call.", "id": "Operation", @@ -2891,6 +2789,7 @@ "type": "string" }, "email": { + "deprecated": true, "description": "Email provided to send a confirmation with provisioning config to. Deprecated in favour of email field in request messages.", "type": "string" }, @@ -3136,32 +3035,6 @@ }, "type": "object" }, - "ServerNetworkTemplate": { - "description": "Network template.", - "id": "ServerNetworkTemplate", - "properties": { - "applicableInstanceTypes": { - "description": "Instance types this template is applicable to.", - "items": { - "type": "string" - }, - "type": "array" - }, - "logicalInterfaces": { - "description": "Logical interfaces.", - "items": { - "$ref": "GoogleCloudBaremetalsolutionV2ServerNetworkTemplateLogicalInterface" - }, - "type": "array" - }, - "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" - } - }, - "type": "object" - }, "SnapshotReservationDetail": { "description": "Details about snapshot space reservation and usage on the storage volume.", "id": "SnapshotReservationDetail", diff --git a/baremetalsolution/v2/baremetalsolution-gen.go b/baremetalsolution/v2/baremetalsolution-gen.go index 238ab001620..ce12cabd714 100644 --- a/baremetalsolution/v2/baremetalsolution-gen.go +++ b/baremetalsolution/v2/baremetalsolution-gen.go @@ -152,7 +152,6 @@ type ProjectsService struct { func NewProjectsLocationsService(s *Service) *ProjectsLocationsService { rs := &ProjectsLocationsService{s: s} - rs.InstanceProvisioningSettings = NewProjectsLocationsInstanceProvisioningSettingsService(s) rs.Instances = NewProjectsLocationsInstancesService(s) rs.Networks = NewProjectsLocationsNetworksService(s) rs.NfsShares = NewProjectsLocationsNfsSharesService(s) @@ -167,8 +166,6 @@ func NewProjectsLocationsService(s *Service) *ProjectsLocationsService { type ProjectsLocationsService struct { s *Service - InstanceProvisioningSettings *ProjectsLocationsInstanceProvisioningSettingsService - Instances *ProjectsLocationsInstancesService Networks *ProjectsLocationsNetworksService @@ -186,15 +183,6 @@ type ProjectsLocationsService struct { Volumes *ProjectsLocationsVolumesService } -func NewProjectsLocationsInstanceProvisioningSettingsService(s *Service) *ProjectsLocationsInstanceProvisioningSettingsService { - rs := &ProjectsLocationsInstanceProvisioningSettingsService{s: s} - return rs -} - -type ProjectsLocationsInstanceProvisioningSettingsService struct { - s *Service -} - func NewProjectsLocationsInstancesService(s *Service) *ProjectsLocationsInstancesService { rs := &ProjectsLocationsInstancesService{s: s} return rs @@ -413,39 +401,6 @@ type EvictLunRequest struct { type EvictVolumeRequest struct { } -// FetchInstanceProvisioningSettingsResponse: Response with all -// provisioning settings. -type FetchInstanceProvisioningSettingsResponse struct { - // Images: The OS images available. - Images []*OSImage `json:"images,omitempty"` - - // ServerResponse contains the HTTP response code and headers from the - // server. - googleapi.ServerResponse `json:"-"` - - // ForceSendFields is a list of field names (e.g. "Images") 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. "Images") 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 *FetchInstanceProvisioningSettingsResponse) MarshalJSON() ([]byte, error) { - type NoMethod FetchInstanceProvisioningSettingsResponse - raw := NoMethod(*s) - 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 @@ -489,48 +444,6 @@ func (s *GoogleCloudBaremetalsolutionV2LogicalInterface) MarshalJSON() ([]byte, 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. @@ -1864,51 +1777,6 @@ func (s *NfsShare) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// OSImage: Operation System image. -type OSImage struct { - // ApplicableInstanceTypes: Instance types this image is applicable to. - // Available types - // (https://cloud.google.com/bare-metal/docs/bms-planning#server_configurations) - ApplicableInstanceTypes []string `json:"applicableInstanceTypes,omitempty"` - - // Code: OS Image code. - Code string `json:"code,omitempty"` - - // Description: OS Image description. - Description string `json:"description,omitempty"` - - // Name: Output only. OS Image's unique name. - Name string `json:"name,omitempty"` - - // SupportedNetworkTemplates: Network templates that can be used with - // this OS Image. - SupportedNetworkTemplates []*ServerNetworkTemplate `json:"supportedNetworkTemplates,omitempty"` - - // ForceSendFields is a list of field names (e.g. - // "ApplicableInstanceTypes") 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. "ApplicableInstanceTypes") - // 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 *OSImage) MarshalJSON() ([]byte, error) { - type NoMethod OSImage - raw := NoMethod(*s) - return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) -} - // Operation: This resource represents a long-running operation that is // the result of a network API call. type Operation struct { @@ -2357,47 +2225,6 @@ func (s *SSHKey) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// ServerNetworkTemplate: Network template. -type ServerNetworkTemplate struct { - // ApplicableInstanceTypes: Instance types this template is applicable - // to. - ApplicableInstanceTypes []string `json:"applicableInstanceTypes,omitempty"` - - // LogicalInterfaces: Logical interfaces. - LogicalInterfaces []*GoogleCloudBaremetalsolutionV2ServerNetworkTemplateLogicalInterface `json:"logicalInterfaces,omitempty"` - - // 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. - // "ApplicableInstanceTypes") 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. "ApplicableInstanceTypes") - // 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 *ServerNetworkTemplate) MarshalJSON() ([]byte, error) { - type NoMethod ServerNetworkTemplate - raw := NoMethod(*s) - return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) -} - // SnapshotReservationDetail: Details about snapshot space reservation // and usage on the storage volume. type SnapshotReservationDetail struct { @@ -3335,156 +3162,6 @@ func (c *ProjectsLocationsListCall) Pages(ctx context.Context, f func(*ListLocat } } -// method id "baremetalsolution.projects.locations.instanceProvisioningSettings.fetch": - -type ProjectsLocationsInstanceProvisioningSettingsFetchCall struct { - s *Service - location string - urlParams_ gensupport.URLParams - ifNoneMatch_ string - ctx_ context.Context - header_ http.Header -} - -// Fetch: Get instance provisioning settings for a given project. This -// is hidden method used by UI only. -// -// - location: The parent project and location containing the -// ProvisioningSettings. -func (r *ProjectsLocationsInstanceProvisioningSettingsService) Fetch(location string) *ProjectsLocationsInstanceProvisioningSettingsFetchCall { - c := &ProjectsLocationsInstanceProvisioningSettingsFetchCall{s: r.s, urlParams_: make(gensupport.URLParams)} - c.location = location - 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 *ProjectsLocationsInstanceProvisioningSettingsFetchCall) Fields(s ...googleapi.Field) *ProjectsLocationsInstanceProvisioningSettingsFetchCall { - 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 *ProjectsLocationsInstanceProvisioningSettingsFetchCall) IfNoneMatch(entityTag string) *ProjectsLocationsInstanceProvisioningSettingsFetchCall { - 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 *ProjectsLocationsInstanceProvisioningSettingsFetchCall) Context(ctx context.Context) *ProjectsLocationsInstanceProvisioningSettingsFetchCall { - 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 *ProjectsLocationsInstanceProvisioningSettingsFetchCall) Header() http.Header { - if c.header_ == nil { - c.header_ = make(http.Header) - } - return c.header_ -} - -func (c *ProjectsLocationsInstanceProvisioningSettingsFetchCall) doRequest(alt string) (*http.Response, error) { - reqHeaders := make(http.Header) - reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version) - for k, v := range c.header_ { - reqHeaders[k] = v - } - reqHeaders.Set("User-Agent", c.s.userAgent()) - if c.ifNoneMatch_ != "" { - reqHeaders.Set("If-None-Match", c.ifNoneMatch_) - } - var body io.Reader = nil - c.urlParams_.Set("alt", alt) - c.urlParams_.Set("prettyPrint", "false") - urls := googleapi.ResolveRelative(c.s.BasePath, "v2/{+location}/instanceProvisioningSettings:fetch") - 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{ - "location": c.location, - }) - return gensupport.SendRequest(c.ctx_, c.s.client, req) -} - -// Do executes the "baremetalsolution.projects.locations.instanceProvisioningSettings.fetch" call. -// Exactly one of *FetchInstanceProvisioningSettingsResponse or error -// will be non-nil. Any non-2xx status code is an error. Response -// headers are in either -// *FetchInstanceProvisioningSettingsResponse.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 *ProjectsLocationsInstanceProvisioningSettingsFetchCall) Do(opts ...googleapi.CallOption) (*FetchInstanceProvisioningSettingsResponse, error) { - gensupport.SetOptions(c.urlParams_, opts...) - res, err := c.doRequest("json") - if res != nil && res.StatusCode == http.StatusNotModified { - if res.Body != nil { - res.Body.Close() - } - return nil, gensupport.WrapError(&googleapi.Error{ - Code: res.StatusCode, - Header: res.Header, - }) - } - if err != nil { - return nil, err - } - defer googleapi.CloseBody(res) - if err := googleapi.CheckResponse(res); err != nil { - return nil, gensupport.WrapError(err) - } - ret := &FetchInstanceProvisioningSettingsResponse{ - 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": "Get instance provisioning settings for a given project. This is hidden method used by UI only.", - // "flatPath": "v2/projects/{projectsId}/locations/{locationsId}/instanceProvisioningSettings:fetch", - // "httpMethod": "GET", - // "id": "baremetalsolution.projects.locations.instanceProvisioningSettings.fetch", - // "parameterOrder": [ - // "location" - // ], - // "parameters": { - // "location": { - // "description": "Required. The parent project and location containing the ProvisioningSettings.", - // "location": "path", - // "pattern": "^projects/[^/]+/locations/[^/]+$", - // "required": true, - // "type": "string" - // } - // }, - // "path": "v2/{+location}/instanceProvisioningSettings:fetch", - // "response": { - // "$ref": "FetchInstanceProvisioningSettingsResponse" - // }, - // "scopes": [ - // "https://www.googleapis.com/auth/cloud-platform" - // ] - // } - -} - // method id "baremetalsolution.projects.locations.instances.detachLun": type ProjectsLocationsInstancesDetachLunCall struct { diff --git a/batch/v1/batch-api.json b/batch/v1/batch-api.json index c44a8c3eff3..b88fb8fde7b 100644 --- a/batch/v1/batch-api.json +++ b/batch/v1/batch-api.json @@ -556,7 +556,7 @@ } } }, - "revision": "20230618", + "revision": "20230621", "rootUrl": "https://batch.googleapis.com/", "schemas": { "Accelerator": { @@ -569,6 +569,7 @@ "type": "string" }, "installGpuDrivers": { + "deprecated": true, "description": "Deprecated: please use instances[0].install_gpu_drivers instead.", "type": "boolean" }, @@ -715,6 +716,7 @@ "id": "AgentMetadata", "properties": { "creationTime": { + "deprecated": true, "description": "When the VM agent started. Use agent_startup_time instead.", "format": "google-datetime", "type": "string" @@ -2102,6 +2104,7 @@ "additionalProperties": { "type": "string" }, + "deprecated": true, "description": "Deprecated: please use environment(non-plural) instead.", "type": "object" }, diff --git a/bigqueryreservation/v1/bigqueryreservation-api.json b/bigqueryreservation/v1/bigqueryreservation-api.json index 2029dc75015..fc7b8155e3d 100644 --- a/bigqueryreservation/v1/bigqueryreservation-api.json +++ b/bigqueryreservation/v1/bigqueryreservation-api.json @@ -824,7 +824,7 @@ } } }, - "revision": "20230610", + "revision": "20230701", "rootUrl": "https://bigqueryreservation.googleapis.com/", "schemas": { "Assignment": { @@ -988,6 +988,18 @@ "THREE_YEAR", "NONE" ], + "enumDeprecated": [ + false, + false, + true, + true, + false, + true, + false, + true, + false, + false + ], "enumDescriptions": [ "Invalid plan value. Requests with this value will be rejected with error code `google.rpc.Code.INVALID_ARGUMENT`.", "Flex commitments have committed period of 1 minute after becoming ACTIVE. After that, they are not in a committed period anymore and can be removed any time.", @@ -1016,6 +1028,18 @@ "THREE_YEAR", "NONE" ], + "enumDeprecated": [ + false, + false, + true, + true, + false, + true, + false, + true, + false, + false + ], "enumDescriptions": [ "Invalid plan value. Requests with this value will be rejected with error code `google.rpc.Code.INVALID_ARGUMENT`.", "Flex commitments have committed period of 1 minute after becoming ACTIVE. After that, they are not in a committed period anymore and can be removed any time.", diff --git a/bigtableadmin/v2/bigtableadmin-api.json b/bigtableadmin/v2/bigtableadmin-api.json index 3273680757b..e470c0d4f97 100644 --- a/bigtableadmin/v2/bigtableadmin-api.json +++ b/bigtableadmin/v2/bigtableadmin-api.json @@ -1877,6 +1877,108 @@ "https://www.googleapis.com/auth/cloud-platform" ] } + }, + "resources": { + "views": { + "methods": { + "getIamPolicy": { + "description": "Gets the access control policy for a Table resource. Returns an empty policy if the resource exists but does not have a policy set.", + "flatPath": "v2/projects/{projectsId}/instances/{instancesId}/tables/{tablesId}/views/{viewsId}:getIamPolicy", + "httpMethod": "POST", + "id": "bigtableadmin.projects.instances.tables.views.getIamPolicy", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.", + "location": "path", + "pattern": "^projects/[^/]+/instances/[^/]+/tables/[^/]+/views/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+resource}:getIamPolicy", + "request": { + "$ref": "GetIamPolicyRequest" + }, + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/bigtable.admin", + "https://www.googleapis.com/auth/bigtable.admin.table", + "https://www.googleapis.com/auth/cloud-bigtable.admin", + "https://www.googleapis.com/auth/cloud-bigtable.admin.table", + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "setIamPolicy": { + "description": "Sets the access control policy on a Table resource. Replaces any existing policy.", + "flatPath": "v2/projects/{projectsId}/instances/{instancesId}/tables/{tablesId}/views/{viewsId}:setIamPolicy", + "httpMethod": "POST", + "id": "bigtableadmin.projects.instances.tables.views.setIamPolicy", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy is being specified. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.", + "location": "path", + "pattern": "^projects/[^/]+/instances/[^/]+/tables/[^/]+/views/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+resource}:setIamPolicy", + "request": { + "$ref": "SetIamPolicyRequest" + }, + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/bigtable.admin", + "https://www.googleapis.com/auth/bigtable.admin.table", + "https://www.googleapis.com/auth/cloud-bigtable.admin", + "https://www.googleapis.com/auth/cloud-bigtable.admin.table", + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that the caller has on the specified table resource.", + "flatPath": "v2/projects/{projectsId}/instances/{instancesId}/tables/{tablesId}/views/{viewsId}:testIamPermissions", + "httpMethod": "POST", + "id": "bigtableadmin.projects.instances.tables.views.testIamPermissions", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy detail is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.", + "location": "path", + "pattern": "^projects/[^/]+/instances/[^/]+/tables/[^/]+/views/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+resource}:testIamPermissions", + "request": { + "$ref": "TestIamPermissionsRequest" + }, + "response": { + "$ref": "TestIamPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/bigtable.admin", + "https://www.googleapis.com/auth/bigtable.admin.table", + "https://www.googleapis.com/auth/cloud-bigtable.admin", + "https://www.googleapis.com/auth/cloud-bigtable.admin.table", + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } } } } @@ -1966,7 +2068,7 @@ } } }, - "revision": "20230529", + "revision": "20230622", "rootUrl": "https://bigtableadmin.googleapis.com/", "schemas": { "AppProfile": { @@ -2197,6 +2299,18 @@ }, "type": "object" }, + "ChangeStreamConfig": { + "description": "Change stream configuration.", + "id": "ChangeStreamConfig", + "properties": { + "retentionPeriod": { + "description": "How long the change stream should be retained. Change stream data older than the retention period will not be returned when reading the change stream from the table. Values must be at least 1 day and at most 7 days, and will be truncated to microsecond granularity.", + "format": "google-duration", + "type": "string" + } + }, + "type": "object" + }, "CheckConsistencyRequest": { "description": "Request message for google.bigtable.admin.v2.BigtableTableAdmin.CheckConsistency", "id": "CheckConsistencyRequest", @@ -3385,6 +3499,10 @@ "description": "A collection of user data indexed by row, column, and timestamp. Each table is served using the resources of its parent cluster.", "id": "Table", "properties": { + "changeStreamConfig": { + "$ref": "ChangeStreamConfig", + "description": "If specified, enable the change stream on this table. Otherwise, the change stream is disabled and the change stream is not retained." + }, "clusterStates": { "additionalProperties": { "$ref": "ClusterState" diff --git a/bigtableadmin/v2/bigtableadmin-gen.go b/bigtableadmin/v2/bigtableadmin-gen.go index a21b126031c..06c9bb2f3fe 100644 --- a/bigtableadmin/v2/bigtableadmin-gen.go +++ b/bigtableadmin/v2/bigtableadmin-gen.go @@ -288,11 +288,23 @@ type ProjectsInstancesClustersHotTabletsService struct { func NewProjectsInstancesTablesService(s *Service) *ProjectsInstancesTablesService { rs := &ProjectsInstancesTablesService{s: s} + rs.Views = NewProjectsInstancesTablesViewsService(s) return rs } type ProjectsInstancesTablesService struct { s *Service + + Views *ProjectsInstancesTablesViewsService +} + +func NewProjectsInstancesTablesViewsService(s *Service) *ProjectsInstancesTablesViewsService { + rs := &ProjectsInstancesTablesViewsService{s: s} + return rs +} + +type ProjectsInstancesTablesViewsService struct { + s *Service } func NewProjectsLocationsService(s *Service) *ProjectsLocationsService { @@ -738,6 +750,39 @@ func (s *Binding) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// ChangeStreamConfig: Change stream configuration. +type ChangeStreamConfig struct { + // RetentionPeriod: How long the change stream should be retained. + // Change stream data older than the retention period will not be + // returned when reading the change stream from the table. Values must + // be at least 1 day and at most 7 days, and will be truncated to + // microsecond granularity. + RetentionPeriod string `json:"retentionPeriod,omitempty"` + + // ForceSendFields is a list of field names (e.g. "RetentionPeriod") 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. "RetentionPeriod") 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 *ChangeStreamConfig) MarshalJSON() ([]byte, error) { + type NoMethod ChangeStreamConfig + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // CheckConsistencyRequest: Request message for // google.bigtable.admin.v2.BigtableTableAdmin.CheckConsistency type CheckConsistencyRequest struct { @@ -3103,6 +3148,11 @@ func (s *Status) MarshalJSON() ([]byte, error) { // timestamp. Each table is served using the resources of its parent // cluster. type Table struct { + // ChangeStreamConfig: If specified, enable the change stream on this + // table. Otherwise, the change stream is disabled and the change stream + // is not retained. + ChangeStreamConfig *ChangeStreamConfig `json:"changeStreamConfig,omitempty"` + // ClusterStates: Output only. Map from cluster ID to per-cluster table // state. If it could not be determined whether or not the table has // data in a particular cluster (for example, if its zone is @@ -3154,20 +3204,21 @@ type Table struct { // server. googleapi.ServerResponse `json:"-"` - // ForceSendFields is a list of field names (e.g. "ClusterStates") to - // unconditionally include in API requests. By default, fields with + // ForceSendFields is a list of field names (e.g. "ChangeStreamConfig") + // 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. "ClusterStates") 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. "ChangeStreamConfig") 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:"-"` } @@ -11430,6 +11481,457 @@ func (c *ProjectsInstancesTablesUndeleteCall) Do(opts ...googleapi.CallOption) ( } +// method id "bigtableadmin.projects.instances.tables.views.getIamPolicy": + +type ProjectsInstancesTablesViewsGetIamPolicyCall struct { + s *Service + resource string + getiampolicyrequest *GetIamPolicyRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// GetIamPolicy: Gets the access control policy for a Table resource. +// Returns an empty policy if the resource exists but does not have a +// policy set. +// +// - resource: REQUIRED: The resource for which the policy is being +// requested. See Resource names +// (https://cloud.google.com/apis/design/resource_names) for the +// appropriate value for this field. +func (r *ProjectsInstancesTablesViewsService) GetIamPolicy(resource string, getiampolicyrequest *GetIamPolicyRequest) *ProjectsInstancesTablesViewsGetIamPolicyCall { + c := &ProjectsInstancesTablesViewsGetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.resource = resource + c.getiampolicyrequest = getiampolicyrequest + 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 *ProjectsInstancesTablesViewsGetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsInstancesTablesViewsGetIamPolicyCall { + 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 *ProjectsInstancesTablesViewsGetIamPolicyCall) Context(ctx context.Context) *ProjectsInstancesTablesViewsGetIamPolicyCall { + 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 *ProjectsInstancesTablesViewsGetIamPolicyCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsInstancesTablesViewsGetIamPolicyCall) 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.getiampolicyrequest) + 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, "v2/{+resource}:getIamPolicy") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("POST", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "resource": c.resource, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "bigtableadmin.projects.instances.tables.views.getIamPolicy" call. +// Exactly one of *Policy or error will be non-nil. Any non-2xx status +// code is an error. Response headers are in either +// *Policy.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 *ProjectsInstancesTablesViewsGetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &Policy{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Gets the access control policy for a Table resource. Returns an empty policy if the resource exists but does not have a policy set.", + // "flatPath": "v2/projects/{projectsId}/instances/{instancesId}/tables/{tablesId}/views/{viewsId}:getIamPolicy", + // "httpMethod": "POST", + // "id": "bigtableadmin.projects.instances.tables.views.getIamPolicy", + // "parameterOrder": [ + // "resource" + // ], + // "parameters": { + // "resource": { + // "description": "REQUIRED: The resource for which the policy is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.", + // "location": "path", + // "pattern": "^projects/[^/]+/instances/[^/]+/tables/[^/]+/views/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2/{+resource}:getIamPolicy", + // "request": { + // "$ref": "GetIamPolicyRequest" + // }, + // "response": { + // "$ref": "Policy" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/bigtable.admin", + // "https://www.googleapis.com/auth/bigtable.admin.table", + // "https://www.googleapis.com/auth/cloud-bigtable.admin", + // "https://www.googleapis.com/auth/cloud-bigtable.admin.table", + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "bigtableadmin.projects.instances.tables.views.setIamPolicy": + +type ProjectsInstancesTablesViewsSetIamPolicyCall struct { + s *Service + resource string + setiampolicyrequest *SetIamPolicyRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// SetIamPolicy: Sets the access control policy on a Table resource. +// Replaces any existing policy. +// +// - resource: REQUIRED: The resource for which the policy is being +// specified. See Resource names +// (https://cloud.google.com/apis/design/resource_names) for the +// appropriate value for this field. +func (r *ProjectsInstancesTablesViewsService) SetIamPolicy(resource string, setiampolicyrequest *SetIamPolicyRequest) *ProjectsInstancesTablesViewsSetIamPolicyCall { + c := &ProjectsInstancesTablesViewsSetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.resource = resource + c.setiampolicyrequest = setiampolicyrequest + 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 *ProjectsInstancesTablesViewsSetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsInstancesTablesViewsSetIamPolicyCall { + 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 *ProjectsInstancesTablesViewsSetIamPolicyCall) Context(ctx context.Context) *ProjectsInstancesTablesViewsSetIamPolicyCall { + 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 *ProjectsInstancesTablesViewsSetIamPolicyCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsInstancesTablesViewsSetIamPolicyCall) 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.setiampolicyrequest) + 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, "v2/{+resource}:setIamPolicy") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("POST", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "resource": c.resource, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "bigtableadmin.projects.instances.tables.views.setIamPolicy" call. +// Exactly one of *Policy or error will be non-nil. Any non-2xx status +// code is an error. Response headers are in either +// *Policy.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 *ProjectsInstancesTablesViewsSetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &Policy{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Sets the access control policy on a Table resource. Replaces any existing policy.", + // "flatPath": "v2/projects/{projectsId}/instances/{instancesId}/tables/{tablesId}/views/{viewsId}:setIamPolicy", + // "httpMethod": "POST", + // "id": "bigtableadmin.projects.instances.tables.views.setIamPolicy", + // "parameterOrder": [ + // "resource" + // ], + // "parameters": { + // "resource": { + // "description": "REQUIRED: The resource for which the policy is being specified. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.", + // "location": "path", + // "pattern": "^projects/[^/]+/instances/[^/]+/tables/[^/]+/views/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2/{+resource}:setIamPolicy", + // "request": { + // "$ref": "SetIamPolicyRequest" + // }, + // "response": { + // "$ref": "Policy" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/bigtable.admin", + // "https://www.googleapis.com/auth/bigtable.admin.table", + // "https://www.googleapis.com/auth/cloud-bigtable.admin", + // "https://www.googleapis.com/auth/cloud-bigtable.admin.table", + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "bigtableadmin.projects.instances.tables.views.testIamPermissions": + +type ProjectsInstancesTablesViewsTestIamPermissionsCall struct { + s *Service + resource string + testiampermissionsrequest *TestIamPermissionsRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// TestIamPermissions: Returns permissions that the caller has on the +// specified table resource. +// +// - resource: REQUIRED: The resource for which the policy detail is +// being requested. See Resource names +// (https://cloud.google.com/apis/design/resource_names) for the +// appropriate value for this field. +func (r *ProjectsInstancesTablesViewsService) TestIamPermissions(resource string, testiampermissionsrequest *TestIamPermissionsRequest) *ProjectsInstancesTablesViewsTestIamPermissionsCall { + c := &ProjectsInstancesTablesViewsTestIamPermissionsCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.resource = resource + c.testiampermissionsrequest = testiampermissionsrequest + 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 *ProjectsInstancesTablesViewsTestIamPermissionsCall) Fields(s ...googleapi.Field) *ProjectsInstancesTablesViewsTestIamPermissionsCall { + 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 *ProjectsInstancesTablesViewsTestIamPermissionsCall) Context(ctx context.Context) *ProjectsInstancesTablesViewsTestIamPermissionsCall { + 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 *ProjectsInstancesTablesViewsTestIamPermissionsCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsInstancesTablesViewsTestIamPermissionsCall) 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.testiampermissionsrequest) + 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, "v2/{+resource}:testIamPermissions") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("POST", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "resource": c.resource, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "bigtableadmin.projects.instances.tables.views.testIamPermissions" call. +// Exactly one of *TestIamPermissionsResponse or error will be non-nil. +// Any non-2xx status code is an error. Response headers are in either +// *TestIamPermissionsResponse.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 *ProjectsInstancesTablesViewsTestIamPermissionsCall) Do(opts ...googleapi.CallOption) (*TestIamPermissionsResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &TestIamPermissionsResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Returns permissions that the caller has on the specified table resource.", + // "flatPath": "v2/projects/{projectsId}/instances/{instancesId}/tables/{tablesId}/views/{viewsId}:testIamPermissions", + // "httpMethod": "POST", + // "id": "bigtableadmin.projects.instances.tables.views.testIamPermissions", + // "parameterOrder": [ + // "resource" + // ], + // "parameters": { + // "resource": { + // "description": "REQUIRED: The resource for which the policy detail is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.", + // "location": "path", + // "pattern": "^projects/[^/]+/instances/[^/]+/tables/[^/]+/views/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2/{+resource}:testIamPermissions", + // "request": { + // "$ref": "TestIamPermissionsRequest" + // }, + // "response": { + // "$ref": "TestIamPermissionsResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/bigtable.admin", + // "https://www.googleapis.com/auth/bigtable.admin.table", + // "https://www.googleapis.com/auth/cloud-bigtable.admin", + // "https://www.googleapis.com/auth/cloud-bigtable.admin.table", + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + // method id "bigtableadmin.projects.locations.get": type ProjectsLocationsGetCall struct { diff --git a/billingbudgets/v1/billingbudgets-api.json b/billingbudgets/v1/billingbudgets-api.json index d4d42bea485..a5c060f1012 100644 --- a/billingbudgets/v1/billingbudgets-api.json +++ b/billingbudgets/v1/billingbudgets-api.json @@ -270,7 +270,7 @@ } } }, - "revision": "20230529", + "revision": "20230624", "rootUrl": "https://billingbudgets.googleapis.com/", "schemas": { "GoogleCloudBillingBudgetsV1Budget": { @@ -407,7 +407,7 @@ "type": "array" }, "resourceAncestors": { - "description": "Optional. A set of folder and organization names of the form `folders/{folderId}` or `organizations/{organizationId}`, specifying that usage from only this set of folders and organizations should be included in the budget. If omitted, the report includes all usage for all organizations, regardless of which organization the usage occurred on.", + "description": "Optional. A set of folder and organization names of the form `folders/{folderId}` or `organizations/{organizationId}`, specifying that usage from only this set of folders and organizations should be included in the budget. If omitted, the budget includes all usage that the billing account pays for. If the folder or organization contains projects that are paid for by a different Cloud Billing account, the budget *doesn't* apply to those projects.", "items": { "type": "string" }, diff --git a/billingbudgets/v1/billingbudgets-gen.go b/billingbudgets/v1/billingbudgets-gen.go index d4d87884adf..4ebb16d317c 100644 --- a/billingbudgets/v1/billingbudgets-gen.go +++ b/billingbudgets/v1/billingbudgets-gen.go @@ -376,9 +376,10 @@ type GoogleCloudBillingBudgetsV1Filter struct { // ResourceAncestors: Optional. A set of folder and organization names // of the form `folders/{folderId}` or `organizations/{organizationId}`, // specifying that usage from only this set of folders and organizations - // should be included in the budget. If omitted, the report includes all - // usage for all organizations, regardless of which organization the - // usage occurred on. + // should be included in the budget. If omitted, the budget includes all + // usage that the billing account pays for. If the folder or + // organization contains projects that are paid for by a different Cloud + // Billing account, the budget *doesn't* apply to those projects. ResourceAncestors []string `json:"resourceAncestors,omitempty"` // Services: Optional. A set of services of the form diff --git a/billingbudgets/v1beta1/billingbudgets-api.json b/billingbudgets/v1beta1/billingbudgets-api.json index cc884f9663c..e9dc077dd1b 100644 --- a/billingbudgets/v1beta1/billingbudgets-api.json +++ b/billingbudgets/v1beta1/billingbudgets-api.json @@ -264,7 +264,7 @@ } } }, - "revision": "20230529", + "revision": "20230624", "rootUrl": "https://billingbudgets.googleapis.com/", "schemas": { "GoogleCloudBillingBudgetsV1beta1AllUpdatesRule": { @@ -438,7 +438,7 @@ "type": "array" }, "resourceAncestors": { - "description": "Optional. A set of folder and organization names of the form `folders/{folderId}` or `organizations/{organizationId}`, specifying that usage from only this set of folders and organizations should be included in the budget. If omitted, the report includes all usage for all organizations, regardless of which organization the usage occurred on.", + "description": "Optional. A set of folder and organization names of the form `folders/{folderId}` or `organizations/{organizationId}`, specifying that usage from only this set of folders and organizations should be included in the budget. If omitted, the budget includes all usage that the billing account pays for. If the folder or organization contains projects that are paid for by a different Cloud Billing account, the budget *doesn't* apply to those projects.", "items": { "type": "string" }, diff --git a/billingbudgets/v1beta1/billingbudgets-gen.go b/billingbudgets/v1beta1/billingbudgets-gen.go index 1e651807350..cdfc53af3ca 100644 --- a/billingbudgets/v1beta1/billingbudgets-gen.go +++ b/billingbudgets/v1beta1/billingbudgets-gen.go @@ -472,9 +472,10 @@ type GoogleCloudBillingBudgetsV1beta1Filter struct { // ResourceAncestors: Optional. A set of folder and organization names // of the form `folders/{folderId}` or `organizations/{organizationId}`, // specifying that usage from only this set of folders and organizations - // should be included in the budget. If omitted, the report includes all - // usage for all organizations, regardless of which organization the - // usage occurred on. + // should be included in the budget. If omitted, the budget includes all + // usage that the billing account pays for. If the folder or + // organization contains projects that are paid for by a different Cloud + // Billing account, the budget *doesn't* apply to those projects. ResourceAncestors []string `json:"resourceAncestors,omitempty"` // Services: Optional. A set of services of the form diff --git a/blockchainnodeengine/v1/blockchainnodeengine-api.json b/blockchainnodeengine/v1/blockchainnodeengine-api.json new file mode 100644 index 00000000000..a7166892eb2 --- /dev/null +++ b/blockchainnodeengine/v1/blockchainnodeengine-api.json @@ -0,0 +1,949 @@ +{ + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "See, edit, configure, and delete your Google Cloud data and see the email address for your Google Account." + } + } + } + }, + "basePath": "", + "baseUrl": "https://blockchainnodeengine.googleapis.com/", + "batchPath": "batch", + "canonicalName": "Blockchain Node Engine", + "description": "", + "discoveryVersion": "v1", + "documentationLink": "https://cloud.google.com/blockchain-node-engine", + "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": "blockchainnodeengine:v1", + "kind": "discovery#restDescription", + "mtlsRootUrl": "https://blockchainnodeengine.mtls.googleapis.com/", + "name": "blockchainnodeengine", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" + }, + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" + }, + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "location": "query", + "type": "string" + }, + "key": { + "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { + "projects": { + "resources": { + "locations": { + "methods": { + "get": { + "description": "Gets information about a location.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}", + "httpMethod": "GET", + "id": "blockchainnodeengine.projects.locations.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Resource name for the location.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Location" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists information about the supported locations for this service.", + "flatPath": "v1/projects/{projectsId}/locations", + "httpMethod": "GET", + "id": "blockchainnodeengine.projects.locations.list", + "parameterOrder": [ + "name" + ], + "parameters": { + "filter": { + "description": "A filter to narrow down results to a preferred subset. The filtering language accepts strings like `\"displayName=tokyo\"`, and is documented in more detail in [AIP-160](https://google.aip.dev/160).", + "location": "query", + "type": "string" + }, + "name": { + "description": "The resource that owns the locations collection, if applicable.", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "The maximum number of results to return. If not set, the service selects a default.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "A page token received from the `next_page_token` field in the response. Send that page token to receive the subsequent page.", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}/locations", + "response": { + "$ref": "ListLocationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, + "resources": { + "blockchainNodes": { + "methods": { + "create": { + "description": "Creates a new blockchain node in a given project and location.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/blockchainNodes", + "httpMethod": "POST", + "id": "blockchainnodeengine.projects.locations.blockchainNodes.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "blockchainNodeId": { + "description": "Required. ID of the requesting object.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. Value for parent.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+parent}/blockchainNodes", + "request": { + "$ref": "BlockchainNode" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a single blockchain node.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/blockchainNodes/{blockchainNodesId}", + "httpMethod": "DELETE", + "id": "blockchainnodeengine.projects.locations.blockchainNodes.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The fully qualified name of the blockchain node to delete. e.g. `projects/my-project/locations/us-central1/blockchainNodes/my-node`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/blockchainNodes/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes after the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets details of a single blockchain node.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/blockchainNodes/{blockchainNodesId}", + "httpMethod": "GET", + "id": "blockchainnodeengine.projects.locations.blockchainNodes.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The fully qualified name of the blockchain node to fetch. e.g. `projects/my-project/locations/us-central1/blockchainNodes/my-node`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/blockchainNodes/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "BlockchainNode" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists blockchain nodes in a given project and location.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/blockchainNodes", + "httpMethod": "GET", + "id": "blockchainnodeengine.projects.locations.blockchainNodes.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "Filtering results.", + "location": "query", + "type": "string" + }, + "orderBy": { + "description": "Hint for how to order the results.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Requested page size. Server may return fewer items than requested. If unspecified, server will pick an appropriate default.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "A token identifying a page of results the server should return.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. Parent value for `ListNodesRequest`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/blockchainNodes", + "response": { + "$ref": "ListBlockchainNodesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Updates the parameters of a single blockchain node.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/blockchainNodes/{blockchainNodesId}", + "httpMethod": "PATCH", + "id": "blockchainnodeengine.projects.locations.blockchainNodes.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Output only. The fully qualified name of the blockchain node. e.g. `projects/my-project/locations/us-central1/blockchainNodes/my-node`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/blockchainNodes/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "updateMask": { + "description": "Required. Field mask is used to specify the fields to be overwritten in the Blockchain node resource by the update. The fields specified in the `update_mask` are relative to the resource, not the full request. A field will be overwritten if it is in the mask. If the user does not provide a mask then all fields will be overwritten.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}", + "request": { + "$ref": "BlockchainNode" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "operations": { + "methods": { + "cancel": { + "description": "Starts asynchronous cancellation on a long-running operation. The server makes a best effort to cancel the operation, but success is not guaranteed. If the server doesn't support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Clients can use Operations.GetOperation or other methods to check whether the cancellation succeeded or whether the operation completed despite cancellation. On successful cancellation, the operation is not deleted; instead, it becomes an operation with an Operation.error value with a google.rpc.Status.code of 1, corresponding to `Code.CANCELLED`.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}:cancel", + "httpMethod": "POST", + "id": "blockchainnodeengine.projects.locations.operations.cancel", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be cancelled.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:cancel", + "request": { + "$ref": "CancelOperationRequest" + }, + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a long-running operation. This method indicates that the client is no longer interested in the operation result. It does not cancel the operation. If the server doesn't support this method, it returns `google.rpc.Code.UNIMPLEMENTED`.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}", + "httpMethod": "DELETE", + "id": "blockchainnodeengine.projects.locations.operations.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be deleted.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}", + "httpMethod": "GET", + "id": "blockchainnodeengine.projects.locations.operations.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns `UNIMPLEMENTED`.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/operations", + "httpMethod": "GET", + "id": "blockchainnodeengine.projects.locations.operations.list", + "parameterOrder": [ + "name" + ], + "parameters": { + "filter": { + "description": "The standard list filter.", + "location": "query", + "type": "string" + }, + "name": { + "description": "The name of the operation's parent resource.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "The standard list page size.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The standard list page token.", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}/operations", + "response": { + "$ref": "ListOperationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } + } + } + } + }, + "revision": "20230621", + "rootUrl": "https://blockchainnodeengine.googleapis.com/", + "schemas": { + "BlockchainNode": { + "description": "A representation of a blockchain node.", + "id": "BlockchainNode", + "properties": { + "blockchainType": { + "description": "Immutable. The blockchain type of the node.", + "enum": [ + "BLOCKCHAIN_TYPE_UNSPECIFIED", + "ETHEREUM" + ], + "enumDescriptions": [ + "Blockchain type has not been specified, but should be.", + "The blockchain type is Ethereum." + ], + "type": "string" + }, + "connectionInfo": { + "$ref": "ConnectionInfo", + "description": "Output only. The connection information used to interact with a blockchain node.", + "readOnly": true + }, + "createTime": { + "description": "Output only. The timestamp at which the blockchain node was first created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "ethereumDetails": { + "$ref": "EthereumDetails", + "description": "Ethereum-specific blockchain node details." + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "User-provided key-value pairs.", + "type": "object" + }, + "name": { + "description": "Output only. The fully qualified name of the blockchain node. e.g. `projects/my-project/locations/us-central1/blockchainNodes/my-node`.", + "readOnly": true, + "type": "string" + }, + "state": { + "description": "Output only. A status representing the state of the node.", + "enum": [ + "STATE_UNSPECIFIED", + "CREATING", + "DELETING", + "RUNNING", + "ERROR", + "UPDATING", + "REPAIRING", + "RECONCILING" + ], + "enumDescriptions": [ + "The state has not been specified.", + "The node has been requested and is in the process of being created.", + "The existing node is undergoing deletion, but is not yet finished.", + "The node is running and ready for use.", + "The node is in an unexpected or errored state.", + "The node is currently being updated.", + "The node is currently being repaired.", + "The node is currently being reconciled." + ], + "readOnly": true, + "type": "string" + }, + "updateTime": { + "description": "Output only. The timestamp at which the blockchain node was last updated.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "CancelOperationRequest": { + "description": "The request message for Operations.CancelOperation.", + "id": "CancelOperationRequest", + "properties": {}, + "type": "object" + }, + "ConnectionInfo": { + "description": "The connection information through which to interact with a blockchain node.", + "id": "ConnectionInfo", + "properties": { + "endpointInfo": { + "$ref": "EndpointInfo", + "description": "Output only. The endpoint information through which to interact with a blockchain node.", + "readOnly": true + } + }, + "type": "object" + }, + "EndpointInfo": { + "description": "Contains endpoint information through which to interact with a blockchain node.", + "id": "EndpointInfo", + "properties": { + "jsonRpcApiEndpoint": { + "description": "Output only. The assigned URL for the node JSON-RPC API endpoint.", + "readOnly": true, + "type": "string" + }, + "websocketsApiEndpoint": { + "description": "Output only. The assigned URL for the node WebSockets API endpoint.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "EthereumDetails": { + "description": "Ethereum-specific blockchain node details.", + "id": "EthereumDetails", + "properties": { + "additionalEndpoints": { + "$ref": "EthereumEndpoints", + "description": "Output only. Ethereum-specific endpoint information.", + "readOnly": true + }, + "apiEnableAdmin": { + "description": "Immutable. Enables JSON-RPC access to functions in the `admin` namespace. Defaults to `false`.", + "type": "boolean" + }, + "apiEnableDebug": { + "description": "Immutable. Enables JSON-RPC access to functions in the `debug` namespace. Defaults to `false`.", + "type": "boolean" + }, + "consensusClient": { + "description": "Immutable. The consensus client.", + "enum": [ + "CONSENSUS_CLIENT_UNSPECIFIED", + "LIGHTHOUSE", + "ERIGON_EMBEDDED_CONSENSUS_LAYER" + ], + "enumDeprecated": [ + false, + false, + true + ], + "enumDescriptions": [ + "Consensus client has not been specified, but should be.", + "Consensus client implementation written in Rust, maintained by Sigma Prime. See [Lighthouse - Sigma Prime](https://lighthouse.sigmaprime.io/) for details.", + "Erigon's embedded consensus client embedded in the execution client. Note this option is not currently available when creating new blockchain nodes. See [Erigon on GitHub](https://github.com/ledgerwatch/erigon#embedded-consensus-layer) for details." + ], + "type": "string" + }, + "executionClient": { + "description": "Immutable. The execution client", + "enum": [ + "EXECUTION_CLIENT_UNSPECIFIED", + "GETH", + "ERIGON" + ], + "enumDescriptions": [ + "Execution client has not been specified, but should be.", + "Official Go implementation of the Ethereum protocol. See [go-ethereum](https://geth.ethereum.org/) for details.", + "An implementation of Ethereum (execution client), on the efficiency frontier, written in Go. See [Erigon on GitHub](https://github.com/ledgerwatch/erigon) for details." + ], + "type": "string" + }, + "gethDetails": { + "$ref": "GethDetails", + "description": "Details for the Geth execution client." + }, + "network": { + "description": "Immutable. The Ethereum environment being accessed.", + "enum": [ + "NETWORK_UNSPECIFIED", + "MAINNET", + "TESTNET_GOERLI_PRATER", + "TESTNET_SEPOLIA" + ], + "enumDescriptions": [ + "The network has not been specified, but should be.", + "The Ethereum Mainnet.", + "The Ethereum Testnet based on Goerli protocol.", + "The Ethereum Testnet based on Sepolia/Bepolia protocol." + ], + "type": "string" + }, + "nodeType": { + "description": "Immutable. The type of Ethereum node.", + "enum": [ + "NODE_TYPE_UNSPECIFIED", + "LIGHT", + "FULL", + "ARCHIVE" + ], + "enumDescriptions": [ + "Node type has not been specified, but should be.", + "An Ethereum node that only downloads Ethereum block headers.", + "Keeps a complete copy of the blockchain data, and contributes to the network by receiving, validating, and forwarding transactions.", + "Holds the same data as full node as well as all of the blockchain's history state data dating back to the Genesis Block." + ], + "type": "string" + } + }, + "type": "object" + }, + "EthereumEndpoints": { + "description": "Contains endpoint information specific to Ethereum nodes.", + "id": "EthereumEndpoints", + "properties": { + "beaconApiEndpoint": { + "description": "Output only. The assigned URL for the node's Beacon API endpoint.", + "readOnly": true, + "type": "string" + }, + "beaconPrometheusMetricsApiEndpoint": { + "description": "Output only. The assigned URL for the node's Beacon Prometheus metrics endpoint. See [Prometheus Metrics](https://lighthouse-book.sigmaprime.io/advanced_metrics.html) for more details.", + "readOnly": true, + "type": "string" + }, + "executionClientPrometheusMetricsApiEndpoint": { + "description": "Output only. The assigned URL for the node's execution client's Prometheus metrics endpoint.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "GethDetails": { + "description": "Options for the Geth execution client. See [Command-line Options](https://geth.ethereum.org/docs/fundamentals/command-line-options) for more details.", + "id": "GethDetails", + "properties": { + "garbageCollectionMode": { + "description": "Immutable. Blockchain garbage collection mode.", + "enum": [ + "GARBAGE_COLLECTION_MODE_UNSPECIFIED", + "FULL", + "ARCHIVE" + ], + "enumDescriptions": [ + "The garbage collection has not been specified.", + "Configures Geth's garbage collection so that older data not needed for a full node is deleted. This is the default mode when creating a full node.", + "Configures Geth's garbage collection so that old data is never deleted. This is the default mode when creating an archive node. This value can also be chosen when creating a full node in order to create a partial/recent archive node. See [Sync modes](https://geth.ethereum.org/docs/fundamentals/sync-modes) for more details." + ], + "type": "string" + } + }, + "type": "object" + }, + "GoogleProtobufEmpty": { + "description": "A generic empty message that you can re-use to avoid defining duplicated empty messages in your APIs. A typical example is to use it as the request or the response type of an API method. For instance: service Foo { rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty); }", + "id": "GoogleProtobufEmpty", + "properties": {}, + "type": "object" + }, + "ListBlockchainNodesResponse": { + "description": "Message for response to listing blockchain nodes.", + "id": "ListBlockchainNodesResponse", + "properties": { + "blockchainNodes": { + "description": "The list of nodes", + "items": { + "$ref": "BlockchainNode" + }, + "type": "array" + }, + "nextPageToken": { + "description": "A token identifying a page of results the server should return.", + "type": "string" + }, + "unreachable": { + "description": "Locations that could not be reached.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListLocationsResponse": { + "description": "The response message for Locations.ListLocations.", + "id": "ListLocationsResponse", + "properties": { + "locations": { + "description": "A list of locations that matches the specified filter in the request.", + "items": { + "$ref": "Location" + }, + "type": "array" + }, + "nextPageToken": { + "description": "The standard List next-page token.", + "type": "string" + } + }, + "type": "object" + }, + "ListOperationsResponse": { + "description": "The response message for Operations.ListOperations.", + "id": "ListOperationsResponse", + "properties": { + "nextPageToken": { + "description": "The standard List next-page token.", + "type": "string" + }, + "operations": { + "description": "A list of operations that matches the specified filter in the request.", + "items": { + "$ref": "Operation" + }, + "type": "array" + } + }, + "type": "object" + }, + "Location": { + "description": "A resource that represents a Google Cloud location.", + "id": "Location", + "properties": { + "displayName": { + "description": "The friendly name for this location, typically a nearby city name. For example, \"Tokyo\".", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Cross-service attributes for the location. For example {\"cloud.googleapis.com/region\": \"us-east1\"}", + "type": "object" + }, + "locationId": { + "description": "The canonical id for this location. For example: `\"us-east1\"`.", + "type": "string" + }, + "metadata": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "Service-specific metadata. For example the available capacity at the given location.", + "type": "object" + }, + "name": { + "description": "Resource name for the location, which may vary between implementations. For example: `\"projects/example-project/locations/us-east1\"`", + "type": "string" + } + }, + "type": "object" + }, + "Operation": { + "description": "This resource represents a long-running operation that is the result of a network API call.", + "id": "Operation", + "properties": { + "done": { + "description": "If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available.", + "type": "boolean" + }, + "error": { + "$ref": "Status", + "description": "The error result of the operation in case of failure or cancellation." + }, + "metadata": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.", + "type": "object" + }, + "name": { + "description": "The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id}`.", + "type": "string" + }, + "response": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "The normal response of the operation in case of success. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.", + "type": "object" + } + }, + "type": "object" + }, + "OperationMetadata": { + "description": "Represents the metadata of the long-running operation.", + "id": "OperationMetadata", + "properties": { + "apiVersion": { + "description": "Output only. API version used to start the operation.", + "readOnly": true, + "type": "string" + }, + "createTime": { + "description": "Output only. The time the operation was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "endTime": { + "description": "Output only. The time the operation finished running.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "requestedCancellation": { + "description": "Output only. Identifies whether the user has requested cancellation of the operation. Operations that have been cancelled successfully have `Operation.error` value with a `google.rpc.Status.code` of `1`, corresponding to `Code.CANCELLED`.", + "readOnly": true, + "type": "boolean" + }, + "statusMessage": { + "description": "Output only. Human-readable status of the operation, if any.", + "readOnly": true, + "type": "string" + }, + "target": { + "description": "Output only. Server-defined resource path for the target of the operation.", + "readOnly": true, + "type": "string" + }, + "verb": { + "description": "Output only. Name of the verb executed by the operation.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "Status": { + "description": "The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors).", + "id": "Status", + "properties": { + "code": { + "description": "The status code, which should be an enum value of google.rpc.Code.", + "format": "int32", + "type": "integer" + }, + "details": { + "description": "A list of messages that carry the error details. There is a common set of message types for APIs to use.", + "items": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.", + "type": "string" + } + }, + "type": "object" + } + }, + "servicePath": "", + "title": "Blockchain Node Engine API", + "version": "v1", + "version_module": true +} \ No newline at end of file diff --git a/blockchainnodeengine/v1/blockchainnodeengine-gen.go b/blockchainnodeengine/v1/blockchainnodeengine-gen.go new file mode 100644 index 00000000000..9839b93b442 --- /dev/null +++ b/blockchainnodeengine/v1/blockchainnodeengine-gen.go @@ -0,0 +1,2725 @@ +// Copyright 2023 Google LLC. +// Use of this source code is governed by a BSD-style +// license that can be found in the LICENSE file. + +// Code generated file. DO NOT EDIT. + +// Package blockchainnodeengine provides access to the Blockchain Node Engine API. +// +// For product documentation, see: https://cloud.google.com/blockchain-node-engine +// +// # Creating a client +// +// Usage example: +// +// import "google.golang.org/api/blockchainnodeengine/v1" +// ... +// ctx := context.Background() +// blockchainnodeengineService, err := blockchainnodeengine.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: +// +// blockchainnodeengineService, err := blockchainnodeengine.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, ...) +// blockchainnodeengineService, err := blockchainnodeengine.NewService(ctx, option.WithTokenSource(config.TokenSource(ctx, token))) +// +// See https://godoc.org/google.golang.org/api/option/ for details on options. +package blockchainnodeengine // import "google.golang.org/api/blockchainnodeengine/v1" + +import ( + "bytes" + "context" + "encoding/json" + "errors" + "fmt" + "io" + "net/http" + "net/url" + "strconv" + "strings" + + googleapi "google.golang.org/api/googleapi" + internal "google.golang.org/api/internal" + gensupport "google.golang.org/api/internal/gensupport" + option "google.golang.org/api/option" + internaloption "google.golang.org/api/option/internaloption" + htransport "google.golang.org/api/transport/http" +) + +// Always reference these packages, just in case the auto-generated code +// below doesn't. +var _ = bytes.NewBuffer +var _ = strconv.Itoa +var _ = fmt.Sprintf +var _ = json.NewDecoder +var _ = io.Copy +var _ = url.Parse +var _ = gensupport.MarshalJSON +var _ = googleapi.Version +var _ = errors.New +var _ = strings.Replace +var _ = context.Canceled +var _ = internaloption.WithDefaultEndpoint +var _ = internal.Version + +const apiId = "blockchainnodeengine:v1" +const apiName = "blockchainnodeengine" +const apiVersion = "v1" +const basePath = "https://blockchainnodeengine.googleapis.com/" +const mtlsBasePath = "https://blockchainnodeengine.mtls.googleapis.com/" + +// OAuth2 scopes used by this API. +const ( + // See, edit, configure, and delete your Google Cloud data and see the + // email address for your Google Account. + CloudPlatformScope = "https://www.googleapis.com/auth/cloud-platform" +) + +// NewService creates a new Service. +func NewService(ctx context.Context, opts ...option.ClientOption) (*Service, error) { + scopesOption := internaloption.WithDefaultScopes( + "https://www.googleapis.com/auth/cloud-platform", + ) + // NOTE: prepend, so we don't override user-specified scopes. + opts = append([]option.ClientOption{scopesOption}, opts...) + opts = append(opts, internaloption.WithDefaultEndpoint(basePath)) + opts = append(opts, internaloption.WithDefaultMTLSEndpoint(mtlsBasePath)) + client, endpoint, err := htransport.NewClient(ctx, opts...) + if err != nil { + return nil, err + } + s, err := New(client) + if err != nil { + return nil, err + } + if endpoint != "" { + s.BasePath = endpoint + } + return s, nil +} + +// New creates a new Service. It uses the provided http.Client for requests. +// +// Deprecated: please use NewService instead. +// To provide a custom HTTP client, use option.WithHTTPClient. +// If you are using google.golang.org/api/googleapis/transport.APIKey, use option.WithAPIKey with NewService instead. +func New(client *http.Client) (*Service, error) { + if client == nil { + return nil, errors.New("client is nil") + } + s := &Service{client: client, BasePath: basePath} + s.Projects = NewProjectsService(s) + return s, nil +} + +type Service struct { + client *http.Client + BasePath string // API endpoint base URL + UserAgent string // optional additional User-Agent fragment + + Projects *ProjectsService +} + +func (s *Service) userAgent() string { + if s.UserAgent == "" { + return googleapi.UserAgent + } + return googleapi.UserAgent + " " + s.UserAgent +} + +func NewProjectsService(s *Service) *ProjectsService { + rs := &ProjectsService{s: s} + rs.Locations = NewProjectsLocationsService(s) + return rs +} + +type ProjectsService struct { + s *Service + + Locations *ProjectsLocationsService +} + +func NewProjectsLocationsService(s *Service) *ProjectsLocationsService { + rs := &ProjectsLocationsService{s: s} + rs.BlockchainNodes = NewProjectsLocationsBlockchainNodesService(s) + rs.Operations = NewProjectsLocationsOperationsService(s) + return rs +} + +type ProjectsLocationsService struct { + s *Service + + BlockchainNodes *ProjectsLocationsBlockchainNodesService + + Operations *ProjectsLocationsOperationsService +} + +func NewProjectsLocationsBlockchainNodesService(s *Service) *ProjectsLocationsBlockchainNodesService { + rs := &ProjectsLocationsBlockchainNodesService{s: s} + return rs +} + +type ProjectsLocationsBlockchainNodesService struct { + s *Service +} + +func NewProjectsLocationsOperationsService(s *Service) *ProjectsLocationsOperationsService { + rs := &ProjectsLocationsOperationsService{s: s} + return rs +} + +type ProjectsLocationsOperationsService struct { + s *Service +} + +// BlockchainNode: A representation of a blockchain node. +type BlockchainNode struct { + // BlockchainType: Immutable. The blockchain type of the node. + // + // Possible values: + // "BLOCKCHAIN_TYPE_UNSPECIFIED" - Blockchain type has not been + // specified, but should be. + // "ETHEREUM" - The blockchain type is Ethereum. + BlockchainType string `json:"blockchainType,omitempty"` + + // ConnectionInfo: Output only. The connection information used to + // interact with a blockchain node. + ConnectionInfo *ConnectionInfo `json:"connectionInfo,omitempty"` + + // CreateTime: Output only. The timestamp at which the blockchain node + // was first created. + CreateTime string `json:"createTime,omitempty"` + + // EthereumDetails: Ethereum-specific blockchain node details. + EthereumDetails *EthereumDetails `json:"ethereumDetails,omitempty"` + + // Labels: User-provided key-value pairs. + Labels map[string]string `json:"labels,omitempty"` + + // Name: Output only. The fully qualified name of the blockchain node. + // e.g. + // `projects/my-project/locations/us-central1/blockchainNodes/my-node`. + Name string `json:"name,omitempty"` + + // State: Output only. A status representing the state of the node. + // + // Possible values: + // "STATE_UNSPECIFIED" - The state has not been specified. + // "CREATING" - The node has been requested and is in the process of + // being created. + // "DELETING" - The existing node is undergoing deletion, but is not + // yet finished. + // "RUNNING" - The node is running and ready for use. + // "ERROR" - The node is in an unexpected or errored state. + // "UPDATING" - The node is currently being updated. + // "REPAIRING" - The node is currently being repaired. + // "RECONCILING" - The node is currently being reconciled. + State string `json:"state,omitempty"` + + // UpdateTime: Output only. The timestamp at which the blockchain node + // was last updated. + UpdateTime string `json:"updateTime,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "BlockchainType") 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. "BlockchainType") 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 *BlockchainNode) MarshalJSON() ([]byte, error) { + type NoMethod BlockchainNode + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// CancelOperationRequest: The request message for +// Operations.CancelOperation. +type CancelOperationRequest struct { +} + +// ConnectionInfo: The connection information through which to interact +// with a blockchain node. +type ConnectionInfo struct { + // EndpointInfo: Output only. The endpoint information through which to + // interact with a blockchain node. + EndpointInfo *EndpointInfo `json:"endpointInfo,omitempty"` + + // ForceSendFields is a list of field names (e.g. "EndpointInfo") 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. "EndpointInfo") 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 *ConnectionInfo) MarshalJSON() ([]byte, error) { + type NoMethod ConnectionInfo + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// EndpointInfo: Contains endpoint information through which to interact +// with a blockchain node. +type EndpointInfo struct { + // JsonRpcApiEndpoint: Output only. The assigned URL for the node + // JSON-RPC API endpoint. + JsonRpcApiEndpoint string `json:"jsonRpcApiEndpoint,omitempty"` + + // WebsocketsApiEndpoint: Output only. The assigned URL for the node + // WebSockets API endpoint. + WebsocketsApiEndpoint string `json:"websocketsApiEndpoint,omitempty"` + + // ForceSendFields is a list of field names (e.g. "JsonRpcApiEndpoint") + // 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. "JsonRpcApiEndpoint") 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 *EndpointInfo) MarshalJSON() ([]byte, error) { + type NoMethod EndpointInfo + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// EthereumDetails: Ethereum-specific blockchain node details. +type EthereumDetails struct { + // AdditionalEndpoints: Output only. Ethereum-specific endpoint + // information. + AdditionalEndpoints *EthereumEndpoints `json:"additionalEndpoints,omitempty"` + + // ApiEnableAdmin: Immutable. Enables JSON-RPC access to functions in + // the `admin` namespace. Defaults to `false`. + ApiEnableAdmin bool `json:"apiEnableAdmin,omitempty"` + + // ApiEnableDebug: Immutable. Enables JSON-RPC access to functions in + // the `debug` namespace. Defaults to `false`. + ApiEnableDebug bool `json:"apiEnableDebug,omitempty"` + + // ConsensusClient: Immutable. The consensus client. + // + // Possible values: + // "CONSENSUS_CLIENT_UNSPECIFIED" - Consensus client has not been + // specified, but should be. + // "LIGHTHOUSE" - Consensus client implementation written in Rust, + // maintained by Sigma Prime. See [Lighthouse - Sigma + // Prime](https://lighthouse.sigmaprime.io/) for details. + // "ERIGON_EMBEDDED_CONSENSUS_LAYER" - Erigon's embedded consensus + // client embedded in the execution client. Note this option is not + // currently available when creating new blockchain nodes. See [Erigon + // on + // GitHub](https://github.com/ledgerwatch/erigon#embedded-consensus-layer + // ) for details. + ConsensusClient string `json:"consensusClient,omitempty"` + + // ExecutionClient: Immutable. The execution client + // + // Possible values: + // "EXECUTION_CLIENT_UNSPECIFIED" - Execution client has not been + // specified, but should be. + // "GETH" - Official Go implementation of the Ethereum protocol. See + // [go-ethereum](https://geth.ethereum.org/) for details. + // "ERIGON" - An implementation of Ethereum (execution client), on the + // efficiency frontier, written in Go. See [Erigon on + // GitHub](https://github.com/ledgerwatch/erigon) for details. + ExecutionClient string `json:"executionClient,omitempty"` + + // GethDetails: Details for the Geth execution client. + GethDetails *GethDetails `json:"gethDetails,omitempty"` + + // Network: Immutable. The Ethereum environment being accessed. + // + // Possible values: + // "NETWORK_UNSPECIFIED" - The network has not been specified, but + // should be. + // "MAINNET" - The Ethereum Mainnet. + // "TESTNET_GOERLI_PRATER" - The Ethereum Testnet based on Goerli + // protocol. + // "TESTNET_SEPOLIA" - The Ethereum Testnet based on Sepolia/Bepolia + // protocol. + Network string `json:"network,omitempty"` + + // NodeType: Immutable. The type of Ethereum node. + // + // Possible values: + // "NODE_TYPE_UNSPECIFIED" - Node type has not been specified, but + // should be. + // "LIGHT" - An Ethereum node that only downloads Ethereum block + // headers. + // "FULL" - Keeps a complete copy of the blockchain data, and + // contributes to the network by receiving, validating, and forwarding + // transactions. + // "ARCHIVE" - Holds the same data as full node as well as all of the + // blockchain's history state data dating back to the Genesis Block. + NodeType string `json:"nodeType,omitempty"` + + // ForceSendFields is a list of field names (e.g. "AdditionalEndpoints") + // 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. "AdditionalEndpoints") 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 *EthereumDetails) MarshalJSON() ([]byte, error) { + type NoMethod EthereumDetails + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// EthereumEndpoints: Contains endpoint information specific to Ethereum +// nodes. +type EthereumEndpoints struct { + // BeaconApiEndpoint: Output only. The assigned URL for the node's + // Beacon API endpoint. + BeaconApiEndpoint string `json:"beaconApiEndpoint,omitempty"` + + // BeaconPrometheusMetricsApiEndpoint: Output only. The assigned URL for + // the node's Beacon Prometheus metrics endpoint. See Prometheus Metrics + // (https://lighthouse-book.sigmaprime.io/advanced_metrics.html) for + // more details. + BeaconPrometheusMetricsApiEndpoint string `json:"beaconPrometheusMetricsApiEndpoint,omitempty"` + + // ExecutionClientPrometheusMetricsApiEndpoint: Output only. The + // assigned URL for the node's execution client's Prometheus metrics + // endpoint. + ExecutionClientPrometheusMetricsApiEndpoint string `json:"executionClientPrometheusMetricsApiEndpoint,omitempty"` + + // ForceSendFields is a list of field names (e.g. "BeaconApiEndpoint") + // 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. "BeaconApiEndpoint") 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 *EthereumEndpoints) MarshalJSON() ([]byte, error) { + type NoMethod EthereumEndpoints + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GethDetails: Options for the Geth execution client. See Command-line +// Options +// (https://geth.ethereum.org/docs/fundamentals/command-line-options) +// for more details. +type GethDetails struct { + // GarbageCollectionMode: Immutable. Blockchain garbage collection mode. + // + // Possible values: + // "GARBAGE_COLLECTION_MODE_UNSPECIFIED" - The garbage collection has + // not been specified. + // "FULL" - Configures Geth's garbage collection so that older data + // not needed for a full node is deleted. This is the default mode when + // creating a full node. + // "ARCHIVE" - Configures Geth's garbage collection so that old data + // is never deleted. This is the default mode when creating an archive + // node. This value can also be chosen when creating a full node in + // order to create a partial/recent archive node. See [Sync + // modes](https://geth.ethereum.org/docs/fundamentals/sync-modes) for + // more details. + GarbageCollectionMode string `json:"garbageCollectionMode,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "GarbageCollectionMode") 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. "GarbageCollectionMode") 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 *GethDetails) MarshalJSON() ([]byte, error) { + type NoMethod GethDetails + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleProtobufEmpty: A generic empty message that you can re-use to +// avoid defining duplicated empty messages in your APIs. A typical +// example is to use it as the request or the response type of an API +// method. For instance: service Foo { rpc Bar(google.protobuf.Empty) +// returns (google.protobuf.Empty); } +type GoogleProtobufEmpty struct { + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` +} + +// ListBlockchainNodesResponse: Message for response to listing +// blockchain nodes. +type ListBlockchainNodesResponse struct { + // BlockchainNodes: The list of nodes + BlockchainNodes []*BlockchainNode `json:"blockchainNodes,omitempty"` + + // NextPageToken: A token identifying a page of results the server + // should return. + NextPageToken string `json:"nextPageToken,omitempty"` + + // Unreachable: Locations that could not be reached. + Unreachable []string `json:"unreachable,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "BlockchainNodes") 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. "BlockchainNodes") 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 *ListBlockchainNodesResponse) MarshalJSON() ([]byte, error) { + type NoMethod ListBlockchainNodesResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// ListLocationsResponse: The response message for +// Locations.ListLocations. +type ListLocationsResponse struct { + // Locations: A list of locations that matches the specified filter in + // the request. + Locations []*Location `json:"locations,omitempty"` + + // NextPageToken: The standard List next-page token. + NextPageToken string `json:"nextPageToken,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "Locations") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Locations") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *ListLocationsResponse) MarshalJSON() ([]byte, error) { + type NoMethod ListLocationsResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// ListOperationsResponse: The response message for +// Operations.ListOperations. +type ListOperationsResponse struct { + // NextPageToken: The standard List next-page token. + NextPageToken string `json:"nextPageToken,omitempty"` + + // Operations: A list of operations that matches the specified filter in + // the request. + Operations []*Operation `json:"operations,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "NextPageToken") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "NextPageToken") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *ListOperationsResponse) MarshalJSON() ([]byte, error) { + type NoMethod ListOperationsResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Location: A resource that represents a Google Cloud location. +type Location struct { + // DisplayName: The friendly name for this location, typically a nearby + // city name. For example, "Tokyo". + DisplayName string `json:"displayName,omitempty"` + + // Labels: Cross-service attributes for the location. For example + // {"cloud.googleapis.com/region": "us-east1"} + Labels map[string]string `json:"labels,omitempty"` + + // LocationId: The canonical id for this location. For example: + // "us-east1". + LocationId string `json:"locationId,omitempty"` + + // Metadata: Service-specific metadata. For example the available + // capacity at the given location. + Metadata googleapi.RawMessage `json:"metadata,omitempty"` + + // Name: Resource name for the location, which may vary between + // implementations. For example: + // "projects/example-project/locations/us-east1" + Name string `json:"name,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "DisplayName") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "DisplayName") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Location) MarshalJSON() ([]byte, error) { + type NoMethod Location + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Operation: This resource represents a long-running operation that is +// the result of a network API call. +type Operation struct { + // Done: If the value is `false`, it means the operation is still in + // progress. If `true`, the operation is completed, and either `error` + // or `response` is available. + Done bool `json:"done,omitempty"` + + // Error: The error result of the operation in case of failure or + // cancellation. + Error *Status `json:"error,omitempty"` + + // Metadata: Service-specific metadata associated with the operation. It + // typically contains progress information and common metadata such as + // create time. Some services might not provide such metadata. Any + // method that returns a long-running operation should document the + // metadata type, if any. + Metadata googleapi.RawMessage `json:"metadata,omitempty"` + + // Name: The server-assigned name, which is only unique within the same + // service that originally returns it. If you use the default HTTP + // mapping, the `name` should be a resource name ending with + // `operations/{unique_id}`. + Name string `json:"name,omitempty"` + + // Response: The normal response of the operation in case of success. If + // the original method returns no data on success, such as `Delete`, the + // response is `google.protobuf.Empty`. If the original method is + // standard `Get`/`Create`/`Update`, the response should be the + // resource. For other methods, the response should have the type + // `XxxResponse`, where `Xxx` is the original method name. For example, + // if the original method name is `TakeSnapshot()`, the inferred + // response type is `TakeSnapshotResponse`. + Response googleapi.RawMessage `json:"response,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "Done") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Done") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Operation) MarshalJSON() ([]byte, error) { + type NoMethod Operation + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// OperationMetadata: Represents the metadata of the long-running +// operation. +type OperationMetadata struct { + // ApiVersion: Output only. API version used to start the operation. + ApiVersion string `json:"apiVersion,omitempty"` + + // CreateTime: Output only. The time the operation was created. + CreateTime string `json:"createTime,omitempty"` + + // EndTime: Output only. The time the operation finished running. + EndTime string `json:"endTime,omitempty"` + + // RequestedCancellation: Output only. Identifies whether the user has + // requested cancellation of the operation. Operations that have been + // cancelled successfully have `Operation.error` value with a + // `google.rpc.Status.code` of `1`, corresponding to `Code.CANCELLED`. + RequestedCancellation bool `json:"requestedCancellation,omitempty"` + + // StatusMessage: Output only. Human-readable status of the operation, + // if any. + StatusMessage string `json:"statusMessage,omitempty"` + + // Target: Output only. Server-defined resource path for the target of + // the operation. + Target string `json:"target,omitempty"` + + // Verb: Output only. Name of the verb executed by the operation. + Verb string `json:"verb,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ApiVersion") 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. "ApiVersion") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *OperationMetadata) MarshalJSON() ([]byte, error) { + type NoMethod OperationMetadata + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Status: The `Status` type defines a logical error model that is +// suitable for different programming environments, including REST APIs +// and RPC APIs. It is used by gRPC (https://github.com/grpc). Each +// `Status` message contains three pieces of data: error code, error +// message, and error details. You can find out more about this error +// model and how to work with it in the API Design Guide +// (https://cloud.google.com/apis/design/errors). +type Status struct { + // Code: The status code, which should be an enum value of + // google.rpc.Code. + Code int64 `json:"code,omitempty"` + + // Details: A list of messages that carry the error details. There is a + // common set of message types for APIs to use. + Details []googleapi.RawMessage `json:"details,omitempty"` + + // Message: A developer-facing error message, which should be in + // English. Any user-facing error message should be localized and sent + // in the google.rpc.Status.details field, or localized by the client. + Message string `json:"message,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Code") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Code") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Status) MarshalJSON() ([]byte, error) { + type NoMethod Status + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// method id "blockchainnodeengine.projects.locations.get": + +type ProjectsLocationsGetCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Gets information about a location. +// +// - name: Resource name for the location. +func (r *ProjectsLocationsService) Get(name string) *ProjectsLocationsGetCall { + c := &ProjectsLocationsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsLocationsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsGetCall { + 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 *ProjectsLocationsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsGetCall { + 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 *ProjectsLocationsGetCall) Context(ctx context.Context) *ProjectsLocationsGetCall { + 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 *ProjectsLocationsGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsGetCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("GET", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "blockchainnodeengine.projects.locations.get" call. +// Exactly one of *Location or error will be non-nil. Any non-2xx status +// code is an error. Response headers are in either +// *Location.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 *ProjectsLocationsGetCall) Do(opts ...googleapi.CallOption) (*Location, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &Location{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Gets information about a location.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}", + // "httpMethod": "GET", + // "id": "blockchainnodeengine.projects.locations.get", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Resource name for the location.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+name}", + // "response": { + // "$ref": "Location" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "blockchainnodeengine.projects.locations.list": + +type ProjectsLocationsListCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// List: Lists information about the supported locations for this +// service. +// +// - name: The resource that owns the locations collection, if +// applicable. +func (r *ProjectsLocationsService) List(name string) *ProjectsLocationsListCall { + c := &ProjectsLocationsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// Filter sets the optional parameter "filter": A filter to narrow down +// results to a preferred subset. The filtering language accepts strings +// like "displayName=tokyo", and is documented in more detail in +// AIP-160 (https://google.aip.dev/160). +func (c *ProjectsLocationsListCall) Filter(filter string) *ProjectsLocationsListCall { + c.urlParams_.Set("filter", filter) + return c +} + +// PageSize sets the optional parameter "pageSize": The maximum number +// of results to return. If not set, the service selects a default. +func (c *ProjectsLocationsListCall) PageSize(pageSize int64) *ProjectsLocationsListCall { + c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) + return c +} + +// PageToken sets the optional parameter "pageToken": A page token +// received from the `next_page_token` field in the response. Send that +// page token to receive the subsequent page. +func (c *ProjectsLocationsListCall) PageToken(pageToken string) *ProjectsLocationsListCall { + c.urlParams_.Set("pageToken", pageToken) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsLocationsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsListCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *ProjectsLocationsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsListCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsLocationsListCall) Context(ctx context.Context) *ProjectsLocationsListCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsLocationsListCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsListCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}/locations") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("GET", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "blockchainnodeengine.projects.locations.list" call. +// Exactly one of *ListLocationsResponse or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *ListLocationsResponse.ServerResponse.Header or (if a response was +// returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsLocationsListCall) Do(opts ...googleapi.CallOption) (*ListLocationsResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &ListLocationsResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Lists information about the supported locations for this service.", + // "flatPath": "v1/projects/{projectsId}/locations", + // "httpMethod": "GET", + // "id": "blockchainnodeengine.projects.locations.list", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "filter": { + // "description": "A filter to narrow down results to a preferred subset. The filtering language accepts strings like `\"displayName=tokyo\"`, and is documented in more detail in [AIP-160](https://google.aip.dev/160).", + // "location": "query", + // "type": "string" + // }, + // "name": { + // "description": "The resource that owns the locations collection, if applicable.", + // "location": "path", + // "pattern": "^projects/[^/]+$", + // "required": true, + // "type": "string" + // }, + // "pageSize": { + // "description": "The maximum number of results to return. If not set, the service selects a default.", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "pageToken": { + // "description": "A page token received from the `next_page_token` field in the response. Send that page token to receive the subsequent page.", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "v1/{+name}/locations", + // "response": { + // "$ref": "ListLocationsResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// Pages invokes f for each page of results. +// A non-nil error returned from f will halt the iteration. +// The provided context supersedes any context provided to the Context method. +func (c *ProjectsLocationsListCall) Pages(ctx context.Context, f func(*ListLocationsResponse) error) error { + c.ctx_ = ctx + defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point + for { + x, err := c.Do() + if err != nil { + return err + } + if err := f(x); err != nil { + return err + } + if x.NextPageToken == "" { + return nil + } + c.PageToken(x.NextPageToken) + } +} + +// method id "blockchainnodeengine.projects.locations.blockchainNodes.create": + +type ProjectsLocationsBlockchainNodesCreateCall struct { + s *Service + parent string + blockchainnode *BlockchainNode + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Create: Creates a new blockchain node in a given project and +// location. +// +// - parent: Value for parent. +func (r *ProjectsLocationsBlockchainNodesService) Create(parent string, blockchainnode *BlockchainNode) *ProjectsLocationsBlockchainNodesCreateCall { + c := &ProjectsLocationsBlockchainNodesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + c.blockchainnode = blockchainnode + return c +} + +// BlockchainNodeId sets the optional parameter "blockchainNodeId": +// Required. ID of the requesting object. +func (c *ProjectsLocationsBlockchainNodesCreateCall) BlockchainNodeId(blockchainNodeId string) *ProjectsLocationsBlockchainNodesCreateCall { + c.urlParams_.Set("blockchainNodeId", blockchainNodeId) + return c +} + +// RequestId sets the optional parameter "requestId": An optional +// request ID to identify requests. Specify a unique request ID so that +// if you must retry your request, the server will know to ignore the +// request if it has already been completed. The server will guarantee +// that for at least 60 minutes since the first request. For example, +// consider a situation where you make an initial request and the +// request times out. If you make the request again with the same +// request ID, the server can check if original operation with the same +// request ID was received, and if so, will ignore the second request. +// This prevents clients from accidentally creating duplicate +// commitments. The request ID must be a valid UUID with the exception +// that zero UUID is not supported +// (00000000-0000-0000-0000-000000000000). +func (c *ProjectsLocationsBlockchainNodesCreateCall) RequestId(requestId string) *ProjectsLocationsBlockchainNodesCreateCall { + c.urlParams_.Set("requestId", requestId) + 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 *ProjectsLocationsBlockchainNodesCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsBlockchainNodesCreateCall { + 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 *ProjectsLocationsBlockchainNodesCreateCall) Context(ctx context.Context) *ProjectsLocationsBlockchainNodesCreateCall { + 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 *ProjectsLocationsBlockchainNodesCreateCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsBlockchainNodesCreateCall) 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.blockchainnode) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+parent}/blockchainNodes") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("POST", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "parent": c.parent, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "blockchainnodeengine.projects.locations.blockchainNodes.create" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *ProjectsLocationsBlockchainNodesCreateCall) Do(opts ...googleapi.CallOption) (*Operation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &Operation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Creates a new blockchain node in a given project and location.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/blockchainNodes", + // "httpMethod": "POST", + // "id": "blockchainnodeengine.projects.locations.blockchainNodes.create", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "blockchainNodeId": { + // "description": "Required. ID of the requesting object.", + // "location": "query", + // "type": "string" + // }, + // "parent": { + // "description": "Required. Value for parent.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+$", + // "required": true, + // "type": "string" + // }, + // "requestId": { + // "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "v1/{+parent}/blockchainNodes", + // "request": { + // "$ref": "BlockchainNode" + // }, + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "blockchainnodeengine.projects.locations.blockchainNodes.delete": + +type ProjectsLocationsBlockchainNodesDeleteCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Delete: Deletes a single blockchain node. +// +// - name: The fully qualified name of the blockchain node to delete. +// e.g. +// `projects/my-project/locations/us-central1/blockchainNodes/my-node`. +func (r *ProjectsLocationsBlockchainNodesService) Delete(name string) *ProjectsLocationsBlockchainNodesDeleteCall { + c := &ProjectsLocationsBlockchainNodesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// RequestId sets the optional parameter "requestId": An optional +// request ID to identify requests. Specify a unique request ID so that +// if you must retry your request, the server will know to ignore the +// request if it has already been completed. The server will guarantee +// that for at least 60 minutes after the first request. For example, +// consider a situation where you make an initial request and the +// request times out. If you make the request again with the same +// request ID, the server can check if original operation with the same +// request ID was received, and if so, will ignore the second request. +// This prevents clients from accidentally creating duplicate +// commitments. The request ID must be a valid UUID with the exception +// that zero UUID is not supported +// (00000000-0000-0000-0000-000000000000). +func (c *ProjectsLocationsBlockchainNodesDeleteCall) RequestId(requestId string) *ProjectsLocationsBlockchainNodesDeleteCall { + c.urlParams_.Set("requestId", requestId) + 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 *ProjectsLocationsBlockchainNodesDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsBlockchainNodesDeleteCall { + 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 *ProjectsLocationsBlockchainNodesDeleteCall) Context(ctx context.Context) *ProjectsLocationsBlockchainNodesDeleteCall { + 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 *ProjectsLocationsBlockchainNodesDeleteCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsBlockchainNodesDeleteCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("DELETE", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "blockchainnodeengine.projects.locations.blockchainNodes.delete" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *ProjectsLocationsBlockchainNodesDeleteCall) Do(opts ...googleapi.CallOption) (*Operation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &Operation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Deletes a single blockchain node.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/blockchainNodes/{blockchainNodesId}", + // "httpMethod": "DELETE", + // "id": "blockchainnodeengine.projects.locations.blockchainNodes.delete", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Required. The fully qualified name of the blockchain node to delete. e.g. `projects/my-project/locations/us-central1/blockchainNodes/my-node`.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/blockchainNodes/[^/]+$", + // "required": true, + // "type": "string" + // }, + // "requestId": { + // "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes after the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "v1/{+name}", + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "blockchainnodeengine.projects.locations.blockchainNodes.get": + +type ProjectsLocationsBlockchainNodesGetCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Gets details of a single blockchain node. +// +// - name: The fully qualified name of the blockchain node to fetch. +// e.g. +// `projects/my-project/locations/us-central1/blockchainNodes/my-node`. +func (r *ProjectsLocationsBlockchainNodesService) Get(name string) *ProjectsLocationsBlockchainNodesGetCall { + c := &ProjectsLocationsBlockchainNodesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsLocationsBlockchainNodesGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsBlockchainNodesGetCall { + 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 *ProjectsLocationsBlockchainNodesGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsBlockchainNodesGetCall { + 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 *ProjectsLocationsBlockchainNodesGetCall) Context(ctx context.Context) *ProjectsLocationsBlockchainNodesGetCall { + 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 *ProjectsLocationsBlockchainNodesGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsBlockchainNodesGetCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("GET", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "blockchainnodeengine.projects.locations.blockchainNodes.get" call. +// Exactly one of *BlockchainNode or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *BlockchainNode.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 *ProjectsLocationsBlockchainNodesGetCall) Do(opts ...googleapi.CallOption) (*BlockchainNode, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &BlockchainNode{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Gets details of a single blockchain node.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/blockchainNodes/{blockchainNodesId}", + // "httpMethod": "GET", + // "id": "blockchainnodeengine.projects.locations.blockchainNodes.get", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Required. The fully qualified name of the blockchain node to fetch. e.g. `projects/my-project/locations/us-central1/blockchainNodes/my-node`.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/blockchainNodes/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+name}", + // "response": { + // "$ref": "BlockchainNode" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "blockchainnodeengine.projects.locations.blockchainNodes.list": + +type ProjectsLocationsBlockchainNodesListCall struct { + s *Service + parent string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// List: Lists blockchain nodes in a given project and location. +// +// - parent: Parent value for `ListNodesRequest`. +func (r *ProjectsLocationsBlockchainNodesService) List(parent string) *ProjectsLocationsBlockchainNodesListCall { + c := &ProjectsLocationsBlockchainNodesListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + return c +} + +// Filter sets the optional parameter "filter": Filtering results. +func (c *ProjectsLocationsBlockchainNodesListCall) Filter(filter string) *ProjectsLocationsBlockchainNodesListCall { + c.urlParams_.Set("filter", filter) + return c +} + +// OrderBy sets the optional parameter "orderBy": Hint for how to order +// the results. +func (c *ProjectsLocationsBlockchainNodesListCall) OrderBy(orderBy string) *ProjectsLocationsBlockchainNodesListCall { + c.urlParams_.Set("orderBy", orderBy) + return c +} + +// PageSize sets the optional parameter "pageSize": Requested page size. +// Server may return fewer items than requested. If unspecified, server +// will pick an appropriate default. +func (c *ProjectsLocationsBlockchainNodesListCall) PageSize(pageSize int64) *ProjectsLocationsBlockchainNodesListCall { + c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) + return c +} + +// PageToken sets the optional parameter "pageToken": A token +// identifying a page of results the server should return. +func (c *ProjectsLocationsBlockchainNodesListCall) PageToken(pageToken string) *ProjectsLocationsBlockchainNodesListCall { + 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 *ProjectsLocationsBlockchainNodesListCall) Fields(s ...googleapi.Field) *ProjectsLocationsBlockchainNodesListCall { + 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 *ProjectsLocationsBlockchainNodesListCall) IfNoneMatch(entityTag string) *ProjectsLocationsBlockchainNodesListCall { + 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 *ProjectsLocationsBlockchainNodesListCall) Context(ctx context.Context) *ProjectsLocationsBlockchainNodesListCall { + 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 *ProjectsLocationsBlockchainNodesListCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsBlockchainNodesListCall) 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}/blockchainNodes") + 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 "blockchainnodeengine.projects.locations.blockchainNodes.list" call. +// Exactly one of *ListBlockchainNodesResponse or error will be non-nil. +// Any non-2xx status code is an error. Response headers are in either +// *ListBlockchainNodesResponse.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 *ProjectsLocationsBlockchainNodesListCall) Do(opts ...googleapi.CallOption) (*ListBlockchainNodesResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &ListBlockchainNodesResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Lists blockchain nodes in a given project and location.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/blockchainNodes", + // "httpMethod": "GET", + // "id": "blockchainnodeengine.projects.locations.blockchainNodes.list", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "filter": { + // "description": "Filtering results.", + // "location": "query", + // "type": "string" + // }, + // "orderBy": { + // "description": "Hint for how to order the results.", + // "location": "query", + // "type": "string" + // }, + // "pageSize": { + // "description": "Requested page size. Server may return fewer items than requested. If unspecified, server will pick an appropriate default.", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "pageToken": { + // "description": "A token identifying a page of results the server should return.", + // "location": "query", + // "type": "string" + // }, + // "parent": { + // "description": "Required. Parent value for `ListNodesRequest`.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+parent}/blockchainNodes", + // "response": { + // "$ref": "ListBlockchainNodesResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// Pages invokes f for each page of results. +// A non-nil error returned from f will halt the iteration. +// The provided context supersedes any context provided to the Context method. +func (c *ProjectsLocationsBlockchainNodesListCall) Pages(ctx context.Context, f func(*ListBlockchainNodesResponse) error) error { + c.ctx_ = ctx + defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point + for { + x, err := c.Do() + if err != nil { + return err + } + if err := f(x); err != nil { + return err + } + if x.NextPageToken == "" { + return nil + } + c.PageToken(x.NextPageToken) + } +} + +// method id "blockchainnodeengine.projects.locations.blockchainNodes.patch": + +type ProjectsLocationsBlockchainNodesPatchCall struct { + s *Service + name string + blockchainnode *BlockchainNode + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Patch: Updates the parameters of a single blockchain node. +// +// - name: Output only. The fully qualified name of the blockchain node. +// e.g. +// `projects/my-project/locations/us-central1/blockchainNodes/my-node`. +func (r *ProjectsLocationsBlockchainNodesService) Patch(name string, blockchainnode *BlockchainNode) *ProjectsLocationsBlockchainNodesPatchCall { + c := &ProjectsLocationsBlockchainNodesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + c.blockchainnode = blockchainnode + return c +} + +// RequestId sets the optional parameter "requestId": An optional +// request ID to identify requests. Specify a unique request ID so that +// if you must retry your request, the server will know to ignore the +// request if it has already been completed. The server will guarantee +// that for at least 60 minutes since the first request. For example, +// consider a situation where you make an initial request and the +// request times out. If you make the request again with the same +// request ID, the server can check if original operation with the same +// request ID was received, and if so, will ignore the second request. +// This prevents clients from accidentally creating duplicate +// commitments. The request ID must be a valid UUID with the exception +// that zero UUID is not supported +// (00000000-0000-0000-0000-000000000000). +func (c *ProjectsLocationsBlockchainNodesPatchCall) RequestId(requestId string) *ProjectsLocationsBlockchainNodesPatchCall { + c.urlParams_.Set("requestId", requestId) + return c +} + +// UpdateMask sets the optional parameter "updateMask": Required. Field +// mask is used to specify the fields to be overwritten in the +// Blockchain node resource by the update. The fields specified in the +// `update_mask` are relative to the resource, not the full request. A +// field will be overwritten if it is in the mask. If the user does not +// provide a mask then all fields will be overwritten. +func (c *ProjectsLocationsBlockchainNodesPatchCall) UpdateMask(updateMask string) *ProjectsLocationsBlockchainNodesPatchCall { + c.urlParams_.Set("updateMask", updateMask) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsLocationsBlockchainNodesPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsBlockchainNodesPatchCall { + 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 *ProjectsLocationsBlockchainNodesPatchCall) Context(ctx context.Context) *ProjectsLocationsBlockchainNodesPatchCall { + 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 *ProjectsLocationsBlockchainNodesPatchCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsBlockchainNodesPatchCall) 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.blockchainnode) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("PATCH", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "blockchainnodeengine.projects.locations.blockchainNodes.patch" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *ProjectsLocationsBlockchainNodesPatchCall) Do(opts ...googleapi.CallOption) (*Operation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &Operation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Updates the parameters of a single blockchain node.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/blockchainNodes/{blockchainNodesId}", + // "httpMethod": "PATCH", + // "id": "blockchainnodeengine.projects.locations.blockchainNodes.patch", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Output only. The fully qualified name of the blockchain node. e.g. `projects/my-project/locations/us-central1/blockchainNodes/my-node`.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/blockchainNodes/[^/]+$", + // "required": true, + // "type": "string" + // }, + // "requestId": { + // "description": "Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + // "location": "query", + // "type": "string" + // }, + // "updateMask": { + // "description": "Required. Field mask is used to specify the fields to be overwritten in the Blockchain node resource by the update. The fields specified in the `update_mask` are relative to the resource, not the full request. A field will be overwritten if it is in the mask. If the user does not provide a mask then all fields will be overwritten.", + // "format": "google-fieldmask", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "v1/{+name}", + // "request": { + // "$ref": "BlockchainNode" + // }, + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "blockchainnodeengine.projects.locations.operations.cancel": + +type ProjectsLocationsOperationsCancelCall struct { + s *Service + name string + canceloperationrequest *CancelOperationRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Cancel: Starts asynchronous cancellation on a long-running operation. +// The server makes a best effort to cancel the operation, but success +// is not guaranteed. If the server doesn't support this method, it +// returns `google.rpc.Code.UNIMPLEMENTED`. Clients can use +// Operations.GetOperation or other methods to check whether the +// cancellation succeeded or whether the operation completed despite +// cancellation. On successful cancellation, the operation is not +// deleted; instead, it becomes an operation with an Operation.error +// value with a google.rpc.Status.code of 1, corresponding to +// `Code.CANCELLED`. +// +// - name: The name of the operation resource to be cancelled. +func (r *ProjectsLocationsOperationsService) Cancel(name string, canceloperationrequest *CancelOperationRequest) *ProjectsLocationsOperationsCancelCall { + c := &ProjectsLocationsOperationsCancelCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + c.canceloperationrequest = canceloperationrequest + 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 *ProjectsLocationsOperationsCancelCall) Fields(s ...googleapi.Field) *ProjectsLocationsOperationsCancelCall { + 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 *ProjectsLocationsOperationsCancelCall) Context(ctx context.Context) *ProjectsLocationsOperationsCancelCall { + 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 *ProjectsLocationsOperationsCancelCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsOperationsCancelCall) 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.canceloperationrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}:cancel") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("POST", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "blockchainnodeengine.projects.locations.operations.cancel" call. +// Exactly one of *GoogleProtobufEmpty or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *GoogleProtobufEmpty.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 *ProjectsLocationsOperationsCancelCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &GoogleProtobufEmpty{ + 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": "Starts asynchronous cancellation on a long-running operation. The server makes a best effort to cancel the operation, but success is not guaranteed. If the server doesn't support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Clients can use Operations.GetOperation or other methods to check whether the cancellation succeeded or whether the operation completed despite cancellation. On successful cancellation, the operation is not deleted; instead, it becomes an operation with an Operation.error value with a google.rpc.Status.code of 1, corresponding to `Code.CANCELLED`.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}:cancel", + // "httpMethod": "POST", + // "id": "blockchainnodeengine.projects.locations.operations.cancel", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "The name of the operation resource to be cancelled.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+name}:cancel", + // "request": { + // "$ref": "CancelOperationRequest" + // }, + // "response": { + // "$ref": "GoogleProtobufEmpty" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "blockchainnodeengine.projects.locations.operations.delete": + +type ProjectsLocationsOperationsDeleteCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Delete: Deletes a long-running operation. This method indicates that +// the client is no longer interested in the operation result. It does +// not cancel the operation. If the server doesn't support this method, +// it returns `google.rpc.Code.UNIMPLEMENTED`. +// +// - name: The name of the operation resource to be deleted. +func (r *ProjectsLocationsOperationsService) Delete(name string) *ProjectsLocationsOperationsDeleteCall { + c := &ProjectsLocationsOperationsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsLocationsOperationsDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsOperationsDeleteCall { + 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 *ProjectsLocationsOperationsDeleteCall) Context(ctx context.Context) *ProjectsLocationsOperationsDeleteCall { + 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 *ProjectsLocationsOperationsDeleteCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsOperationsDeleteCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("DELETE", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "blockchainnodeengine.projects.locations.operations.delete" call. +// Exactly one of *GoogleProtobufEmpty or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *GoogleProtobufEmpty.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 *ProjectsLocationsOperationsDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &GoogleProtobufEmpty{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Deletes a long-running operation. This method indicates that the client is no longer interested in the operation result. It does not cancel the operation. If the server doesn't support this method, it returns `google.rpc.Code.UNIMPLEMENTED`.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}", + // "httpMethod": "DELETE", + // "id": "blockchainnodeengine.projects.locations.operations.delete", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "The name of the operation resource to be deleted.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+name}", + // "response": { + // "$ref": "GoogleProtobufEmpty" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "blockchainnodeengine.projects.locations.operations.get": + +type ProjectsLocationsOperationsGetCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Gets the latest state of a long-running operation. Clients can +// use this method to poll the operation result at intervals as +// recommended by the API service. +// +// - name: The name of the operation resource. +func (r *ProjectsLocationsOperationsService) Get(name string) *ProjectsLocationsOperationsGetCall { + c := &ProjectsLocationsOperationsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsLocationsOperationsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsOperationsGetCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *ProjectsLocationsOperationsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsOperationsGetCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsLocationsOperationsGetCall) Context(ctx context.Context) *ProjectsLocationsOperationsGetCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsLocationsOperationsGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsOperationsGetCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("GET", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "blockchainnodeengine.projects.locations.operations.get" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *ProjectsLocationsOperationsGetCall) Do(opts ...googleapi.CallOption) (*Operation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &Operation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}", + // "httpMethod": "GET", + // "id": "blockchainnodeengine.projects.locations.operations.get", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "The name of the operation resource.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+name}", + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "blockchainnodeengine.projects.locations.operations.list": + +type ProjectsLocationsOperationsListCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// List: Lists operations that match the specified filter in the +// request. If the server doesn't support this method, it returns +// `UNIMPLEMENTED`. +// +// - name: The name of the operation's parent resource. +func (r *ProjectsLocationsOperationsService) List(name string) *ProjectsLocationsOperationsListCall { + c := &ProjectsLocationsOperationsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// Filter sets the optional parameter "filter": The standard list +// filter. +func (c *ProjectsLocationsOperationsListCall) Filter(filter string) *ProjectsLocationsOperationsListCall { + c.urlParams_.Set("filter", filter) + return c +} + +// PageSize sets the optional parameter "pageSize": The standard list +// page size. +func (c *ProjectsLocationsOperationsListCall) PageSize(pageSize int64) *ProjectsLocationsOperationsListCall { + c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) + return c +} + +// PageToken sets the optional parameter "pageToken": The standard list +// page token. +func (c *ProjectsLocationsOperationsListCall) PageToken(pageToken string) *ProjectsLocationsOperationsListCall { + c.urlParams_.Set("pageToken", pageToken) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsLocationsOperationsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsOperationsListCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// IfNoneMatch sets the optional parameter which makes the operation +// fail if the object's ETag matches the given value. This is useful for +// getting updates only after the object has changed since the last +// request. Use googleapi.IsNotModified to check whether the response +// error from Do is the result of In-None-Match. +func (c *ProjectsLocationsOperationsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsOperationsListCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do method. Any +// pending HTTP request will be aborted if the provided context is +// canceled. +func (c *ProjectsLocationsOperationsListCall) Context(ctx context.Context) *ProjectsLocationsOperationsListCall { + c.ctx_ = ctx + return c +} + +// Header returns an http.Header that can be modified by the caller to +// add HTTP headers to the request. +func (c *ProjectsLocationsOperationsListCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsOperationsListCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}/operations") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("GET", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "blockchainnodeengine.projects.locations.operations.list" call. +// Exactly one of *ListOperationsResponse or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *ListOperationsResponse.ServerResponse.Header or (if a response was +// returned at all) in error.(*googleapi.Error).Header. Use +// googleapi.IsNotModified to check whether the returned error was +// because http.StatusNotModified was returned. +func (c *ProjectsLocationsOperationsListCall) Do(opts ...googleapi.CallOption) (*ListOperationsResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &ListOperationsResponse{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns `UNIMPLEMENTED`.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/operations", + // "httpMethod": "GET", + // "id": "blockchainnodeengine.projects.locations.operations.list", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "filter": { + // "description": "The standard list filter.", + // "location": "query", + // "type": "string" + // }, + // "name": { + // "description": "The name of the operation's parent resource.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+$", + // "required": true, + // "type": "string" + // }, + // "pageSize": { + // "description": "The standard list page size.", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "pageToken": { + // "description": "The standard list page token.", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "v1/{+name}/operations", + // "response": { + // "$ref": "ListOperationsResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// Pages invokes f for each page of results. +// A non-nil error returned from f will halt the iteration. +// The provided context supersedes any context provided to the Context method. +func (c *ProjectsLocationsOperationsListCall) Pages(ctx context.Context, f func(*ListOperationsResponse) error) error { + c.ctx_ = ctx + defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point + for { + x, err := c.Do() + if err != nil { + return err + } + if err := f(x); err != nil { + return err + } + if x.NextPageToken == "" { + return nil + } + c.PageToken(x.NextPageToken) + } +} diff --git a/calendar/v3/calendar-api.json b/calendar/v3/calendar-api.json index d24359db8c1..0c084378a4b 100644 --- a/calendar/v3/calendar-api.json +++ b/calendar/v3/calendar-api.json @@ -1735,7 +1735,7 @@ } } }, - "revision": "20230616", + "revision": "20230623", "rootUrl": "https://www.googleapis.com/", "schemas": { "Acl": { @@ -2626,7 +2626,7 @@ }, "workingLocationProperties": { "$ref": "EventWorkingLocationProperties", - "description": "Working Location event data. Read-only. Developer Preview." + "description": "Working Location event data. Developer Preview." } }, "type": "object" diff --git a/calendar/v3/calendar-gen.go b/calendar/v3/calendar-gen.go index 2fcb4e0f5d6..65d413c097a 100644 --- a/calendar/v3/calendar-gen.go +++ b/calendar/v3/calendar-gen.go @@ -1548,8 +1548,8 @@ type Event struct { // compatibility reasons. Visibility string `json:"visibility,omitempty"` - // WorkingLocationProperties: Working Location event data. Read-only. - // Developer Preview. + // WorkingLocationProperties: Working Location event data. Developer + // Preview. WorkingLocationProperties *EventWorkingLocationProperties `json:"workingLocationProperties,omitempty"` // ServerResponse contains the HTTP response code and headers from the diff --git a/cloudasset/v1/cloudasset-api.json b/cloudasset/v1/cloudasset-api.json index 0177952a1c2..391079baf30 100644 --- a/cloudasset/v1/cloudasset-api.json +++ b/cloudasset/v1/cloudasset-api.json @@ -955,7 +955,7 @@ ] }, "queryAssets": { - "description": "Issue a job that queries assets using a SQL statement compatible with [BigQuery Standard SQL](http://cloud/bigquery/docs/reference/standard-sql/enabling-standard-sql). If the query execution finishes within timeout and there's no pagination, the full query results will be returned in the `QueryAssetsResponse`. Otherwise, full query results can be obtained by issuing extra requests with the `job_reference` from the a previous `QueryAssets` call. Note, the query result has approximately 10 GB limitation enforced by BigQuery https://cloud.google.com/bigquery/docs/best-practices-performance-output, queries return larger results will result in errors.", + "description": "Issue a job that queries assets using a SQL statement compatible with [BigQuery SQL](https://cloud.google.com/bigquery/docs/introduction-sql). If the query execution finishes within timeout and there's no pagination, the full query results will be returned in the `QueryAssetsResponse`. Otherwise, full query results can be obtained by issuing extra requests with the `job_reference` from the a previous `QueryAssets` call. Note, the query result has approximately 10 GB limitation enforced by [BigQuery](https://cloud.google.com/bigquery/docs/best-practices-performance-output). Queries return larger results will result in errors.", "flatPath": "v1/{v1Id}/{v1Id1}:queryAssets", "httpMethod": "POST", "id": "cloudasset.queryAssets", @@ -1095,7 +1095,7 @@ } } }, - "revision": "20230609", + "revision": "20230630", "rootUrl": "https://cloudasset.googleapis.com/", "schemas": { "AccessSelector": { @@ -3714,7 +3714,7 @@ "description": "Optional. [start_time] is required. [start_time] must be less than [end_time] Defaults [end_time] to now if [start_time] is set and [end_time] isn't. Maximum permitted time range is 7 days." }, "statement": { - "description": "Optional. A SQL statement that's compatible with [BigQuery Standard SQL](http://cloud/bigquery/docs/reference/standard-sql/enabling-standard-sql).", + "description": "Optional. A SQL statement that's compatible with [BigQuery SQL](https://cloud.google.com/bigquery/docs/introduction-sql).", "type": "string" }, "timeout": { diff --git a/cloudasset/v1/cloudasset-gen.go b/cloudasset/v1/cloudasset-gen.go index 56da9ad6c61..07677c6ffaf 100644 --- a/cloudasset/v1/cloudasset-gen.go +++ b/cloudasset/v1/cloudasset-gen.go @@ -5396,8 +5396,7 @@ type QueryAssetsRequest struct { ReadTimeWindow *TimeWindow `json:"readTimeWindow,omitempty"` // Statement: Optional. A SQL statement that's compatible with BigQuery - // Standard SQL - // (http://cloud/bigquery/docs/reference/standard-sql/enabling-standard-sql). + // SQL (https://cloud.google.com/bigquery/docs/introduction-sql). Statement string `json:"statement,omitempty"` // Timeout: Optional. Specifies the maximum amount of time that the @@ -10948,16 +10947,16 @@ type V1QueryAssetsCall struct { } // QueryAssets: Issue a job that queries assets using a SQL statement -// compatible with BigQuery Standard SQL -// (http://cloud/bigquery/docs/reference/standard-sql/enabling-standard-sql). -// If the query execution finishes within timeout and there's no -// pagination, the full query results will be returned in the -// `QueryAssetsResponse`. Otherwise, full query results can be obtained -// by issuing extra requests with the `job_reference` from the a -// previous `QueryAssets` call. Note, the query result has approximately -// 10 GB limitation enforced by BigQuery -// https://cloud.google.com/bigquery/docs/best-practices-performance-output, -// queries return larger results will result in errors. +// compatible with BigQuery SQL +// (https://cloud.google.com/bigquery/docs/introduction-sql). If the +// query execution finishes within timeout and there's no pagination, +// the full query results will be returned in the `QueryAssetsResponse`. +// Otherwise, full query results can be obtained by issuing extra +// requests with the `job_reference` from the a previous `QueryAssets` +// call. Note, the query result has approximately 10 GB limitation +// enforced by BigQuery +// (https://cloud.google.com/bigquery/docs/best-practices-performance-output). +// Queries return larger results will result in errors. // // - parent: The relative name of the root asset. This can only be an // organization number (such as "organizations/123"), a project ID @@ -11062,7 +11061,7 @@ func (c *V1QueryAssetsCall) Do(opts ...googleapi.CallOption) (*QueryAssetsRespon } return ret, nil // { - // "description": "Issue a job that queries assets using a SQL statement compatible with [BigQuery Standard SQL](http://cloud/bigquery/docs/reference/standard-sql/enabling-standard-sql). If the query execution finishes within timeout and there's no pagination, the full query results will be returned in the `QueryAssetsResponse`. Otherwise, full query results can be obtained by issuing extra requests with the `job_reference` from the a previous `QueryAssets` call. Note, the query result has approximately 10 GB limitation enforced by BigQuery https://cloud.google.com/bigquery/docs/best-practices-performance-output, queries return larger results will result in errors.", + // "description": "Issue a job that queries assets using a SQL statement compatible with [BigQuery SQL](https://cloud.google.com/bigquery/docs/introduction-sql). If the query execution finishes within timeout and there's no pagination, the full query results will be returned in the `QueryAssetsResponse`. Otherwise, full query results can be obtained by issuing extra requests with the `job_reference` from the a previous `QueryAssets` call. Note, the query result has approximately 10 GB limitation enforced by [BigQuery](https://cloud.google.com/bigquery/docs/best-practices-performance-output). Queries return larger results will result in errors.", // "flatPath": "v1/{v1Id}/{v1Id1}:queryAssets", // "httpMethod": "POST", // "id": "cloudasset.queryAssets", diff --git a/cloudbilling/v1/cloudbilling-api.json b/cloudbilling/v1/cloudbilling-api.json index 649616efdf2..173c1488d66 100644 --- a/cloudbilling/v1/cloudbilling-api.json +++ b/cloudbilling/v1/cloudbilling-api.json @@ -521,7 +521,7 @@ } } }, - "revision": "20230616", + "revision": "20230629", "rootUrl": "https://cloudbilling.googleapis.com/", "schemas": { "AggregationInfo": { @@ -935,17 +935,17 @@ "type": "string" }, "billingEnabled": { - "description": "Output only. True if the project is associated with an open billing account, to which usage on the project is charged. False if the project is associated with a closed billing account, or no billing account at all, and therefore cannot use paid services. This field is read-only.", + "description": "Output only. True if the project is associated with an open billing account, to which usage on the project is charged. False if the project is associated with a closed billing account, or no billing account at all, and therefore cannot use paid services.", "readOnly": true, "type": "boolean" }, "name": { - "description": "Output only. The resource name for the `ProjectBillingInfo`; has the form `projects/{project_id}/billingInfo`. For example, the resource name for the billing information for project `tokyo-rain-123` would be `projects/tokyo-rain-123/billingInfo`. This field is read-only.", + "description": "Output only. The resource name for the `ProjectBillingInfo`; has the form `projects/{project_id}/billingInfo`. For example, the resource name for the billing information for project `tokyo-rain-123` would be `projects/tokyo-rain-123/billingInfo`.", "readOnly": true, "type": "string" }, "projectId": { - "description": "Output only. The ID of the project that this `ProjectBillingInfo` represents, such as `tokyo-rain-123`. This is a convenience field so that you don't need to parse the `name` field to obtain a project ID. This field is read-only.", + "description": "Output only. The ID of the project that this `ProjectBillingInfo` represents, such as `tokyo-rain-123`. This is a convenience field so that you don't need to parse the `name` field to obtain a project ID.", "readOnly": true, "type": "string" } diff --git a/cloudbilling/v1/cloudbilling-gen.go b/cloudbilling/v1/cloudbilling-gen.go index f6b6766981b..fa27ac4b88e 100644 --- a/cloudbilling/v1/cloudbilling-gen.go +++ b/cloudbilling/v1/cloudbilling-gen.go @@ -1096,20 +1096,18 @@ type ProjectBillingInfo struct { // an open billing account, to which usage on the project is charged. // False if the project is associated with a closed billing account, or // no billing account at all, and therefore cannot use paid services. - // This field is read-only. BillingEnabled bool `json:"billingEnabled,omitempty"` // Name: Output only. The resource name for the `ProjectBillingInfo`; // has the form `projects/{project_id}/billingInfo`. For example, the // resource name for the billing information for project - // `tokyo-rain-123` would be `projects/tokyo-rain-123/billingInfo`. This - // field is read-only. + // `tokyo-rain-123` would be `projects/tokyo-rain-123/billingInfo`. Name string `json:"name,omitempty"` // ProjectId: Output only. The ID of the project that this // `ProjectBillingInfo` represents, such as `tokyo-rain-123`. This is a // convenience field so that you don't need to parse the `name` field to - // obtain a project ID. This field is read-only. + // obtain a project ID. ProjectId string `json:"projectId,omitempty"` // ServerResponse contains the HTTP response code and headers from the diff --git a/cloudbuild/v1/cloudbuild-api.json b/cloudbuild/v1/cloudbuild-api.json index 72f447ad76e..6f4697b9d3d 100644 --- a/cloudbuild/v1/cloudbuild-api.json +++ b/cloudbuild/v1/cloudbuild-api.json @@ -2319,7 +2319,7 @@ } } }, - "revision": "20230522", + "revision": "20230626", "rootUrl": "https://cloudbuild.googleapis.com/", "schemas": { "ApprovalConfig": { @@ -3043,14 +3043,16 @@ "N1_HIGHCPU_8", "N1_HIGHCPU_32", "E2_HIGHCPU_8", - "E2_HIGHCPU_32" + "E2_HIGHCPU_32", + "E2_MEDIUM" ], "enumDescriptions": [ "Standard machine type.", "Highcpu machine with 8 CPUs.", "Highcpu machine with 32 CPUs.", "Highcpu e2 machine with 8 CPUs.", - "Highcpu e2 machine with 32 CPUs." + "Highcpu e2 machine with 32 CPUs.", + "E2 machine with 1 CPU." ], "type": "string" }, diff --git a/cloudbuild/v1/cloudbuild-gen.go b/cloudbuild/v1/cloudbuild-gen.go index e6756a7f046..5ea57d4035d 100644 --- a/cloudbuild/v1/cloudbuild-gen.go +++ b/cloudbuild/v1/cloudbuild-gen.go @@ -1446,6 +1446,7 @@ type BuildOptions struct { // "N1_HIGHCPU_32" - Highcpu machine with 32 CPUs. // "E2_HIGHCPU_8" - Highcpu e2 machine with 8 CPUs. // "E2_HIGHCPU_32" - Highcpu e2 machine with 32 CPUs. + // "E2_MEDIUM" - E2 machine with 1 CPU. MachineType string `json:"machineType,omitempty"` // Pool: Optional. Specification for execution on a `WorkerPool`. See diff --git a/cloudchannel/v1/cloudchannel-api.json b/cloudchannel/v1/cloudchannel-api.json index 8cfab748937..19d2b388fae 100644 --- a/cloudchannel/v1/cloudchannel-api.json +++ b/cloudchannel/v1/cloudchannel-api.json @@ -593,7 +593,7 @@ "customers": { "methods": { "create": { - "description": "Creates a new Customer resource under the reseller or distributor account. Possible error codes: * PERMISSION_DENIED: The reseller account making the request is different from the reseller account in the API request. * INVALID_ARGUMENT: * Required request parameters are missing or invalid. * Domain field value doesn't match the primary email domain. Return value: The newly created Customer resource.", + "description": "Creates a new Customer resource under the reseller or distributor account. Possible error codes: * PERMISSION_DENIED: The reseller account making the request is different from the reseller account in the API request. * PERMISSION_DENIED: You are not authorized to create a customer. See https://support.google.com/channelservices/answer/9759265 * INVALID_ARGUMENT: * Required request parameters are missing or invalid. * Domain field value doesn't match the primary email domain. Return value: The newly created Customer resource.", "flatPath": "v1/accounts/{accountsId}/channelPartnerLinks/{channelPartnerLinksId}/customers", "httpMethod": "POST", "id": "cloudchannel.accounts.channelPartnerLinks.customers.create", @@ -671,7 +671,7 @@ ] }, "import": { - "description": "Imports a Customer from the Cloud Identity associated with the provided Cloud Identity ID or domain before a TransferEntitlements call. If a linked Customer already exists and overwrite_if_exists is true, it will update that Customer's data. Possible error codes: * PERMISSION_DENIED: The reseller account making the request is different from the reseller account in the API request. * NOT_FOUND: Cloud Identity doesn't exist or was deleted. * INVALID_ARGUMENT: Required parameters are missing, or the auth_token is expired or invalid. * ALREADY_EXISTS: A customer already exists and has conflicting critical fields. Requires an overwrite. Return value: The Customer.", + "description": "Imports a Customer from the Cloud Identity associated with the provided Cloud Identity ID or domain before a TransferEntitlements call. If a linked Customer already exists and overwrite_if_exists is true, it will update that Customer's data. Possible error codes: * PERMISSION_DENIED: The reseller account making the request is different from the reseller account in the API request. * PERMISSION_DENIED: You are not authorized to import the customer. See https://support.google.com/channelservices/answer/9759265 * NOT_FOUND: Cloud Identity doesn't exist or was deleted. * INVALID_ARGUMENT: Required parameters are missing, or the auth_token is expired or invalid. * ALREADY_EXISTS: A customer already exists and has conflicting critical fields. Requires an overwrite. Return value: The Customer.", "flatPath": "v1/accounts/{accountsId}/channelPartnerLinks/{channelPartnerLinksId}/customers:import", "httpMethod": "POST", "id": "cloudchannel.accounts.channelPartnerLinks.customers.import", @@ -780,7 +780,7 @@ "customers": { "methods": { "create": { - "description": "Creates a new Customer resource under the reseller or distributor account. Possible error codes: * PERMISSION_DENIED: The reseller account making the request is different from the reseller account in the API request. * INVALID_ARGUMENT: * Required request parameters are missing or invalid. * Domain field value doesn't match the primary email domain. Return value: The newly created Customer resource.", + "description": "Creates a new Customer resource under the reseller or distributor account. Possible error codes: * PERMISSION_DENIED: The reseller account making the request is different from the reseller account in the API request. * PERMISSION_DENIED: You are not authorized to create a customer. See https://support.google.com/channelservices/answer/9759265 * INVALID_ARGUMENT: * Required request parameters are missing or invalid. * Domain field value doesn't match the primary email domain. Return value: The newly created Customer resource.", "flatPath": "v1/accounts/{accountsId}/customers", "httpMethod": "POST", "id": "cloudchannel.accounts.customers.create", @@ -858,7 +858,7 @@ ] }, "import": { - "description": "Imports a Customer from the Cloud Identity associated with the provided Cloud Identity ID or domain before a TransferEntitlements call. If a linked Customer already exists and overwrite_if_exists is true, it will update that Customer's data. Possible error codes: * PERMISSION_DENIED: The reseller account making the request is different from the reseller account in the API request. * NOT_FOUND: Cloud Identity doesn't exist or was deleted. * INVALID_ARGUMENT: Required parameters are missing, or the auth_token is expired or invalid. * ALREADY_EXISTS: A customer already exists and has conflicting critical fields. Requires an overwrite. Return value: The Customer.", + "description": "Imports a Customer from the Cloud Identity associated with the provided Cloud Identity ID or domain before a TransferEntitlements call. If a linked Customer already exists and overwrite_if_exists is true, it will update that Customer's data. Possible error codes: * PERMISSION_DENIED: The reseller account making the request is different from the reseller account in the API request. * PERMISSION_DENIED: You are not authorized to import the customer. See https://support.google.com/channelservices/answer/9759265 * NOT_FOUND: Cloud Identity doesn't exist or was deleted. * INVALID_ARGUMENT: Required parameters are missing, or the auth_token is expired or invalid. * ALREADY_EXISTS: A customer already exists and has conflicting critical fields. Requires an overwrite. Return value: The Customer.", "flatPath": "v1/accounts/{accountsId}/customers:import", "httpMethod": "POST", "id": "cloudchannel.accounts.customers.import", @@ -1093,7 +1093,7 @@ ] }, "provisionCloudIdentity": { - "description": "Creates a Cloud Identity for the given customer using the customer's information, or the information provided here. Possible error codes: * PERMISSION_DENIED: The customer doesn't belong to the reseller. * INVALID_ARGUMENT: Required request parameters are missing or invalid. * NOT_FOUND: The customer was not found. * ALREADY_EXISTS: The customer's primary email already exists. Retry after changing the customer's primary contact email. * INTERNAL: Any non-user error related to a technical issue in the backend. Contact Cloud Channel support. * UNKNOWN: Any non-user error related to a technical issue in the backend. Contact Cloud Channel support. Return value: The ID of a long-running operation. To get the results of the operation, call the GetOperation method of CloudChannelOperationsService. The Operation metadata contains an instance of OperationMetadata.", + "description": "Creates a Cloud Identity for the given customer using the customer's information, or the information provided here. Possible error codes: * PERMISSION_DENIED: The customer doesn't belong to the reseller. * PERMISSION_DENIED: You are not authorized to provision cloud identity id. See https://support.google.com/channelservices/answer/9759265 * INVALID_ARGUMENT: Required request parameters are missing or invalid. * NOT_FOUND: The customer was not found. * ALREADY_EXISTS: The customer's primary email already exists. Retry after changing the customer's primary contact email. * INTERNAL: Any non-user error related to a technical issue in the backend. Contact Cloud Channel support. * UNKNOWN: Any non-user error related to a technical issue in the backend. Contact Cloud Channel support. Return value: The ID of a long-running operation. To get the results of the operation, call the GetOperation method of CloudChannelOperationsService. The Operation metadata contains an instance of OperationMetadata.", "flatPath": "v1/accounts/{accountsId}/customers/{customersId}:provisionCloudIdentity", "httpMethod": "POST", "id": "cloudchannel.accounts.customers.provisionCloudIdentity", @@ -2178,7 +2178,7 @@ } } }, - "revision": "20230613", + "revision": "20230628", "rootUrl": "https://cloudchannel.googleapis.com/", "schemas": { "GoogleCloudChannelV1ActivateEntitlementRequest": { diff --git a/cloudchannel/v1/cloudchannel-gen.go b/cloudchannel/v1/cloudchannel-gen.go index 9623ad370d7..4e9f9ad6153 100644 --- a/cloudchannel/v1/cloudchannel-gen.go +++ b/cloudchannel/v1/cloudchannel-gen.go @@ -9130,10 +9130,12 @@ type AccountsChannelPartnerLinksCustomersCreateCall struct { // Create: Creates a new Customer resource under the reseller or // distributor account. Possible error codes: * PERMISSION_DENIED: The // reseller account making the request is different from the reseller -// account in the API request. * INVALID_ARGUMENT: * Required request -// parameters are missing or invalid. * Domain field value doesn't match -// the primary email domain. Return value: The newly created Customer -// resource. +// account in the API request. * PERMISSION_DENIED: You are not +// authorized to create a customer. See +// https://support.google.com/channelservices/answer/9759265 * +// INVALID_ARGUMENT: * Required request parameters are missing or +// invalid. * Domain field value doesn't match the primary email domain. +// Return value: The newly created Customer resource. // // - parent: The resource name of reseller account in which to create // the customer. Parent uses the format: accounts/{account_id}. @@ -9235,7 +9237,7 @@ func (c *AccountsChannelPartnerLinksCustomersCreateCall) Do(opts ...googleapi.Ca } return ret, nil // { - // "description": "Creates a new Customer resource under the reseller or distributor account. Possible error codes: * PERMISSION_DENIED: The reseller account making the request is different from the reseller account in the API request. * INVALID_ARGUMENT: * Required request parameters are missing or invalid. * Domain field value doesn't match the primary email domain. Return value: The newly created Customer resource.", + // "description": "Creates a new Customer resource under the reseller or distributor account. Possible error codes: * PERMISSION_DENIED: The reseller account making the request is different from the reseller account in the API request. * PERMISSION_DENIED: You are not authorized to create a customer. See https://support.google.com/channelservices/answer/9759265 * INVALID_ARGUMENT: * Required request parameters are missing or invalid. * Domain field value doesn't match the primary email domain. Return value: The newly created Customer resource.", // "flatPath": "v1/accounts/{accountsId}/channelPartnerLinks/{channelPartnerLinksId}/customers", // "httpMethod": "POST", // "id": "cloudchannel.accounts.channelPartnerLinks.customers.create", @@ -9571,7 +9573,10 @@ type AccountsChannelPartnerLinksCustomersImportCall struct { // overwrite_if_exists is true, it will update that Customer's data. // Possible error codes: * PERMISSION_DENIED: The reseller account // making the request is different from the reseller account in the API -// request. * NOT_FOUND: Cloud Identity doesn't exist or was deleted. * +// request. * PERMISSION_DENIED: You are not authorized to import the +// customer. See +// https://support.google.com/channelservices/answer/9759265 * +// NOT_FOUND: Cloud Identity doesn't exist or was deleted. * // INVALID_ARGUMENT: Required parameters are missing, or the auth_token // is expired or invalid. * ALREADY_EXISTS: A customer already exists // and has conflicting critical fields. Requires an overwrite. Return @@ -9678,7 +9683,7 @@ func (c *AccountsChannelPartnerLinksCustomersImportCall) Do(opts ...googleapi.Ca } return ret, nil // { - // "description": "Imports a Customer from the Cloud Identity associated with the provided Cloud Identity ID or domain before a TransferEntitlements call. If a linked Customer already exists and overwrite_if_exists is true, it will update that Customer's data. Possible error codes: * PERMISSION_DENIED: The reseller account making the request is different from the reseller account in the API request. * NOT_FOUND: Cloud Identity doesn't exist or was deleted. * INVALID_ARGUMENT: Required parameters are missing, or the auth_token is expired or invalid. * ALREADY_EXISTS: A customer already exists and has conflicting critical fields. Requires an overwrite. Return value: The Customer.", + // "description": "Imports a Customer from the Cloud Identity associated with the provided Cloud Identity ID or domain before a TransferEntitlements call. If a linked Customer already exists and overwrite_if_exists is true, it will update that Customer's data. Possible error codes: * PERMISSION_DENIED: The reseller account making the request is different from the reseller account in the API request. * PERMISSION_DENIED: You are not authorized to import the customer. See https://support.google.com/channelservices/answer/9759265 * NOT_FOUND: Cloud Identity doesn't exist or was deleted. * INVALID_ARGUMENT: Required parameters are missing, or the auth_token is expired or invalid. * ALREADY_EXISTS: A customer already exists and has conflicting critical fields. Requires an overwrite. Return value: The Customer.", // "flatPath": "v1/accounts/{accountsId}/channelPartnerLinks/{channelPartnerLinksId}/customers:import", // "httpMethod": "POST", // "id": "cloudchannel.accounts.channelPartnerLinks.customers.import", @@ -10100,10 +10105,12 @@ type AccountsCustomersCreateCall struct { // Create: Creates a new Customer resource under the reseller or // distributor account. Possible error codes: * PERMISSION_DENIED: The // reseller account making the request is different from the reseller -// account in the API request. * INVALID_ARGUMENT: * Required request -// parameters are missing or invalid. * Domain field value doesn't match -// the primary email domain. Return value: The newly created Customer -// resource. +// account in the API request. * PERMISSION_DENIED: You are not +// authorized to create a customer. See +// https://support.google.com/channelservices/answer/9759265 * +// INVALID_ARGUMENT: * Required request parameters are missing or +// invalid. * Domain field value doesn't match the primary email domain. +// Return value: The newly created Customer resource. // // - parent: The resource name of reseller account in which to create // the customer. Parent uses the format: accounts/{account_id}. @@ -10205,7 +10212,7 @@ func (c *AccountsCustomersCreateCall) Do(opts ...googleapi.CallOption) (*GoogleC } return ret, nil // { - // "description": "Creates a new Customer resource under the reseller or distributor account. Possible error codes: * PERMISSION_DENIED: The reseller account making the request is different from the reseller account in the API request. * INVALID_ARGUMENT: * Required request parameters are missing or invalid. * Domain field value doesn't match the primary email domain. Return value: The newly created Customer resource.", + // "description": "Creates a new Customer resource under the reseller or distributor account. Possible error codes: * PERMISSION_DENIED: The reseller account making the request is different from the reseller account in the API request. * PERMISSION_DENIED: You are not authorized to create a customer. See https://support.google.com/channelservices/answer/9759265 * INVALID_ARGUMENT: * Required request parameters are missing or invalid. * Domain field value doesn't match the primary email domain. Return value: The newly created Customer resource.", // "flatPath": "v1/accounts/{accountsId}/customers", // "httpMethod": "POST", // "id": "cloudchannel.accounts.customers.create", @@ -10541,7 +10548,10 @@ type AccountsCustomersImportCall struct { // overwrite_if_exists is true, it will update that Customer's data. // Possible error codes: * PERMISSION_DENIED: The reseller account // making the request is different from the reseller account in the API -// request. * NOT_FOUND: Cloud Identity doesn't exist or was deleted. * +// request. * PERMISSION_DENIED: You are not authorized to import the +// customer. See +// https://support.google.com/channelservices/answer/9759265 * +// NOT_FOUND: Cloud Identity doesn't exist or was deleted. * // INVALID_ARGUMENT: Required parameters are missing, or the auth_token // is expired or invalid. * ALREADY_EXISTS: A customer already exists // and has conflicting critical fields. Requires an overwrite. Return @@ -10648,7 +10658,7 @@ func (c *AccountsCustomersImportCall) Do(opts ...googleapi.CallOption) (*GoogleC } return ret, nil // { - // "description": "Imports a Customer from the Cloud Identity associated with the provided Cloud Identity ID or domain before a TransferEntitlements call. If a linked Customer already exists and overwrite_if_exists is true, it will update that Customer's data. Possible error codes: * PERMISSION_DENIED: The reseller account making the request is different from the reseller account in the API request. * NOT_FOUND: Cloud Identity doesn't exist or was deleted. * INVALID_ARGUMENT: Required parameters are missing, or the auth_token is expired or invalid. * ALREADY_EXISTS: A customer already exists and has conflicting critical fields. Requires an overwrite. Return value: The Customer.", + // "description": "Imports a Customer from the Cloud Identity associated with the provided Cloud Identity ID or domain before a TransferEntitlements call. If a linked Customer already exists and overwrite_if_exists is true, it will update that Customer's data. Possible error codes: * PERMISSION_DENIED: The reseller account making the request is different from the reseller account in the API request. * PERMISSION_DENIED: You are not authorized to import the customer. See https://support.google.com/channelservices/answer/9759265 * NOT_FOUND: Cloud Identity doesn't exist or was deleted. * INVALID_ARGUMENT: Required parameters are missing, or the auth_token is expired or invalid. * ALREADY_EXISTS: A customer already exists and has conflicting critical fields. Requires an overwrite. Return value: The Customer.", // "flatPath": "v1/accounts/{accountsId}/customers:import", // "httpMethod": "POST", // "id": "cloudchannel.accounts.customers.import", @@ -11633,17 +11643,19 @@ type AccountsCustomersProvisionCloudIdentityCall struct { // ProvisionCloudIdentity: Creates a Cloud Identity for the given // customer using the customer's information, or the information // provided here. Possible error codes: * PERMISSION_DENIED: The -// customer doesn't belong to the reseller. * INVALID_ARGUMENT: Required -// request parameters are missing or invalid. * NOT_FOUND: The customer -// was not found. * ALREADY_EXISTS: The customer's primary email already -// exists. Retry after changing the customer's primary contact email. * -// INTERNAL: Any non-user error related to a technical issue in the -// backend. Contact Cloud Channel support. * UNKNOWN: Any non-user error +// customer doesn't belong to the reseller. * PERMISSION_DENIED: You are +// not authorized to provision cloud identity id. See +// https://support.google.com/channelservices/answer/9759265 * +// INVALID_ARGUMENT: Required request parameters are missing or invalid. +// * NOT_FOUND: The customer was not found. * ALREADY_EXISTS: The +// customer's primary email already exists. Retry after changing the +// customer's primary contact email. * INTERNAL: Any non-user error // related to a technical issue in the backend. Contact Cloud Channel -// support. Return value: The ID of a long-running operation. To get the -// results of the operation, call the GetOperation method of -// CloudChannelOperationsService. The Operation metadata contains an -// instance of OperationMetadata. +// support. * UNKNOWN: Any non-user error related to a technical issue +// in the backend. Contact Cloud Channel support. Return value: The ID +// of a long-running operation. To get the results of the operation, +// call the GetOperation method of CloudChannelOperationsService. The +// Operation metadata contains an instance of OperationMetadata. // // - customer: Resource name of the customer. Format: // accounts/{account_id}/customers/{customer_id}. @@ -11745,7 +11757,7 @@ func (c *AccountsCustomersProvisionCloudIdentityCall) Do(opts ...googleapi.CallO } return ret, nil // { - // "description": "Creates a Cloud Identity for the given customer using the customer's information, or the information provided here. Possible error codes: * PERMISSION_DENIED: The customer doesn't belong to the reseller. * INVALID_ARGUMENT: Required request parameters are missing or invalid. * NOT_FOUND: The customer was not found. * ALREADY_EXISTS: The customer's primary email already exists. Retry after changing the customer's primary contact email. * INTERNAL: Any non-user error related to a technical issue in the backend. Contact Cloud Channel support. * UNKNOWN: Any non-user error related to a technical issue in the backend. Contact Cloud Channel support. Return value: The ID of a long-running operation. To get the results of the operation, call the GetOperation method of CloudChannelOperationsService. The Operation metadata contains an instance of OperationMetadata.", + // "description": "Creates a Cloud Identity for the given customer using the customer's information, or the information provided here. Possible error codes: * PERMISSION_DENIED: The customer doesn't belong to the reseller. * PERMISSION_DENIED: You are not authorized to provision cloud identity id. See https://support.google.com/channelservices/answer/9759265 * INVALID_ARGUMENT: Required request parameters are missing or invalid. * NOT_FOUND: The customer was not found. * ALREADY_EXISTS: The customer's primary email already exists. Retry after changing the customer's primary contact email. * INTERNAL: Any non-user error related to a technical issue in the backend. Contact Cloud Channel support. * UNKNOWN: Any non-user error related to a technical issue in the backend. Contact Cloud Channel support. Return value: The ID of a long-running operation. To get the results of the operation, call the GetOperation method of CloudChannelOperationsService. The Operation metadata contains an instance of OperationMetadata.", // "flatPath": "v1/accounts/{accountsId}/customers/{customersId}:provisionCloudIdentity", // "httpMethod": "POST", // "id": "cloudchannel.accounts.customers.provisionCloudIdentity", diff --git a/clouddeploy/v1/clouddeploy-api.json b/clouddeploy/v1/clouddeploy-api.json index 7c6be680e5a..73ee2309637 100644 --- a/clouddeploy/v1/clouddeploy-api.json +++ b/clouddeploy/v1/clouddeploy-api.json @@ -1451,7 +1451,7 @@ } } }, - "revision": "20230609", + "revision": "20230621", "rootUrl": "https://clouddeploy.googleapis.com/", "schemas": { "AbandonReleaseRequest": { @@ -1937,6 +1937,13 @@ "TYPE_PROCESS_ABORTED", "TYPE_RENDER_STATUES_CHANGE" ], + "enumDeprecated": [ + false, + false, + false, + false, + true + ], "enumDescriptions": [ "Type is unspecified.", "A Pub/Sub notification failed to be sent.", @@ -2404,6 +2411,13 @@ "TYPE_PROCESS_ABORTED", "TYPE_RENDER_STATUES_CHANGE" ], + "enumDeprecated": [ + false, + false, + false, + false, + true + ], "enumDescriptions": [ "Type is unspecified.", "A Pub/Sub notification failed to be sent.", @@ -3089,6 +3103,13 @@ "TYPE_PROCESS_ABORTED", "TYPE_RENDER_STATUES_CHANGE" ], + "enumDeprecated": [ + false, + false, + false, + false, + true + ], "enumDescriptions": [ "Type is unspecified.", "A Pub/Sub notification failed to be sent.", @@ -3368,6 +3389,13 @@ "TYPE_PROCESS_ABORTED", "TYPE_RENDER_STATUES_CHANGE" ], + "enumDeprecated": [ + false, + false, + false, + false, + true + ], "enumDescriptions": [ "Type is unspecified.", "A Pub/Sub notification failed to be sent.", @@ -3601,7 +3629,7 @@ }, "anthosCluster": { "$ref": "AnthosCluster", - "description": "Information specifying an Anthos Cluster." + "description": "Optional. Information specifying an Anthos Cluster." }, "createTime": { "description": "Output only. Time at which the `Target` was created.", @@ -3633,7 +3661,7 @@ }, "gke": { "$ref": "GkeCluster", - "description": "Information specifying a GKE Cluster." + "description": "Optional. Information specifying a GKE Cluster." }, "labels": { "additionalProperties": { @@ -3644,7 +3672,7 @@ }, "multiTarget": { "$ref": "MultiTarget", - "description": "Information specifying a multiTarget." + "description": "Optional. Information specifying a multiTarget." }, "name": { "description": "Optional. Name of the `Target`. Format is projects/{project}/locations/{location}/targets/a-z{0,62}.", @@ -3656,7 +3684,7 @@ }, "run": { "$ref": "CloudRunLocation", - "description": "Information specifying a Cloud Run deployment target." + "description": "Optional. Information specifying a Cloud Run deployment target." }, "targetId": { "description": "Output only. Resource id of the `Target`.", @@ -3728,6 +3756,13 @@ "TYPE_PROCESS_ABORTED", "TYPE_RENDER_STATUES_CHANGE" ], + "enumDeprecated": [ + false, + false, + false, + false, + true + ], "enumDescriptions": [ "Type is unspecified.", "A Pub/Sub notification failed to be sent.", diff --git a/clouddeploy/v1/clouddeploy-gen.go b/clouddeploy/v1/clouddeploy-gen.go index 94aabce87ee..c9879705856 100644 --- a/clouddeploy/v1/clouddeploy-gen.go +++ b/clouddeploy/v1/clouddeploy-gen.go @@ -3682,7 +3682,7 @@ type Target struct { // format and size limitations. Annotations map[string]string `json:"annotations,omitempty"` - // AnthosCluster: Information specifying an Anthos Cluster. + // AnthosCluster: Optional. Information specifying an Anthos Cluster. AnthosCluster *AnthosCluster `json:"anthosCluster,omitempty"` // CreateTime: Output only. Time at which the `Target` was created. @@ -3710,7 +3710,7 @@ type Target struct { // specified in `DefaultPool`. ExecutionConfigs []*ExecutionConfig `json:"executionConfigs,omitempty"` - // Gke: Information specifying a GKE Cluster. + // Gke: Optional. Information specifying a GKE Cluster. Gke *GkeCluster `json:"gke,omitempty"` // Labels: Optional. Labels are attributes that can be set and used by @@ -3723,7 +3723,7 @@ type Target struct { // keys and values are additionally constrained to be <= 128 bytes. Labels map[string]string `json:"labels,omitempty"` - // MultiTarget: Information specifying a multiTarget. + // MultiTarget: Optional. Information specifying a multiTarget. MultiTarget *MultiTarget `json:"multiTarget,omitempty"` // Name: Optional. Name of the `Target`. Format is @@ -3734,7 +3734,7 @@ type Target struct { // approval. RequireApproval bool `json:"requireApproval,omitempty"` - // Run: Information specifying a Cloud Run deployment target. + // Run: Optional. Information specifying a Cloud Run deployment target. Run *CloudRunLocation `json:"run,omitempty"` // TargetId: Output only. Resource id of the `Target`. diff --git a/cloudfunctions/v2/cloudfunctions-api.json b/cloudfunctions/v2/cloudfunctions-api.json index bf202834cee..930040adbec 100644 --- a/cloudfunctions/v2/cloudfunctions-api.json +++ b/cloudfunctions/v2/cloudfunctions-api.json @@ -571,7 +571,7 @@ } } }, - "revision": "20230619", + "revision": "20230622", "rootUrl": "https://cloudfunctions.googleapis.com/", "schemas": { "AuditConfig": { @@ -1698,10 +1698,6 @@ "description": "Directory, relative to the source root, in which to run the build. This must be a relative path. If a step's `dir` is specified and is an absolute path, this value is ignored for that step's execution. eg. helloworld (no leading slash allowed)", "type": "string" }, - "invertRegex": { - "description": "Only trigger a build if the revision regex does NOT match the revision regex.", - "type": "boolean" - }, "projectId": { "description": "ID of the project that owns the Cloud Source Repository. If omitted, the project ID requesting the build is assumed.", "type": "string" diff --git a/cloudfunctions/v2/cloudfunctions-gen.go b/cloudfunctions/v2/cloudfunctions-gen.go index c1c2625991a..7386d5430cf 100644 --- a/cloudfunctions/v2/cloudfunctions-gen.go +++ b/cloudfunctions/v2/cloudfunctions-gen.go @@ -1874,10 +1874,6 @@ type RepoSource struct { // execution. eg. helloworld (no leading slash allowed) Dir string `json:"dir,omitempty"` - // InvertRegex: Only trigger a build if the revision regex does NOT - // match the revision regex. - InvertRegex bool `json:"invertRegex,omitempty"` - // ProjectId: ID of the project that owns the Cloud Source Repository. // If omitted, the project ID requesting the build is assumed. ProjectId string `json:"projectId,omitempty"` diff --git a/cloudfunctions/v2alpha/cloudfunctions-api.json b/cloudfunctions/v2alpha/cloudfunctions-api.json index 7fef33f5cd3..5c246d8c26c 100644 --- a/cloudfunctions/v2alpha/cloudfunctions-api.json +++ b/cloudfunctions/v2alpha/cloudfunctions-api.json @@ -571,7 +571,7 @@ } } }, - "revision": "20230619", + "revision": "20230622", "rootUrl": "https://cloudfunctions.googleapis.com/", "schemas": { "AuditConfig": { @@ -1698,10 +1698,6 @@ "description": "Directory, relative to the source root, in which to run the build. This must be a relative path. If a step's `dir` is specified and is an absolute path, this value is ignored for that step's execution. eg. helloworld (no leading slash allowed)", "type": "string" }, - "invertRegex": { - "description": "Only trigger a build if the revision regex does NOT match the revision regex.", - "type": "boolean" - }, "projectId": { "description": "ID of the project that owns the Cloud Source Repository. If omitted, the project ID requesting the build is assumed.", "type": "string" diff --git a/cloudfunctions/v2alpha/cloudfunctions-gen.go b/cloudfunctions/v2alpha/cloudfunctions-gen.go index 168e09ee44d..1c0420b5165 100644 --- a/cloudfunctions/v2alpha/cloudfunctions-gen.go +++ b/cloudfunctions/v2alpha/cloudfunctions-gen.go @@ -1874,10 +1874,6 @@ type RepoSource struct { // execution. eg. helloworld (no leading slash allowed) Dir string `json:"dir,omitempty"` - // InvertRegex: Only trigger a build if the revision regex does NOT - // match the revision regex. - InvertRegex bool `json:"invertRegex,omitempty"` - // ProjectId: ID of the project that owns the Cloud Source Repository. // If omitted, the project ID requesting the build is assumed. ProjectId string `json:"projectId,omitempty"` diff --git a/cloudfunctions/v2beta/cloudfunctions-api.json b/cloudfunctions/v2beta/cloudfunctions-api.json index 9a4b32fbb1c..8c2be7c38da 100644 --- a/cloudfunctions/v2beta/cloudfunctions-api.json +++ b/cloudfunctions/v2beta/cloudfunctions-api.json @@ -571,7 +571,7 @@ } } }, - "revision": "20230619", + "revision": "20230622", "rootUrl": "https://cloudfunctions.googleapis.com/", "schemas": { "AuditConfig": { @@ -1698,10 +1698,6 @@ "description": "Directory, relative to the source root, in which to run the build. This must be a relative path. If a step's `dir` is specified and is an absolute path, this value is ignored for that step's execution. eg. helloworld (no leading slash allowed)", "type": "string" }, - "invertRegex": { - "description": "Only trigger a build if the revision regex does NOT match the revision regex.", - "type": "boolean" - }, "projectId": { "description": "ID of the project that owns the Cloud Source Repository. If omitted, the project ID requesting the build is assumed.", "type": "string" diff --git a/cloudfunctions/v2beta/cloudfunctions-gen.go b/cloudfunctions/v2beta/cloudfunctions-gen.go index 23c728d8018..821607c0545 100644 --- a/cloudfunctions/v2beta/cloudfunctions-gen.go +++ b/cloudfunctions/v2beta/cloudfunctions-gen.go @@ -1874,10 +1874,6 @@ type RepoSource struct { // execution. eg. helloworld (no leading slash allowed) Dir string `json:"dir,omitempty"` - // InvertRegex: Only trigger a build if the revision regex does NOT - // match the revision regex. - InvertRegex bool `json:"invertRegex,omitempty"` - // ProjectId: ID of the project that owns the Cloud Source Repository. // If omitted, the project ID requesting the build is assumed. ProjectId string `json:"projectId,omitempty"` diff --git a/cloudkms/v1/cloudkms-api.json b/cloudkms/v1/cloudkms-api.json index e67cbc2aa36..359ac3dd4f0 100644 --- a/cloudkms/v1/cloudkms-api.json +++ b/cloudkms/v1/cloudkms-api.json @@ -1522,6 +1522,64 @@ "https://www.googleapis.com/auth/cloudkms" ] }, + "rawDecrypt": { + "description": "Decrypts data that was originally encrypted using a raw cryptographic mechanism. The CryptoKey.purpose must be RAW_ENCRYPT_DECRYPT.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}/cryptoKeys/{cryptoKeysId}/cryptoKeyVersions/{cryptoKeyVersionsId}:rawDecrypt", + "httpMethod": "POST", + "id": "cloudkms.projects.locations.keyRings.cryptoKeys.cryptoKeyVersions.rawDecrypt", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The resource name of the CryptoKeyVersion to use for decryption.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+/cryptoKeys/[^/]+/cryptoKeyVersions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:rawDecrypt", + "request": { + "$ref": "RawDecryptRequest" + }, + "response": { + "$ref": "RawDecryptResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloudkms" + ] + }, + "rawEncrypt": { + "description": "Encrypts data using portable cryptographic primitives. Most users should choose Encrypt and Decrypt rather than their raw counterparts. The CryptoKey.purpose must be RAW_ENCRYPT_DECRYPT.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}/cryptoKeys/{cryptoKeysId}/cryptoKeyVersions/{cryptoKeyVersionsId}:rawEncrypt", + "httpMethod": "POST", + "id": "cloudkms.projects.locations.keyRings.cryptoKeys.cryptoKeyVersions.rawEncrypt", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The resource name of the CryptoKeyVersion to use for encryption.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+/cryptoKeys/[^/]+/cryptoKeyVersions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:rawEncrypt", + "request": { + "$ref": "RawEncryptRequest" + }, + "response": { + "$ref": "RawEncryptResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloudkms" + ] + }, "restore": { "description": "Restore a CryptoKeyVersion in the DESTROY_SCHEDULED state. Upon restoration of the CryptoKeyVersion, state will be set to DISABLED, and destroy_time will be cleared.", "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}/cryptoKeys/{cryptoKeysId}/cryptoKeyVersions/{cryptoKeyVersionsId}:restore", @@ -1763,7 +1821,7 @@ } } }, - "revision": "20230427", + "revision": "20230625", "rootUrl": "https://cloudkms.googleapis.com/", "schemas": { "AsymmetricDecryptRequest": { @@ -2102,6 +2160,7 @@ "ENCRYPT_DECRYPT", "ASYMMETRIC_SIGN", "ASYMMETRIC_DECRYPT", + "RAW_ENCRYPT_DECRYPT", "MAC" ], "enumDescriptions": [ @@ -2109,6 +2168,7 @@ "CryptoKeys with this purpose may be used with Encrypt and Decrypt.", "CryptoKeys with this purpose may be used with AsymmetricSign and GetPublicKey.", "CryptoKeys with this purpose may be used with AsymmetricDecrypt and GetPublicKey.", + "CryptoKeys with this purpose may be used with RawEncrypt and RawDecrypt. This purpose is meant to be used for interoperable symmetric encryption and does not support automatic CryptoKey rotation.", "CryptoKeys with this purpose may be used with MacSign." ], "type": "string" @@ -2134,6 +2194,8 @@ "enum": [ "CRYPTO_KEY_VERSION_ALGORITHM_UNSPECIFIED", "GOOGLE_SYMMETRIC_ENCRYPTION", + "AES_128_GCM", + "AES_256_GCM", "RSA_SIGN_PSS_2048_SHA256", "RSA_SIGN_PSS_3072_SHA256", "RSA_SIGN_PSS_4096_SHA256", @@ -2165,6 +2227,8 @@ "enumDescriptions": [ "Not specified.", "Creates symmetric encryption keys.", + "AES-GCM (Galois Counter Mode) using 128-bit keys.", + "AES-GCM (Galois Counter Mode) using 256-bit keys.", "RSASSA-PSS 2048 bit key with a SHA256 digest.", "RSASSA-PSS 3072 bit key with a SHA256 digest.", "RSASSA-PSS 4096 bit key with a SHA256 digest.", @@ -2326,6 +2390,8 @@ "enum": [ "CRYPTO_KEY_VERSION_ALGORITHM_UNSPECIFIED", "GOOGLE_SYMMETRIC_ENCRYPTION", + "AES_128_GCM", + "AES_256_GCM", "RSA_SIGN_PSS_2048_SHA256", "RSA_SIGN_PSS_3072_SHA256", "RSA_SIGN_PSS_4096_SHA256", @@ -2357,6 +2423,8 @@ "enumDescriptions": [ "Not specified.", "Creates symmetric encryption keys.", + "AES-GCM (Galois Counter Mode) using 128-bit keys.", + "AES-GCM (Galois Counter Mode) using 256-bit keys.", "RSASSA-PSS 2048 bit key with a SHA256 digest.", "RSASSA-PSS 3072 bit key with a SHA256 digest.", "RSASSA-PSS 4096 bit key with a SHA256 digest.", @@ -2733,6 +2801,8 @@ "enum": [ "CRYPTO_KEY_VERSION_ALGORITHM_UNSPECIFIED", "GOOGLE_SYMMETRIC_ENCRYPTION", + "AES_128_GCM", + "AES_256_GCM", "RSA_SIGN_PSS_2048_SHA256", "RSA_SIGN_PSS_3072_SHA256", "RSA_SIGN_PSS_4096_SHA256", @@ -2764,6 +2834,8 @@ "enumDescriptions": [ "Not specified.", "Creates symmetric encryption keys.", + "AES-GCM (Galois Counter Mode) using 128-bit keys.", + "AES-GCM (Galois Counter Mode) using 256-bit keys.", "RSASSA-PSS 2048 bit key with a SHA256 digest.", "RSASSA-PSS 3072 bit key with a SHA256 digest.", "RSASSA-PSS 4096 bit key with a SHA256 digest.", @@ -3323,6 +3395,8 @@ "enum": [ "CRYPTO_KEY_VERSION_ALGORITHM_UNSPECIFIED", "GOOGLE_SYMMETRIC_ENCRYPTION", + "AES_128_GCM", + "AES_256_GCM", "RSA_SIGN_PSS_2048_SHA256", "RSA_SIGN_PSS_3072_SHA256", "RSA_SIGN_PSS_4096_SHA256", @@ -3354,6 +3428,8 @@ "enumDescriptions": [ "Not specified.", "Creates symmetric encryption keys.", + "AES-GCM (Galois Counter Mode) using 128-bit keys.", + "AES-GCM (Galois Counter Mode) using 256-bit keys.", "RSASSA-PSS 2048 bit key with a SHA256 digest.", "RSASSA-PSS 3072 bit key with a SHA256 digest.", "RSASSA-PSS 4096 bit key with a SHA256 digest.", @@ -3418,6 +3494,198 @@ }, "type": "object" }, + "RawDecryptRequest": { + "description": "Request message for KeyManagementService.RawDecrypt.", + "id": "RawDecryptRequest", + "properties": { + "additionalAuthenticatedData": { + "description": "Optional. Optional data that must match the data originally supplied in RawEncryptRequest.additional_authenticated_data.", + "format": "byte", + "type": "string" + }, + "additionalAuthenticatedDataCrc32c": { + "description": "Optional. An optional CRC32C checksum of the RawDecryptRequest.additional_authenticated_data. If specified, KeyManagementService will verify the integrity of the received additional_authenticated_data using this checksum. KeyManagementService will report an error if the checksum verification fails. If you receive a checksum error, your client should verify that CRC32C(additional_authenticated_data) is equal to additional_authenticated_data_crc32c, and if so, perform a limited number of retries. A persistent mismatch may indicate an issue in your computation of the CRC32C checksum. Note: This field is defined as int64 for reasons of compatibility across different languages. However, it is a non-negative integer, which will never exceed 2^32-1, and can be safely downconverted to uint32 in languages that support this type.", + "format": "int64", + "type": "string" + }, + "ciphertext": { + "description": "Required. The encrypted data originally returned in RawEncryptResponse.ciphertext.", + "format": "byte", + "type": "string" + }, + "ciphertextCrc32c": { + "description": "Optional. An optional CRC32C checksum of the RawDecryptRequest.ciphertext. If specified, KeyManagementService will verify the integrity of the received ciphertext using this checksum. KeyManagementService will report an error if the checksum verification fails. If you receive a checksum error, your client should verify that CRC32C(ciphertext) is equal to ciphertext_crc32c, and if so, perform a limited number of retries. A persistent mismatch may indicate an issue in your computation of the CRC32C checksum. Note: This field is defined as int64 for reasons of compatibility across different languages. However, it is a non-negative integer, which will never exceed 2^32-1, and can be safely downconverted to uint32 in languages that support this type.", + "format": "int64", + "type": "string" + }, + "initializationVector": { + "description": "Required. The initialization vector (IV) used during encryption, which must match the data originally provided in RawEncryptResponse.initialization_vector.", + "format": "byte", + "type": "string" + }, + "initializationVectorCrc32c": { + "description": "Optional. An optional CRC32C checksum of the RawDecryptRequest.initialization_vector. If specified, KeyManagementService will verify the integrity of the received initialization_vector using this checksum. KeyManagementService will report an error if the checksum verification fails. If you receive a checksum error, your client should verify that CRC32C(initialization_vector) is equal to initialization_vector_crc32c, and if so, perform a limited number of retries. A persistent mismatch may indicate an issue in your computation of the CRC32C checksum. Note: This field is defined as int64 for reasons of compatibility across different languages. However, it is a non-negative integer, which will never exceed 2^32-1, and can be safely downconverted to uint32 in languages that support this type.", + "format": "int64", + "type": "string" + }, + "tagLength": { + "description": "The length of the authentication tag that is appended to the end of the ciphertext. If unspecified (0), the default value for the key's algorithm will be used (for AES-GCM, the default value is 16).", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "RawDecryptResponse": { + "description": "Response message for KeyManagementService.RawDecrypt.", + "id": "RawDecryptResponse", + "properties": { + "plaintext": { + "description": "The decrypted data.", + "format": "byte", + "type": "string" + }, + "plaintextCrc32c": { + "description": "Integrity verification field. A CRC32C checksum of the returned RawDecryptResponse.plaintext. An integrity check of plaintext can be performed by computing the CRC32C checksum of plaintext and comparing your results to this field. Discard the response in case of non-matching checksum values, and perform a limited number of retries. A persistent mismatch may indicate an issue in your computation of the CRC32C checksum. Note: receiving this response message indicates that KeyManagementService is able to successfully decrypt the ciphertext. Note: This field is defined as int64 for reasons of compatibility across different languages. However, it is a non-negative integer, which will never exceed 2^32-1, and can be safely downconverted to uint32 in languages that support this type.", + "format": "int64", + "type": "string" + }, + "protectionLevel": { + "description": "The ProtectionLevel of the CryptoKeyVersion used in decryption.", + "enum": [ + "PROTECTION_LEVEL_UNSPECIFIED", + "SOFTWARE", + "HSM", + "EXTERNAL", + "EXTERNAL_VPC" + ], + "enumDescriptions": [ + "Not specified.", + "Crypto operations are performed in software.", + "Crypto operations are performed in a Hardware Security Module.", + "Crypto operations are performed by an external key manager.", + "Crypto operations are performed in an EKM-over-VPC backend." + ], + "type": "string" + }, + "verifiedAdditionalAuthenticatedDataCrc32c": { + "description": "Integrity verification field. A flag indicating whether RawDecryptRequest.additional_authenticated_data_crc32c was received by KeyManagementService and used for the integrity verification of additional_authenticated_data. A false value of this field indicates either that // RawDecryptRequest.additional_authenticated_data_crc32c was left unset or that it was not delivered to KeyManagementService. If you've set RawDecryptRequest.additional_authenticated_data_crc32c but this field is still false, discard the response and perform a limited number of retries.", + "type": "boolean" + }, + "verifiedCiphertextCrc32c": { + "description": "Integrity verification field. A flag indicating whether RawDecryptRequest.ciphertext_crc32c was received by KeyManagementService and used for the integrity verification of the ciphertext. A false value of this field indicates either that RawDecryptRequest.ciphertext_crc32c was left unset or that it was not delivered to KeyManagementService. If you've set RawDecryptRequest.ciphertext_crc32c but this field is still false, discard the response and perform a limited number of retries.", + "type": "boolean" + }, + "verifiedInitializationVectorCrc32c": { + "description": "Integrity verification field. A flag indicating whether RawDecryptRequest.initialization_vector_crc32c was received by KeyManagementService and used for the integrity verification of initialization_vector. A false value of this field indicates either that RawDecryptRequest.initialization_vector_crc32c was left unset or that it was not delivered to KeyManagementService. If you've set RawDecryptRequest.initialization_vector_crc32c but this field is still false, discard the response and perform a limited number of retries.", + "type": "boolean" + } + }, + "type": "object" + }, + "RawEncryptRequest": { + "description": "Request message for KeyManagementService.RawEncrypt.", + "id": "RawEncryptRequest", + "properties": { + "additionalAuthenticatedData": { + "description": "Optional. Optional data that, if specified, must also be provided during decryption through RawDecryptRequest.additional_authenticated_data. This field may only be used in conjunction with an algorithm that accepts additional authenticated data (for example, AES-GCM). The maximum size depends on the key version's protection_level. For SOFTWARE keys, the plaintext must be no larger than 64KiB. For HSM keys, the combined length of the plaintext and additional_authenticated_data fields must be no larger than 8KiB.", + "format": "byte", + "type": "string" + }, + "additionalAuthenticatedDataCrc32c": { + "description": "Optional. An optional CRC32C checksum of the RawEncryptRequest.additional_authenticated_data. If specified, KeyManagementService will verify the integrity of the received additional_authenticated_data using this checksum. KeyManagementService will report an error if the checksum verification fails. If you receive a checksum error, your client should verify that CRC32C(additional_authenticated_data) is equal to additional_authenticated_data_crc32c, and if so, perform a limited number of retries. A persistent mismatch may indicate an issue in your computation of the CRC32C checksum. Note: This field is defined as int64 for reasons of compatibility across different languages. However, it is a non-negative integer, which will never exceed 2^32-1, and can be safely downconverted to uint32 in languages that support this type.", + "format": "int64", + "type": "string" + }, + "initializationVector": { + "description": "Optional. A customer-supplied initialization vector that will be used for encryption. If it is not provided for AES-CBC and AES-CTR, one will be generated. It will be returned in RawEncryptResponse.initialization_vector.", + "format": "byte", + "type": "string" + }, + "initializationVectorCrc32c": { + "description": "Optional. An optional CRC32C checksum of the RawEncryptRequest.initialization_vector. If specified, KeyManagementService will verify the integrity of the received initialization_vector using this checksum. KeyManagementService will report an error if the checksum verification fails. If you receive a checksum error, your client should verify that CRC32C(initialization_vector) is equal to initialization_vector_crc32c, and if so, perform a limited number of retries. A persistent mismatch may indicate an issue in your computation of the CRC32C checksum. Note: This field is defined as int64 for reasons of compatibility across different languages. However, it is a non-negative integer, which will never exceed 2^32-1, and can be safely downconverted to uint32 in languages that support this type.", + "format": "int64", + "type": "string" + }, + "plaintext": { + "description": "Required. The data to encrypt. Must be no larger than 64KiB. The maximum size depends on the key version's protection_level. For SOFTWARE keys, the plaintext must be no larger than 64KiB. For HSM keys, the combined length of the plaintext and additional_authenticated_data fields must be no larger than 8KiB.", + "format": "byte", + "type": "string" + }, + "plaintextCrc32c": { + "description": "Optional. An optional CRC32C checksum of the RawEncryptRequest.plaintext. If specified, KeyManagementService will verify the integrity of the received plaintext using this checksum. KeyManagementService will report an error if the checksum verification fails. If you receive a checksum error, your client should verify that CRC32C(plaintext) is equal to plaintext_crc32c, and if so, perform a limited number of retries. A persistent mismatch may indicate an issue in your computation of the CRC32C checksum. Note: This field is defined as int64 for reasons of compatibility across different languages. However, it is a non-negative integer, which will never exceed 2^32-1, and can be safely downconverted to uint32 in languages that support this type.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "RawEncryptResponse": { + "description": "Response message for KeyManagementService.RawEncrypt.", + "id": "RawEncryptResponse", + "properties": { + "ciphertext": { + "description": "The encrypted data. In the case of AES-GCM, the authentication tag is the tag_length bytes at the end of this field.", + "format": "byte", + "type": "string" + }, + "ciphertextCrc32c": { + "description": "Integrity verification field. A CRC32C checksum of the returned RawEncryptResponse.ciphertext. An integrity check of ciphertext can be performed by computing the CRC32C checksum of ciphertext and comparing your results to this field. Discard the response in case of non-matching checksum values, and perform a limited number of retries. A persistent mismatch may indicate an issue in your computation of the CRC32C checksum. Note: This field is defined as int64 for reasons of compatibility across different languages. However, it is a non-negative integer, which will never exceed 2^32-1, and can be safely downconverted to uint32 in languages that support this type.", + "format": "int64", + "type": "string" + }, + "initializationVector": { + "description": "The initialization vector (IV) generated by the service during encryption. This value must be stored and provided in RawDecryptRequest.initialization_vector at decryption time.", + "format": "byte", + "type": "string" + }, + "initializationVectorCrc32c": { + "description": "Integrity verification field. A CRC32C checksum of the returned RawEncryptResponse.initialization_vector. An integrity check of initialization_vector can be performed by computing the CRC32C checksum of initialization_vector and comparing your results to this field. Discard the response in case of non-matching checksum values, and perform a limited number of retries. A persistent mismatch may indicate an issue in your computation of the CRC32C checksum. Note: This field is defined as int64 for reasons of compatibility across different languages. However, it is a non-negative integer, which will never exceed 2^32-1, and can be safely downconverted to uint32 in languages that support this type.", + "format": "int64", + "type": "string" + }, + "name": { + "description": "The resource name of the CryptoKeyVersion used in encryption. Check this field to verify that the intended resource was used for encryption.", + "type": "string" + }, + "protectionLevel": { + "description": "The ProtectionLevel of the CryptoKeyVersion used in encryption.", + "enum": [ + "PROTECTION_LEVEL_UNSPECIFIED", + "SOFTWARE", + "HSM", + "EXTERNAL", + "EXTERNAL_VPC" + ], + "enumDescriptions": [ + "Not specified.", + "Crypto operations are performed in software.", + "Crypto operations are performed in a Hardware Security Module.", + "Crypto operations are performed by an external key manager.", + "Crypto operations are performed in an EKM-over-VPC backend." + ], + "type": "string" + }, + "tagLength": { + "description": "The length of the authentication tag that is appended to the end of the ciphertext.", + "format": "int32", + "type": "integer" + }, + "verifiedAdditionalAuthenticatedDataCrc32c": { + "description": "Integrity verification field. A flag indicating whether RawEncryptRequest.additional_authenticated_data_crc32c was received by KeyManagementService and used for the integrity verification of additional_authenticated_data. A false value of this field indicates either that // RawEncryptRequest.additional_authenticated_data_crc32c was left unset or that it was not delivered to KeyManagementService. If you've set RawEncryptRequest.additional_authenticated_data_crc32c but this field is still false, discard the response and perform a limited number of retries.", + "type": "boolean" + }, + "verifiedInitializationVectorCrc32c": { + "description": "Integrity verification field. A flag indicating whether RawEncryptRequest.initialization_vector_crc32c was received by KeyManagementService and used for the integrity verification of initialization_vector. A false value of this field indicates either that RawEncryptRequest.initialization_vector_crc32c was left unset or that it was not delivered to KeyManagementService. If you've set RawEncryptRequest.initialization_vector_crc32c but this field is still false, discard the response and perform a limited number of retries.", + "type": "boolean" + }, + "verifiedPlaintextCrc32c": { + "description": "Integrity verification field. A flag indicating whether RawEncryptRequest.plaintext_crc32c was received by KeyManagementService and used for the integrity verification of the plaintext. A false value of this field indicates either that RawEncryptRequest.plaintext_crc32c was left unset or that it was not delivered to KeyManagementService. If you've set RawEncryptRequest.plaintext_crc32c but this field is still false, discard the response and perform a limited number of retries.", + "type": "boolean" + } + }, + "type": "object" + }, "RestoreCryptoKeyVersionRequest": { "description": "Request message for KeyManagementService.RestoreCryptoKeyVersion.", "id": "RestoreCryptoKeyVersionRequest", diff --git a/cloudkms/v1/cloudkms-gen.go b/cloudkms/v1/cloudkms-gen.go index e495acc49e2..0d9c973e190 100644 --- a/cloudkms/v1/cloudkms-gen.go +++ b/cloudkms/v1/cloudkms-gen.go @@ -849,6 +849,10 @@ type CryptoKey struct { // AsymmetricSign and GetPublicKey. // "ASYMMETRIC_DECRYPT" - CryptoKeys with this purpose may be used // with AsymmetricDecrypt and GetPublicKey. + // "RAW_ENCRYPT_DECRYPT" - CryptoKeys with this purpose may be used + // with RawEncrypt and RawDecrypt. This purpose is meant to be used for + // interoperable symmetric encryption and does not support automatic + // CryptoKey rotation. // "MAC" - CryptoKeys with this purpose may be used with MacSign. Purpose string `json:"purpose,omitempty"` @@ -907,6 +911,8 @@ type CryptoKeyVersion struct { // Possible values: // "CRYPTO_KEY_VERSION_ALGORITHM_UNSPECIFIED" - Not specified. // "GOOGLE_SYMMETRIC_ENCRYPTION" - Creates symmetric encryption keys. + // "AES_128_GCM" - AES-GCM (Galois Counter Mode) using 128-bit keys. + // "AES_256_GCM" - AES-GCM (Galois Counter Mode) using 256-bit keys. // "RSA_SIGN_PSS_2048_SHA256" - RSASSA-PSS 2048 bit key with a SHA256 // digest. // "RSA_SIGN_PSS_3072_SHA256" - RSASSA-PSS 3072 bit key with a SHA256 @@ -1120,6 +1126,8 @@ type CryptoKeyVersionTemplate struct { // Possible values: // "CRYPTO_KEY_VERSION_ALGORITHM_UNSPECIFIED" - Not specified. // "GOOGLE_SYMMETRIC_ENCRYPTION" - Creates symmetric encryption keys. + // "AES_128_GCM" - AES-GCM (Galois Counter Mode) using 128-bit keys. + // "AES_256_GCM" - AES-GCM (Galois Counter Mode) using 256-bit keys. // "RSA_SIGN_PSS_2048_SHA256" - RSASSA-PSS 2048 bit key with a SHA256 // digest. // "RSA_SIGN_PSS_3072_SHA256" - RSASSA-PSS 3072 bit key with a SHA256 @@ -1870,6 +1878,8 @@ type ImportCryptoKeyVersionRequest struct { // Possible values: // "CRYPTO_KEY_VERSION_ALGORITHM_UNSPECIFIED" - Not specified. // "GOOGLE_SYMMETRIC_ENCRYPTION" - Creates symmetric encryption keys. + // "AES_128_GCM" - AES-GCM (Galois Counter Mode) using 128-bit keys. + // "AES_256_GCM" - AES-GCM (Galois Counter Mode) using 256-bit keys. // "RSA_SIGN_PSS_2048_SHA256" - RSASSA-PSS 2048 bit key with a SHA256 // digest. // "RSA_SIGN_PSS_3072_SHA256" - RSASSA-PSS 3072 bit key with a SHA256 @@ -2931,6 +2941,8 @@ type PublicKey struct { // Possible values: // "CRYPTO_KEY_VERSION_ALGORITHM_UNSPECIFIED" - Not specified. // "GOOGLE_SYMMETRIC_ENCRYPTION" - Creates symmetric encryption keys. + // "AES_128_GCM" - AES-GCM (Galois Counter Mode) using 128-bit keys. + // "AES_256_GCM" - AES-GCM (Galois Counter Mode) using 256-bit keys. // "RSA_SIGN_PSS_2048_SHA256" - RSASSA-PSS 2048 bit key with a SHA256 // digest. // "RSA_SIGN_PSS_3072_SHA256" - RSASSA-PSS 3072 bit key with a SHA256 @@ -3052,6 +3064,417 @@ func (s *PublicKey) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// RawDecryptRequest: Request message for +// KeyManagementService.RawDecrypt. +type RawDecryptRequest struct { + // AdditionalAuthenticatedData: Optional. Optional data that must match + // the data originally supplied in + // RawEncryptRequest.additional_authenticated_data. + AdditionalAuthenticatedData string `json:"additionalAuthenticatedData,omitempty"` + + // AdditionalAuthenticatedDataCrc32c: Optional. An optional CRC32C + // checksum of the RawDecryptRequest.additional_authenticated_data. If + // specified, KeyManagementService will verify the integrity of the + // received additional_authenticated_data using this checksum. + // KeyManagementService will report an error if the checksum + // verification fails. If you receive a checksum error, your client + // should verify that CRC32C(additional_authenticated_data) is equal to + // additional_authenticated_data_crc32c, and if so, perform a limited + // number of retries. A persistent mismatch may indicate an issue in + // your computation of the CRC32C checksum. Note: This field is defined + // as int64 for reasons of compatibility across different languages. + // However, it is a non-negative integer, which will never exceed + // 2^32-1, and can be safely downconverted to uint32 in languages that + // support this type. + AdditionalAuthenticatedDataCrc32c int64 `json:"additionalAuthenticatedDataCrc32c,omitempty,string"` + + // Ciphertext: Required. The encrypted data originally returned in + // RawEncryptResponse.ciphertext. + Ciphertext string `json:"ciphertext,omitempty"` + + // CiphertextCrc32c: Optional. An optional CRC32C checksum of the + // RawDecryptRequest.ciphertext. If specified, KeyManagementService will + // verify the integrity of the received ciphertext using this checksum. + // KeyManagementService will report an error if the checksum + // verification fails. If you receive a checksum error, your client + // should verify that CRC32C(ciphertext) is equal to ciphertext_crc32c, + // and if so, perform a limited number of retries. A persistent mismatch + // may indicate an issue in your computation of the CRC32C checksum. + // Note: This field is defined as int64 for reasons of compatibility + // across different languages. However, it is a non-negative integer, + // which will never exceed 2^32-1, and can be safely downconverted to + // uint32 in languages that support this type. + CiphertextCrc32c int64 `json:"ciphertextCrc32c,omitempty,string"` + + // InitializationVector: Required. The initialization vector (IV) used + // during encryption, which must match the data originally provided in + // RawEncryptResponse.initialization_vector. + InitializationVector string `json:"initializationVector,omitempty"` + + // InitializationVectorCrc32c: Optional. An optional CRC32C checksum of + // the RawDecryptRequest.initialization_vector. If specified, + // KeyManagementService will verify the integrity of the received + // initialization_vector using this checksum. KeyManagementService will + // report an error if the checksum verification fails. If you receive a + // checksum error, your client should verify that + // CRC32C(initialization_vector) is equal to + // initialization_vector_crc32c, and if so, perform a limited number of + // retries. A persistent mismatch may indicate an issue in your + // computation of the CRC32C checksum. Note: This field is defined as + // int64 for reasons of compatibility across different languages. + // However, it is a non-negative integer, which will never exceed + // 2^32-1, and can be safely downconverted to uint32 in languages that + // support this type. + InitializationVectorCrc32c int64 `json:"initializationVectorCrc32c,omitempty,string"` + + // TagLength: The length of the authentication tag that is appended to + // the end of the ciphertext. If unspecified (0), the default value for + // the key's algorithm will be used (for AES-GCM, the default value is + // 16). + TagLength int64 `json:"tagLength,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "AdditionalAuthenticatedData") 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. + // "AdditionalAuthenticatedData") 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 *RawDecryptRequest) MarshalJSON() ([]byte, error) { + type NoMethod RawDecryptRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// RawDecryptResponse: Response message for +// KeyManagementService.RawDecrypt. +type RawDecryptResponse struct { + // Plaintext: The decrypted data. + Plaintext string `json:"plaintext,omitempty"` + + // PlaintextCrc32c: Integrity verification field. A CRC32C checksum of + // the returned RawDecryptResponse.plaintext. An integrity check of + // plaintext can be performed by computing the CRC32C checksum of + // plaintext and comparing your results to this field. Discard the + // response in case of non-matching checksum values, and perform a + // limited number of retries. A persistent mismatch may indicate an + // issue in your computation of the CRC32C checksum. Note: receiving + // this response message indicates that KeyManagementService is able to + // successfully decrypt the ciphertext. Note: This field is defined as + // int64 for reasons of compatibility across different languages. + // However, it is a non-negative integer, which will never exceed + // 2^32-1, and can be safely downconverted to uint32 in languages that + // support this type. + PlaintextCrc32c int64 `json:"plaintextCrc32c,omitempty,string"` + + // ProtectionLevel: The ProtectionLevel of the CryptoKeyVersion used in + // decryption. + // + // Possible values: + // "PROTECTION_LEVEL_UNSPECIFIED" - Not specified. + // "SOFTWARE" - Crypto operations are performed in software. + // "HSM" - Crypto operations are performed in a Hardware Security + // Module. + // "EXTERNAL" - Crypto operations are performed by an external key + // manager. + // "EXTERNAL_VPC" - Crypto operations are performed in an EKM-over-VPC + // backend. + ProtectionLevel string `json:"protectionLevel,omitempty"` + + // VerifiedAdditionalAuthenticatedDataCrc32c: Integrity verification + // field. A flag indicating whether + // RawDecryptRequest.additional_authenticated_data_crc32c was received + // by KeyManagementService and used for the integrity verification of + // additional_authenticated_data. A false value of this field indicates + // either that // RawDecryptRequest.additional_authenticated_data_crc32c + // was left unset or that it was not delivered to KeyManagementService. + // If you've set RawDecryptRequest.additional_authenticated_data_crc32c + // but this field is still false, discard the response and perform a + // limited number of retries. + VerifiedAdditionalAuthenticatedDataCrc32c bool `json:"verifiedAdditionalAuthenticatedDataCrc32c,omitempty"` + + // VerifiedCiphertextCrc32c: Integrity verification field. A flag + // indicating whether RawDecryptRequest.ciphertext_crc32c was received + // by KeyManagementService and used for the integrity verification of + // the ciphertext. A false value of this field indicates either that + // RawDecryptRequest.ciphertext_crc32c was left unset or that it was not + // delivered to KeyManagementService. If you've set + // RawDecryptRequest.ciphertext_crc32c but this field is still false, + // discard the response and perform a limited number of retries. + VerifiedCiphertextCrc32c bool `json:"verifiedCiphertextCrc32c,omitempty"` + + // VerifiedInitializationVectorCrc32c: Integrity verification field. A + // flag indicating whether + // RawDecryptRequest.initialization_vector_crc32c was received by + // KeyManagementService and used for the integrity verification of + // initialization_vector. A false value of this field indicates either + // that RawDecryptRequest.initialization_vector_crc32c was left unset or + // that it was not delivered to KeyManagementService. If you've set + // RawDecryptRequest.initialization_vector_crc32c but this field is + // still false, discard the response and perform a limited number of + // retries. + VerifiedInitializationVectorCrc32c bool `json:"verifiedInitializationVectorCrc32c,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "Plaintext") 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. "Plaintext") 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 *RawDecryptResponse) MarshalJSON() ([]byte, error) { + type NoMethod RawDecryptResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// RawEncryptRequest: Request message for +// KeyManagementService.RawEncrypt. +type RawEncryptRequest struct { + // AdditionalAuthenticatedData: Optional. Optional data that, if + // specified, must also be provided during decryption through + // RawDecryptRequest.additional_authenticated_data. This field may only + // be used in conjunction with an algorithm that accepts additional + // authenticated data (for example, AES-GCM). The maximum size depends + // on the key version's protection_level. For SOFTWARE keys, the + // plaintext must be no larger than 64KiB. For HSM keys, the combined + // length of the plaintext and additional_authenticated_data fields must + // be no larger than 8KiB. + AdditionalAuthenticatedData string `json:"additionalAuthenticatedData,omitempty"` + + // AdditionalAuthenticatedDataCrc32c: Optional. An optional CRC32C + // checksum of the RawEncryptRequest.additional_authenticated_data. If + // specified, KeyManagementService will verify the integrity of the + // received additional_authenticated_data using this checksum. + // KeyManagementService will report an error if the checksum + // verification fails. If you receive a checksum error, your client + // should verify that CRC32C(additional_authenticated_data) is equal to + // additional_authenticated_data_crc32c, and if so, perform a limited + // number of retries. A persistent mismatch may indicate an issue in + // your computation of the CRC32C checksum. Note: This field is defined + // as int64 for reasons of compatibility across different languages. + // However, it is a non-negative integer, which will never exceed + // 2^32-1, and can be safely downconverted to uint32 in languages that + // support this type. + AdditionalAuthenticatedDataCrc32c int64 `json:"additionalAuthenticatedDataCrc32c,omitempty,string"` + + // InitializationVector: Optional. A customer-supplied initialization + // vector that will be used for encryption. If it is not provided for + // AES-CBC and AES-CTR, one will be generated. It will be returned in + // RawEncryptResponse.initialization_vector. + InitializationVector string `json:"initializationVector,omitempty"` + + // InitializationVectorCrc32c: Optional. An optional CRC32C checksum of + // the RawEncryptRequest.initialization_vector. If specified, + // KeyManagementService will verify the integrity of the received + // initialization_vector using this checksum. KeyManagementService will + // report an error if the checksum verification fails. If you receive a + // checksum error, your client should verify that + // CRC32C(initialization_vector) is equal to + // initialization_vector_crc32c, and if so, perform a limited number of + // retries. A persistent mismatch may indicate an issue in your + // computation of the CRC32C checksum. Note: This field is defined as + // int64 for reasons of compatibility across different languages. + // However, it is a non-negative integer, which will never exceed + // 2^32-1, and can be safely downconverted to uint32 in languages that + // support this type. + InitializationVectorCrc32c int64 `json:"initializationVectorCrc32c,omitempty,string"` + + // Plaintext: Required. The data to encrypt. Must be no larger than + // 64KiB. The maximum size depends on the key version's + // protection_level. For SOFTWARE keys, the plaintext must be no larger + // than 64KiB. For HSM keys, the combined length of the plaintext and + // additional_authenticated_data fields must be no larger than 8KiB. + Plaintext string `json:"plaintext,omitempty"` + + // PlaintextCrc32c: Optional. An optional CRC32C checksum of the + // RawEncryptRequest.plaintext. If specified, KeyManagementService will + // verify the integrity of the received plaintext using this checksum. + // KeyManagementService will report an error if the checksum + // verification fails. If you receive a checksum error, your client + // should verify that CRC32C(plaintext) is equal to plaintext_crc32c, + // and if so, perform a limited number of retries. A persistent mismatch + // may indicate an issue in your computation of the CRC32C checksum. + // Note: This field is defined as int64 for reasons of compatibility + // across different languages. However, it is a non-negative integer, + // which will never exceed 2^32-1, and can be safely downconverted to + // uint32 in languages that support this type. + PlaintextCrc32c int64 `json:"plaintextCrc32c,omitempty,string"` + + // ForceSendFields is a list of field names (e.g. + // "AdditionalAuthenticatedData") 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. + // "AdditionalAuthenticatedData") 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 *RawEncryptRequest) MarshalJSON() ([]byte, error) { + type NoMethod RawEncryptRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// RawEncryptResponse: Response message for +// KeyManagementService.RawEncrypt. +type RawEncryptResponse struct { + // Ciphertext: The encrypted data. In the case of AES-GCM, the + // authentication tag is the tag_length bytes at the end of this field. + Ciphertext string `json:"ciphertext,omitempty"` + + // CiphertextCrc32c: Integrity verification field. A CRC32C checksum of + // the returned RawEncryptResponse.ciphertext. An integrity check of + // ciphertext can be performed by computing the CRC32C checksum of + // ciphertext and comparing your results to this field. Discard the + // response in case of non-matching checksum values, and perform a + // limited number of retries. A persistent mismatch may indicate an + // issue in your computation of the CRC32C checksum. Note: This field is + // defined as int64 for reasons of compatibility across different + // languages. However, it is a non-negative integer, which will never + // exceed 2^32-1, and can be safely downconverted to uint32 in languages + // that support this type. + CiphertextCrc32c int64 `json:"ciphertextCrc32c,omitempty,string"` + + // InitializationVector: The initialization vector (IV) generated by the + // service during encryption. This value must be stored and provided in + // RawDecryptRequest.initialization_vector at decryption time. + InitializationVector string `json:"initializationVector,omitempty"` + + // InitializationVectorCrc32c: Integrity verification field. A CRC32C + // checksum of the returned RawEncryptResponse.initialization_vector. An + // integrity check of initialization_vector can be performed by + // computing the CRC32C checksum of initialization_vector and comparing + // your results to this field. Discard the response in case of + // non-matching checksum values, and perform a limited number of + // retries. A persistent mismatch may indicate an issue in your + // computation of the CRC32C checksum. Note: This field is defined as + // int64 for reasons of compatibility across different languages. + // However, it is a non-negative integer, which will never exceed + // 2^32-1, and can be safely downconverted to uint32 in languages that + // support this type. + InitializationVectorCrc32c int64 `json:"initializationVectorCrc32c,omitempty,string"` + + // Name: The resource name of the CryptoKeyVersion used in encryption. + // Check this field to verify that the intended resource was used for + // encryption. + Name string `json:"name,omitempty"` + + // ProtectionLevel: The ProtectionLevel of the CryptoKeyVersion used in + // encryption. + // + // Possible values: + // "PROTECTION_LEVEL_UNSPECIFIED" - Not specified. + // "SOFTWARE" - Crypto operations are performed in software. + // "HSM" - Crypto operations are performed in a Hardware Security + // Module. + // "EXTERNAL" - Crypto operations are performed by an external key + // manager. + // "EXTERNAL_VPC" - Crypto operations are performed in an EKM-over-VPC + // backend. + ProtectionLevel string `json:"protectionLevel,omitempty"` + + // TagLength: The length of the authentication tag that is appended to + // the end of the ciphertext. + TagLength int64 `json:"tagLength,omitempty"` + + // VerifiedAdditionalAuthenticatedDataCrc32c: Integrity verification + // field. A flag indicating whether + // RawEncryptRequest.additional_authenticated_data_crc32c was received + // by KeyManagementService and used for the integrity verification of + // additional_authenticated_data. A false value of this field indicates + // either that // RawEncryptRequest.additional_authenticated_data_crc32c + // was left unset or that it was not delivered to KeyManagementService. + // If you've set RawEncryptRequest.additional_authenticated_data_crc32c + // but this field is still false, discard the response and perform a + // limited number of retries. + VerifiedAdditionalAuthenticatedDataCrc32c bool `json:"verifiedAdditionalAuthenticatedDataCrc32c,omitempty"` + + // VerifiedInitializationVectorCrc32c: Integrity verification field. A + // flag indicating whether + // RawEncryptRequest.initialization_vector_crc32c was received by + // KeyManagementService and used for the integrity verification of + // initialization_vector. A false value of this field indicates either + // that RawEncryptRequest.initialization_vector_crc32c was left unset or + // that it was not delivered to KeyManagementService. If you've set + // RawEncryptRequest.initialization_vector_crc32c but this field is + // still false, discard the response and perform a limited number of + // retries. + VerifiedInitializationVectorCrc32c bool `json:"verifiedInitializationVectorCrc32c,omitempty"` + + // VerifiedPlaintextCrc32c: Integrity verification field. A flag + // indicating whether RawEncryptRequest.plaintext_crc32c was received by + // KeyManagementService and used for the integrity verification of the + // plaintext. A false value of this field indicates either that + // RawEncryptRequest.plaintext_crc32c was left unset or that it was not + // delivered to KeyManagementService. If you've set + // RawEncryptRequest.plaintext_crc32c but this field is still false, + // discard the response and perform a limited number of retries. + VerifiedPlaintextCrc32c bool `json:"verifiedPlaintextCrc32c,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "Ciphertext") 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. "Ciphertext") 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 *RawEncryptResponse) MarshalJSON() ([]byte, error) { + type NoMethod RawEncryptResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // RestoreCryptoKeyVersionRequest: Request message for // KeyManagementService.RestoreCryptoKeyVersion. type RestoreCryptoKeyVersionRequest struct { @@ -10271,6 +10694,298 @@ func (c *ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsPatchCall) Do(opts } +// method id "cloudkms.projects.locations.keyRings.cryptoKeys.cryptoKeyVersions.rawDecrypt": + +type ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsRawDecryptCall struct { + s *Service + name string + rawdecryptrequest *RawDecryptRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// RawDecrypt: Decrypts data that was originally encrypted using a raw +// cryptographic mechanism. The CryptoKey.purpose must be +// RAW_ENCRYPT_DECRYPT. +// +// - name: The resource name of the CryptoKeyVersion to use for +// decryption. +func (r *ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsService) RawDecrypt(name string, rawdecryptrequest *RawDecryptRequest) *ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsRawDecryptCall { + c := &ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsRawDecryptCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + c.rawdecryptrequest = rawdecryptrequest + 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 *ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsRawDecryptCall) Fields(s ...googleapi.Field) *ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsRawDecryptCall { + 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 *ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsRawDecryptCall) Context(ctx context.Context) *ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsRawDecryptCall { + 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 *ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsRawDecryptCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsRawDecryptCall) 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.rawdecryptrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}:rawDecrypt") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("POST", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "cloudkms.projects.locations.keyRings.cryptoKeys.cryptoKeyVersions.rawDecrypt" call. +// Exactly one of *RawDecryptResponse or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *RawDecryptResponse.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 *ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsRawDecryptCall) Do(opts ...googleapi.CallOption) (*RawDecryptResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &RawDecryptResponse{ + 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": "Decrypts data that was originally encrypted using a raw cryptographic mechanism. The CryptoKey.purpose must be RAW_ENCRYPT_DECRYPT.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}/cryptoKeys/{cryptoKeysId}/cryptoKeyVersions/{cryptoKeyVersionsId}:rawDecrypt", + // "httpMethod": "POST", + // "id": "cloudkms.projects.locations.keyRings.cryptoKeys.cryptoKeyVersions.rawDecrypt", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Required. The resource name of the CryptoKeyVersion to use for decryption.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+/cryptoKeys/[^/]+/cryptoKeyVersions/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+name}:rawDecrypt", + // "request": { + // "$ref": "RawDecryptRequest" + // }, + // "response": { + // "$ref": "RawDecryptResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/cloudkms" + // ] + // } + +} + +// method id "cloudkms.projects.locations.keyRings.cryptoKeys.cryptoKeyVersions.rawEncrypt": + +type ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsRawEncryptCall struct { + s *Service + name string + rawencryptrequest *RawEncryptRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// RawEncrypt: Encrypts data using portable cryptographic primitives. +// Most users should choose Encrypt and Decrypt rather than their raw +// counterparts. The CryptoKey.purpose must be RAW_ENCRYPT_DECRYPT. +// +// - name: The resource name of the CryptoKeyVersion to use for +// encryption. +func (r *ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsService) RawEncrypt(name string, rawencryptrequest *RawEncryptRequest) *ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsRawEncryptCall { + c := &ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsRawEncryptCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + c.rawencryptrequest = rawencryptrequest + 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 *ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsRawEncryptCall) Fields(s ...googleapi.Field) *ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsRawEncryptCall { + 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 *ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsRawEncryptCall) Context(ctx context.Context) *ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsRawEncryptCall { + 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 *ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsRawEncryptCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsRawEncryptCall) 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.rawencryptrequest) + if err != nil { + return nil, err + } + reqHeaders.Set("Content-Type", "application/json") + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}:rawEncrypt") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("POST", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "cloudkms.projects.locations.keyRings.cryptoKeys.cryptoKeyVersions.rawEncrypt" call. +// Exactly one of *RawEncryptResponse or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *RawEncryptResponse.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 *ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsRawEncryptCall) Do(opts ...googleapi.CallOption) (*RawEncryptResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &RawEncryptResponse{ + 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": "Encrypts data using portable cryptographic primitives. Most users should choose Encrypt and Decrypt rather than their raw counterparts. The CryptoKey.purpose must be RAW_ENCRYPT_DECRYPT.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}/cryptoKeys/{cryptoKeysId}/cryptoKeyVersions/{cryptoKeyVersionsId}:rawEncrypt", + // "httpMethod": "POST", + // "id": "cloudkms.projects.locations.keyRings.cryptoKeys.cryptoKeyVersions.rawEncrypt", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Required. The resource name of the CryptoKeyVersion to use for encryption.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+/cryptoKeys/[^/]+/cryptoKeyVersions/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+name}:rawEncrypt", + // "request": { + // "$ref": "RawEncryptRequest" + // }, + // "response": { + // "$ref": "RawEncryptResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/cloudkms" + // ] + // } + +} + // method id "cloudkms.projects.locations.keyRings.cryptoKeys.cryptoKeyVersions.restore": type ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsRestoreCall struct { diff --git a/cloudsupport/v2/cloudsupport-api.json b/cloudsupport/v2/cloudsupport-api.json new file mode 100644 index 00000000000..0cc4f8c7b9a --- /dev/null +++ b/cloudsupport/v2/cloudsupport-api.json @@ -0,0 +1,1386 @@ +{ + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "See, edit, configure, and delete your Google Cloud data and see the email address for your Google Account." + } + } + } + }, + "basePath": "", + "baseUrl": "https://cloudsupport.googleapis.com/", + "batchPath": "batch", + "canonicalName": "Cloud Support", + "description": "Manages Google Cloud technical support cases for Customer Care support offerings. ", + "discoveryVersion": "v1", + "documentationLink": "https://cloud.google.com/support/docs/apis", + "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": "cloudsupport:v2", + "kind": "discovery#restDescription", + "mtlsRootUrl": "https://cloudsupport.mtls.googleapis.com/", + "name": "cloudsupport", + "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": { + "caseClassifications": { + "methods": { + "search": { + "description": "Retrieve valid classifications to be used when creating a support case. The classications are hierarchical, with each classification containing all levels of the hierarchy, separated by `\" \u003e \"`. For example `\"Technical Issue \u003e Compute \u003e Compute Engine\"`. Classification IDs returned by `caseClassifications.search` are guaranteed to be valid for at least 6 months. If a given classification is deactiveated, it will immediately stop being returned. After 6 months, `case.create` requests using the classification ID will fail.", + "flatPath": "v2/caseClassifications:search", + "httpMethod": "GET", + "id": "cloudsupport.caseClassifications.search", + "parameterOrder": [], + "parameters": { + "pageSize": { + "description": "The maximum number of cases fetched with each request.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "A token identifying the page of results to return. If unspecified, the first page is retrieved.", + "location": "query", + "type": "string" + }, + "query": { + "description": "An expression written in the Google Cloud filter language. If non-empty, then only cases whose fields match the filter are returned. If empty, then no messages are filtered out.", + "location": "query", + "type": "string" + } + }, + "path": "v2/caseClassifications:search", + "response": { + "$ref": "SearchCaseClassificationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "cases": { + "methods": { + "close": { + "description": "Close the specified case.", + "flatPath": "v2/{v2Id}/{v2Id1}/cases/{casesId}:close", + "httpMethod": "POST", + "id": "cloudsupport.cases.close", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The fully qualified name of the case resource to be closed.", + "location": "path", + "pattern": "^[^/]+/[^/]+/cases/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+name}:close", + "request": { + "$ref": "CloseCaseRequest" + }, + "response": { + "$ref": "Case" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "create": { + "description": "Create a new case and associate it with the given Google Cloud Resource. The case object must have the following fields set: `display_name`, `description`, `classification`, and `priority`.", + "flatPath": "v2/{v2Id}/{v2Id1}/cases", + "httpMethod": "POST", + "id": "cloudsupport.cases.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The name of the Google Cloud Resource under which the case should be created.", + "location": "path", + "pattern": "^[^/]+/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+parent}/cases", + "request": { + "$ref": "Case" + }, + "response": { + "$ref": "Case" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "escalate": { + "description": "Escalate a case. Escalating a case will initiate the Google Cloud Support escalation management process. This operation is only available to certain Customer Care tiers. Go to https://cloud.google.com/support and look for 'Technical support escalations' in the feature list to find out which tiers are able to perform escalations.", + "flatPath": "v2/{v2Id}/{v2Id1}/cases/{casesId}:escalate", + "httpMethod": "POST", + "id": "cloudsupport.cases.escalate", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The fully qualified name of the Case resource to be escalated.", + "location": "path", + "pattern": "^[^/]+/[^/]+/cases/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+name}:escalate", + "request": { + "$ref": "EscalateCaseRequest" + }, + "response": { + "$ref": "Case" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Retrieve the specified case.", + "flatPath": "v2/{v2Id}/{v2Id1}/cases/{casesId}", + "httpMethod": "GET", + "id": "cloudsupport.cases.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The fully qualified name of a case to be retrieved.", + "location": "path", + "pattern": "^[^/]+/[^/]+/cases/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+name}", + "response": { + "$ref": "Case" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Retrieve all cases under the specified parent. Note: Listing cases under an Organization returns only the cases directly parented by that organization. To retrieve all cases under an organization, including cases parented by projects under that organization, use `cases.search`.", + "flatPath": "v2/{v2Id}/{v2Id1}/cases", + "httpMethod": "GET", + "id": "cloudsupport.cases.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "An expression written in filter language. If non-empty, the query returns the cases that match the filter. Else, the query doesn't filter the cases. Filter expressions use the following fields with the operators equals (`=`) and `AND`: - `state`: The accepted values are `OPEN` or `CLOSED`. - `priority`: The accepted values are `P0`, `P1`, `P2`, `P3`, or `P4`. You can specify multiple values for priority using the `OR` operator. For example, `priority=P1 OR priority=P2`. - `creator.email`: The email address of the case creator. Examples: - `state=CLOSED` - `state=OPEN AND creator.email=\"tester@example.com\"` - `state=OPEN AND (priority=P0 OR priority=P1)`", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "The maximum number of cases fetched with each request. Defaults to 10.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "A token identifying the page of results to return. If unspecified, the first page is retrieved.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The fully qualified name of parent resource to list cases under.", + "location": "path", + "pattern": "^[^/]+/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+parent}/cases", + "response": { + "$ref": "ListCasesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Update the specified case. Only a subset of fields can be updated.", + "flatPath": "v2/{v2Id}/{v2Id1}/cases/{casesId}", + "httpMethod": "PATCH", + "id": "cloudsupport.cases.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The resource name for the case.", + "location": "path", + "pattern": "^[^/]+/[^/]+/cases/[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "A list of attributes of the case object that should be updated as part of this request. Supported values are `priority`, `display_name`, and `subscriber_email_addresses`. If no fields are specified, all supported fields are updated. WARNING: If you do not provide a field mask, then you might accidentally clear some fields. For example, if you leave the field mask empty and do not provide a value for `subscriber_email_addresses`, then `subscriber_email_addresses` is updated to empty.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v2/{+name}", + "request": { + "$ref": "Case" + }, + "response": { + "$ref": "Case" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "search": { + "description": "Search cases using the specified query.", + "flatPath": "v2/{v2Id}/{v2Id1}/cases:search", + "httpMethod": "GET", + "id": "cloudsupport.cases.search", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "The maximum number of cases fetched with each request. The default page size is 10.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "A token identifying the page of results to return. If unspecified, the first page is retrieved.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "The fully qualified name of parent resource to search cases under.", + "location": "path", + "pattern": "^[^/]+/[^/]+$", + "required": true, + "type": "string" + }, + "query": { + "description": "An expression written in filter language. A query uses the following fields with the operators equals (`=`) and `AND`: - `organization`: An organization name in the form `organizations/`. - `project`: A project name in the form `projects/`. - `state`: The accepted values are `OPEN` or `CLOSED`. - `priority`: The accepted values are `P0`, `P1`, `P2`, `P3`, or `P4`. You can specify multiple values for priority using the `OR` operator. For example, `priority=P1 OR priority=P2`. - `creator.email`: The email address of the case creator. - `billingAccount`: A billing account in the form `billingAccounts/` You must specify either `organization` or `project`. To search across `displayName`, `description`, and comments, use a global restriction with no keyword or operator. For example, `\"my search\"`. To search only cases updated after a certain date, use `update_time` restricted with that particular date, time, and timezone in ISO datetime format. For example, `update_time\u003e\"2020-01-01T00:00:00-05:00\"`. `update_time` only supports the greater than operator (`\u003e`). Examples: - `organization=\"organizations/123456789\"` - `project=\"projects/my-project-id\"` - `project=\"projects/123456789\"` - `billing_account=\"billingAccounts/123456-A0B0C0-CUZ789\"` - `organization=\"organizations/123456789\" AND state=CLOSED` - `project=\"projects/my-project-id\" AND creator.email=\"tester@example.com\"` - `project=\"projects/my-project-id\" AND (priority=P0 OR priority=P1)`", + "location": "query", + "type": "string" + } + }, + "path": "v2/{+parent}/cases:search", + "response": { + "$ref": "SearchCasesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, + "resources": { + "attachments": { + "methods": { + "list": { + "description": "Retrieve all attachments associated with a support case.", + "flatPath": "v2/{v2Id}/{v2Id1}/cases/{casesId}/attachments", + "httpMethod": "GET", + "id": "cloudsupport.cases.attachments.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "The maximum number of attachments fetched with each request. If not provided, the default is 10. The maximum page size that will be returned is 100.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "A token identifying the page of results to return. If unspecified, the first page is retrieved.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The resource name of Case object for which attachments should be listed.", + "location": "path", + "pattern": "^[^/]+/[^/]+/cases/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+parent}/attachments", + "response": { + "$ref": "ListAttachmentsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "comments": { + "methods": { + "create": { + "description": "Add a new comment to the specified Case. The comment object must have the following fields set: body.", + "flatPath": "v2/{v2Id}/{v2Id1}/cases/{casesId}/comments", + "httpMethod": "POST", + "id": "cloudsupport.cases.comments.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The resource name of Case to which this comment should be added.", + "location": "path", + "pattern": "^[^/]+/[^/]+/cases/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+parent}/comments", + "request": { + "$ref": "Comment" + }, + "response": { + "$ref": "Comment" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Retrieve all Comments associated with the Case object.", + "flatPath": "v2/{v2Id}/{v2Id1}/cases/{casesId}/comments", + "httpMethod": "GET", + "id": "cloudsupport.cases.comments.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "The maximum number of comments fetched with each request. Defaults to 10.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "A token identifying the page of results to return. If unspecified, the first page is retrieved.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The resource name of Case object for which comments should be listed.", + "location": "path", + "pattern": "^[^/]+/[^/]+/cases/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+parent}/comments", + "response": { + "$ref": "ListCommentsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } + }, + "media": { + "methods": { + "download": { + "description": "Download a file attachment on a case. Note: HTTP requests must append \"?alt=media\" to the URL.", + "flatPath": "v2/{v2Id}/{v2Id1}/cases/{casesId}/attachments/{attachmentsId}:download", + "httpMethod": "GET", + "id": "cloudsupport.media.download", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The resource name of the attachment to be downloaded.", + "location": "path", + "pattern": "^[^/]+/[^/]+/cases/[^/]+/attachments/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+name}:download", + "response": { + "$ref": "Media" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "supportsMediaDownload": true, + "useMediaDownloadService": true + }, + "upload": { + "description": "Create a file attachment on a case or Cloud resource. The attachment object must have the following fields set: filename.", + "flatPath": "v2/{v2Id}/{v2Id1}/cases/{casesId}/attachments", + "httpMethod": "POST", + "id": "cloudsupport.media.upload", + "mediaUpload": { + "accept": [ + "*/*" + ], + "protocols": { + "simple": { + "multipart": true, + "path": "/upload/v2/{+parent}/attachments" + } + } + }, + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The resource name of the case (or case parent) to which the attachment should be attached.", + "location": "path", + "pattern": "^[^/]+/[^/]+/cases/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v2/{+parent}/attachments", + "request": { + "$ref": "CreateAttachmentRequest" + }, + "response": { + "$ref": "Attachment" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ], + "supportsMediaUpload": true + } + } + } + }, + "revision": "20230626", + "rootUrl": "https://cloudsupport.googleapis.com/", + "schemas": { + "Actor": { + "description": "An object containing information about the effective user and authenticated principal responsible for an action.", + "id": "Actor", + "properties": { + "displayName": { + "description": "The name to display for the actor. If not provided, it is inferred from credentials supplied during case creation. When an email is provided, a display name must also be provided. This will be obfuscated if the user is a Google Support agent.", + "type": "string" + }, + "email": { + "description": "The email address of the actor. If not provided, it is inferred from credentials supplied during case creation. If the authenticated principal does not have an email address, one must be provided. When a name is provided, an email must also be provided. This will be obfuscated if the user is a Google Support agent.", + "type": "string" + }, + "googleSupport": { + "description": "Output only. Whether the actor is a Google support actor.", + "readOnly": true, + "type": "boolean" + } + }, + "type": "object" + }, + "Attachment": { + "description": "Represents a file attached to a support case.", + "id": "Attachment", + "properties": { + "createTime": { + "description": "Output only. The time at which the attachment was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "creator": { + "$ref": "Actor", + "description": "Output only. The user who uploaded the attachment. Note, the name and email will be obfuscated if the attachment was uploaded by Google support.", + "readOnly": true + }, + "filename": { + "description": "The filename of the attachment (e.g. `\"graph.jpg\"`).", + "type": "string" + }, + "mimeType": { + "description": "Output only. The MIME type of the attachment (e.g. text/plain).", + "readOnly": true, + "type": "string" + }, + "name": { + "description": "Output only. The resource name of the attachment.", + "readOnly": true, + "type": "string" + }, + "sizeBytes": { + "description": "Output only. The size of the attachment in bytes.", + "format": "int64", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "Blobstore2Info": { + "description": "# gdata.* are outside protos with mising documentation", + "id": "Blobstore2Info", + "properties": { + "blobGeneration": { + "description": "# gdata.* are outside protos with mising documentation", + "format": "int64", + "type": "string" + }, + "blobId": { + "description": "# gdata.* are outside protos with mising documentation", + "type": "string" + }, + "downloadReadHandle": { + "description": "# gdata.* are outside protos with mising documentation", + "format": "byte", + "type": "string" + }, + "readToken": { + "description": "# gdata.* are outside protos with mising documentation", + "type": "string" + }, + "uploadMetadataContainer": { + "description": "# gdata.* are outside protos with mising documentation", + "format": "byte", + "type": "string" + } + }, + "type": "object" + }, + "Case": { + "description": "A support case.", + "id": "Case", + "properties": { + "classification": { + "$ref": "CaseClassification", + "description": "The issue classification applicable to this case." + }, + "contactEmail": { + "description": "A user-supplied email address to send case update notifications for. This should only be used in BYOID flows, where we cannot infer the user's email address directly from their EUCs.", + "type": "string" + }, + "createTime": { + "description": "Output only. The time this case was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "creator": { + "$ref": "Actor", + "description": "The user who created the case. Note: The name and email will be obfuscated if the case was created by Google Support." + }, + "description": { + "description": "A broad description of the issue.", + "type": "string" + }, + "displayName": { + "description": "The short summary of the issue reported in this case.", + "type": "string" + }, + "escalated": { + "description": "Whether the case is currently escalated.", + "type": "boolean" + }, + "languageCode": { + "description": "The language the user has requested to receive support in. This should be a BCP 47 language code (e.g., `\"en\"`, `\"zh-CN\"`, `\"zh-TW\"`, `\"ja\"`, `\"ko\"`). If no language or an unsupported language is specified, this field defaults to English (en). Language selection during case creation may affect your available support options. For a list of supported languages and their support working hours, see: https://cloud.google.com/support/docs/language-working-hours", + "type": "string" + }, + "name": { + "description": "The resource name for the case.", + "type": "string" + }, + "priority": { + "description": "The priority of this case.", + "enum": [ + "PRIORITY_UNSPECIFIED", + "P0", + "P1", + "P2", + "P3", + "P4" + ], + "enumDescriptions": [ + "Priority is undefined or has not been set yet.", + "Extreme impact on a production service. Service is hard down.", + "Critical impact on a production service. Service is currently unusable.", + "Severe impact on a production service. Service is usable but greatly impaired.", + "Medium impact on a production service. Service is available, but moderately impaired.", + "General questions or minor issues. Production service is fully available." + ], + "type": "string" + }, + "state": { + "description": "Output only. The current status of the support case.", + "enum": [ + "STATE_UNSPECIFIED", + "NEW", + "IN_PROGRESS_GOOGLE_SUPPORT", + "ACTION_REQUIRED", + "SOLUTION_PROVIDED", + "CLOSED" + ], + "enumDescriptions": [ + "Case is in an unknown state.", + "The case has been created but no one is assigned to work on it yet.", + "The case is currently being handled by Google support.", + "Google is waiting for a response.", + "A solution has been offered for the case, but it isn't yet closed.", + "The case has been resolved." + ], + "readOnly": true, + "type": "string" + }, + "subscriberEmailAddresses": { + "description": "The email addresses to receive updates on this case.", + "items": { + "type": "string" + }, + "type": "array" + }, + "testCase": { + "description": "Whether this case was created for internal API testing and should not be acted on by the support team.", + "type": "boolean" + }, + "timeZone": { + "description": "The timezone of the user who created the support case. It should be in a format IANA recognizes: https://www.iana.org/time-zones. There is no additional validation done by the API.", + "type": "string" + }, + "updateTime": { + "description": "Output only. The time this case was last updated.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "CaseClassification": { + "description": "A classification object with a product type and value.", + "id": "CaseClassification", + "properties": { + "displayName": { + "description": "A display name for the classification. The display name is not static and can change. To uniquely and consistently identify classifications, use the `CaseClassification.id` field.", + "type": "string" + }, + "id": { + "description": "The unique ID for a classification. Must be specified for case creation. To retrieve valid classification IDs for case creation, use `caseClassifications.search`. Classification IDs returned by `caseClassifications.search` are guaranteed to be valid for at least 6 months. If a given classification is deactiveated, it will immediately stop being returned. After 6 months, `case.create` requests using the classification ID will fail.", + "type": "string" + } + }, + "type": "object" + }, + "CloseCaseRequest": { + "description": "The request message for the CloseCase endpoint.", + "id": "CloseCaseRequest", + "properties": {}, + "type": "object" + }, + "Comment": { + "description": "A comment associated with a support case.", + "id": "Comment", + "properties": { + "body": { + "description": "The full comment body. Maximum of 12800 characters. This can contain rich text syntax.", + "type": "string" + }, + "createTime": { + "description": "Output only. The time when this comment was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "creator": { + "$ref": "Actor", + "description": "Output only. The user or Google Support agent created this comment.", + "readOnly": true + }, + "name": { + "description": "Output only. The resource name for the comment.", + "readOnly": true, + "type": "string" + }, + "plainTextBody": { + "description": "Output only. DEPRECATED. An automatically generated plain text version of body with all rich text syntax stripped.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "CompositeMedia": { + "description": "# gdata.* are outside protos with mising documentation", + "id": "CompositeMedia", + "properties": { + "blobRef": { + "description": "# gdata.* are outside protos with mising documentation", + "format": "byte", + "type": "string" + }, + "blobstore2Info": { + "$ref": "Blobstore2Info", + "description": "# gdata.* are outside protos with mising documentation" + }, + "cosmoBinaryReference": { + "description": "# gdata.* are outside protos with mising documentation", + "format": "byte", + "type": "string" + }, + "crc32cHash": { + "description": "# gdata.* are outside protos with mising documentation", + "format": "uint32", + "type": "integer" + }, + "inline": { + "description": "# gdata.* are outside protos with mising documentation", + "format": "byte", + "type": "string" + }, + "length": { + "description": "# gdata.* are outside protos with mising documentation", + "format": "int64", + "type": "string" + }, + "md5Hash": { + "description": "# gdata.* are outside protos with mising documentation", + "format": "byte", + "type": "string" + }, + "objectId": { + "$ref": "ObjectId", + "description": "# gdata.* are outside protos with mising documentation" + }, + "path": { + "description": "# gdata.* are outside protos with mising documentation", + "type": "string" + }, + "referenceType": { + "description": "# gdata.* are outside protos with mising documentation", + "enum": [ + "PATH", + "BLOB_REF", + "INLINE", + "BIGSTORE_REF", + "COSMO_BINARY_REFERENCE" + ], + "enumDescriptions": [ + "# gdata.* are outside protos with mising documentation", + "# gdata.* are outside protos with mising documentation", + "# gdata.* are outside protos with mising documentation", + "# gdata.* are outside protos with mising documentation", + "# gdata.* are outside protos with mising documentation" + ], + "type": "string" + }, + "sha1Hash": { + "description": "# gdata.* are outside protos with mising documentation", + "format": "byte", + "type": "string" + } + }, + "type": "object" + }, + "ContentTypeInfo": { + "description": "# gdata.* are outside protos with mising documentation", + "id": "ContentTypeInfo", + "properties": { + "bestGuess": { + "description": "# gdata.* are outside protos with mising documentation", + "type": "string" + }, + "fromBytes": { + "description": "# gdata.* are outside protos with mising documentation", + "type": "string" + }, + "fromFileName": { + "description": "# gdata.* are outside protos with mising documentation", + "type": "string" + }, + "fromHeader": { + "description": "# gdata.* are outside protos with mising documentation", + "type": "string" + }, + "fromUrlPath": { + "description": "# gdata.* are outside protos with mising documentation", + "type": "string" + } + }, + "type": "object" + }, + "CreateAttachmentRequest": { + "description": "The request message for the CreateAttachment endpoint.", + "id": "CreateAttachmentRequest", + "properties": { + "attachment": { + "$ref": "Attachment", + "description": "Required. The attachment to be created." + } + }, + "type": "object" + }, + "DiffChecksumsResponse": { + "description": "# gdata.* are outside protos with mising documentation", + "id": "DiffChecksumsResponse", + "properties": { + "checksumsLocation": { + "$ref": "CompositeMedia", + "description": "# gdata.* are outside protos with mising documentation" + }, + "chunkSizeBytes": { + "description": "# gdata.* are outside protos with mising documentation", + "format": "int64", + "type": "string" + }, + "objectLocation": { + "$ref": "CompositeMedia", + "description": "# gdata.* are outside protos with mising documentation" + }, + "objectSizeBytes": { + "description": "# gdata.* are outside protos with mising documentation", + "format": "int64", + "type": "string" + }, + "objectVersion": { + "description": "# gdata.* are outside protos with mising documentation", + "type": "string" + } + }, + "type": "object" + }, + "DiffDownloadResponse": { + "description": "# gdata.* are outside protos with mising documentation", + "id": "DiffDownloadResponse", + "properties": { + "objectLocation": { + "$ref": "CompositeMedia", + "description": "# gdata.* are outside protos with mising documentation" + } + }, + "type": "object" + }, + "DiffUploadRequest": { + "description": "# gdata.* are outside protos with mising documentation", + "id": "DiffUploadRequest", + "properties": { + "checksumsInfo": { + "$ref": "CompositeMedia", + "description": "# gdata.* are outside protos with mising documentation" + }, + "objectInfo": { + "$ref": "CompositeMedia", + "description": "# gdata.* are outside protos with mising documentation" + }, + "objectVersion": { + "description": "# gdata.* are outside protos with mising documentation", + "type": "string" + } + }, + "type": "object" + }, + "DiffUploadResponse": { + "description": "# gdata.* are outside protos with mising documentation", + "id": "DiffUploadResponse", + "properties": { + "objectVersion": { + "description": "# gdata.* are outside protos with mising documentation", + "type": "string" + }, + "originalObject": { + "$ref": "CompositeMedia", + "description": "# gdata.* are outside protos with mising documentation" + } + }, + "type": "object" + }, + "DiffVersionResponse": { + "description": "# gdata.* are outside protos with mising documentation", + "id": "DiffVersionResponse", + "properties": { + "objectSizeBytes": { + "description": "# gdata.* are outside protos with mising documentation", + "format": "int64", + "type": "string" + }, + "objectVersion": { + "description": "# gdata.* are outside protos with mising documentation", + "type": "string" + } + }, + "type": "object" + }, + "DownloadParameters": { + "description": "# gdata.* are outside protos with mising documentation", + "id": "DownloadParameters", + "properties": { + "allowGzipCompression": { + "description": "# gdata.* are outside protos with mising documentation", + "type": "boolean" + }, + "ignoreRange": { + "description": "# gdata.* are outside protos with mising documentation", + "type": "boolean" + } + }, + "type": "object" + }, + "EscalateCaseRequest": { + "description": "The request message for the EscalateCase endpoint.", + "id": "EscalateCaseRequest", + "properties": { + "escalation": { + "$ref": "Escalation", + "description": "The escalation object to be sent with the escalation request." + } + }, + "type": "object" + }, + "Escalation": { + "description": "An escalation of a support case.", + "id": "Escalation", + "properties": { + "justification": { + "description": "Required. A free text description to accompany the `reason` field above. Provides additional context on why the case is being escalated.", + "type": "string" + }, + "reason": { + "description": "Required. The reason why the Case is being escalated.", + "enum": [ + "REASON_UNSPECIFIED", + "RESOLUTION_TIME", + "TECHNICAL_EXPERTISE", + "BUSINESS_IMPACT" + ], + "enumDescriptions": [ + "The escalation reason is in an unknown state or has not been specified.", + "The case is taking too long to resolve.", + "The support agent does not have the expertise required to successfully resolve the issue.", + "The issue is having a significant business impact." + ], + "type": "string" + } + }, + "type": "object" + }, + "ListAttachmentsResponse": { + "description": "The response message for the ListAttachments endpoint.", + "id": "ListAttachmentsResponse", + "properties": { + "attachments": { + "description": "The list of attachments associated with the given case.", + "items": { + "$ref": "Attachment" + }, + "type": "array" + }, + "nextPageToken": { + "description": "A token to retrieve the next page of results. This should be set in the `page_token` field of subsequent `cases.attachments.list` requests. If unspecified, there are no more results to retrieve.", + "type": "string" + } + }, + "type": "object" + }, + "ListCasesResponse": { + "description": "The response message for the ListCases endpoint.", + "id": "ListCasesResponse", + "properties": { + "cases": { + "description": "The list of cases associated with the Google Cloud Resource, after any filters have been applied.", + "items": { + "$ref": "Case" + }, + "type": "array" + }, + "nextPageToken": { + "description": "A token to retrieve the next page of results. This should be set in the `page_token` field of the subsequent `ListCasesRequest` message that is issued. If unspecified, there are no more results to retrieve.", + "type": "string" + } + }, + "type": "object" + }, + "ListCommentsResponse": { + "description": "The response message for the ListComments endpoint.", + "id": "ListCommentsResponse", + "properties": { + "comments": { + "description": "The list of Comments associated with the given Case.", + "items": { + "$ref": "Comment" + }, + "type": "array" + }, + "nextPageToken": { + "description": "A token to retrieve the next page of results. This should be set in the `page_token` field of subsequent `ListCommentsRequest` message that is issued. If unspecified, there are no more results to retrieve.", + "type": "string" + } + }, + "type": "object" + }, + "Media": { + "description": "# gdata.* are outside protos with mising documentation", + "id": "Media", + "properties": { + "algorithm": { + "description": "# gdata.* are outside protos with mising documentation", + "type": "string" + }, + "bigstoreObjectRef": { + "description": "# gdata.* are outside protos with mising documentation", + "format": "byte", + "type": "string" + }, + "blobRef": { + "description": "# gdata.* are outside protos with mising documentation", + "format": "byte", + "type": "string" + }, + "blobstore2Info": { + "$ref": "Blobstore2Info", + "description": "# gdata.* are outside protos with mising documentation" + }, + "compositeMedia": { + "description": "# gdata.* are outside protos with mising documentation", + "items": { + "$ref": "CompositeMedia" + }, + "type": "array" + }, + "contentType": { + "description": "# gdata.* are outside protos with mising documentation", + "type": "string" + }, + "contentTypeInfo": { + "$ref": "ContentTypeInfo", + "description": "# gdata.* are outside protos with mising documentation" + }, + "cosmoBinaryReference": { + "description": "# gdata.* are outside protos with mising documentation", + "format": "byte", + "type": "string" + }, + "crc32cHash": { + "description": "# gdata.* are outside protos with mising documentation", + "format": "uint32", + "type": "integer" + }, + "diffChecksumsResponse": { + "$ref": "DiffChecksumsResponse", + "description": "# gdata.* are outside protos with mising documentation" + }, + "diffDownloadResponse": { + "$ref": "DiffDownloadResponse", + "description": "# gdata.* are outside protos with mising documentation" + }, + "diffUploadRequest": { + "$ref": "DiffUploadRequest", + "description": "# gdata.* are outside protos with mising documentation" + }, + "diffUploadResponse": { + "$ref": "DiffUploadResponse", + "description": "# gdata.* are outside protos with mising documentation" + }, + "diffVersionResponse": { + "$ref": "DiffVersionResponse", + "description": "# gdata.* are outside protos with mising documentation" + }, + "downloadParameters": { + "$ref": "DownloadParameters", + "description": "# gdata.* are outside protos with mising documentation" + }, + "filename": { + "description": "# gdata.* are outside protos with mising documentation", + "type": "string" + }, + "hash": { + "description": "# gdata.* are outside protos with mising documentation", + "type": "string" + }, + "hashVerified": { + "description": "# gdata.* are outside protos with mising documentation", + "type": "boolean" + }, + "inline": { + "description": "# gdata.* are outside protos with mising documentation", + "format": "byte", + "type": "string" + }, + "isPotentialRetry": { + "description": "# gdata.* are outside protos with mising documentation", + "type": "boolean" + }, + "length": { + "description": "# gdata.* are outside protos with mising documentation", + "format": "int64", + "type": "string" + }, + "md5Hash": { + "description": "# gdata.* are outside protos with mising documentation", + "format": "byte", + "type": "string" + }, + "mediaId": { + "description": "# gdata.* are outside protos with mising documentation", + "format": "byte", + "type": "string" + }, + "objectId": { + "$ref": "ObjectId", + "description": "# gdata.* are outside protos with mising documentation" + }, + "path": { + "description": "# gdata.* are outside protos with mising documentation", + "type": "string" + }, + "referenceType": { + "description": "# gdata.* are outside protos with mising documentation", + "enum": [ + "PATH", + "BLOB_REF", + "INLINE", + "GET_MEDIA", + "COMPOSITE_MEDIA", + "BIGSTORE_REF", + "DIFF_VERSION_RESPONSE", + "DIFF_CHECKSUMS_RESPONSE", + "DIFF_DOWNLOAD_RESPONSE", + "DIFF_UPLOAD_REQUEST", + "DIFF_UPLOAD_RESPONSE", + "COSMO_BINARY_REFERENCE", + "ARBITRARY_BYTES" + ], + "enumDescriptions": [ + "# gdata.* are outside protos with mising documentation", + "# gdata.* are outside protos with mising documentation", + "# gdata.* are outside protos with mising documentation", + "# gdata.* are outside protos with mising documentation", + "# gdata.* are outside protos with mising documentation", + "# gdata.* are outside protos with mising documentation", + "# gdata.* are outside protos with mising documentation", + "# gdata.* are outside protos with mising documentation", + "# gdata.* are outside protos with mising documentation", + "# gdata.* are outside protos with mising documentation", + "# gdata.* are outside protos with mising documentation", + "# gdata.* are outside protos with mising documentation", + "# gdata.* are outside protos with mising documentation" + ], + "type": "string" + }, + "sha1Hash": { + "description": "# gdata.* are outside protos with mising documentation", + "format": "byte", + "type": "string" + }, + "sha256Hash": { + "description": "# gdata.* are outside protos with mising documentation", + "format": "byte", + "type": "string" + }, + "timestamp": { + "description": "# gdata.* are outside protos with mising documentation", + "format": "uint64", + "type": "string" + }, + "token": { + "description": "# gdata.* are outside protos with mising documentation", + "type": "string" + } + }, + "type": "object" + }, + "ObjectId": { + "description": "# gdata.* are outside protos with mising documentation", + "id": "ObjectId", + "properties": { + "bucketName": { + "description": "# gdata.* are outside protos with mising documentation", + "type": "string" + }, + "generation": { + "description": "# gdata.* are outside protos with mising documentation", + "format": "int64", + "type": "string" + }, + "objectName": { + "description": "# gdata.* are outside protos with mising documentation", + "type": "string" + } + }, + "type": "object" + }, + "SearchCaseClassificationsResponse": { + "description": "The response message for SearchCaseClassifications endpoint.", + "id": "SearchCaseClassificationsResponse", + "properties": { + "caseClassifications": { + "description": "The classifications retrieved.", + "items": { + "$ref": "CaseClassification" + }, + "type": "array" + }, + "nextPageToken": { + "description": "A token to retrieve the next page of results. This should be set in the `page_token` field of subsequent `SearchCaseClassificationsRequest` message that is issued. If unspecified, there are no more results to retrieve.", + "type": "string" + } + }, + "type": "object" + }, + "SearchCasesResponse": { + "description": "The response message for the SearchCases endpoint.", + "id": "SearchCasesResponse", + "properties": { + "cases": { + "description": "The list of cases associated with the Google Cloud Resource, after any filters have been applied.", + "items": { + "$ref": "Case" + }, + "type": "array" + }, + "nextPageToken": { + "description": "A token to retrieve the next page of results. This should be set in the `page_token` field of subsequent `SearchCaseRequest` message that is issued. If unspecified, there are no more results to retrieve.", + "type": "string" + } + }, + "type": "object" + }, + "WorkflowOperationMetadata": { + "description": "Metadata about the operation. Used to lookup the current status.", + "id": "WorkflowOperationMetadata", + "properties": { + "namespace": { + "description": "The namespace that the job was scheduled in. Must be included in the workflow metadata so the workflow status can be retrieved.", + "type": "string" + }, + "operationAction": { + "description": "The type of action the operation is classified as.", + "enum": [ + "OPERATION_ACTION_UNSPECIFIED", + "CREATE_SUPPORT_ACCOUNT", + "UPDATE_SUPPORT_ACCOUNT", + "PURCHASE_SUPPORT_ACCOUNT" + ], + "enumDescriptions": [ + "Operation action is not specified.", + "Operation pertains to the creation of a new support account.", + "Operation pertains to the updating of an existing support account.", + "Operation pertains to the purchasing of a support plan that may either create or update a support account." + ], + "type": "string" + }, + "workflowOperationType": { + "description": "Which version of the workflow service this operation came from.", + "enum": [ + "UNKNOWN_OPERATION_TYPE", + "WORKFLOWS_V1", + "WORKFLOWS_V2" + ], + "enumDescriptions": [ + "Unknown version.", + "Version 1.", + "Version 2." + ], + "type": "string" + } + }, + "type": "object" + } + }, + "servicePath": "", + "title": "Google Cloud Support API", + "version": "v2", + "version_module": true +} \ No newline at end of file diff --git a/cloudsupport/v2/cloudsupport-gen.go b/cloudsupport/v2/cloudsupport-gen.go new file mode 100644 index 00000000000..4d3ec564ac1 --- /dev/null +++ b/cloudsupport/v2/cloudsupport-gen.go @@ -0,0 +1,3718 @@ +// Copyright 2023 Google LLC. +// Use of this source code is governed by a BSD-style +// license that can be found in the LICENSE file. + +// Code generated file. DO NOT EDIT. + +// Package cloudsupport provides access to the Google Cloud Support API. +// +// For product documentation, see: https://cloud.google.com/support/docs/apis +// +// # Creating a client +// +// Usage example: +// +// import "google.golang.org/api/cloudsupport/v2" +// ... +// ctx := context.Background() +// cloudsupportService, err := cloudsupport.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: +// +// cloudsupportService, err := cloudsupport.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, ...) +// cloudsupportService, err := cloudsupport.NewService(ctx, option.WithTokenSource(config.TokenSource(ctx, token))) +// +// See https://godoc.org/google.golang.org/api/option/ for details on options. +package cloudsupport // import "google.golang.org/api/cloudsupport/v2" + +import ( + "bytes" + "context" + "encoding/json" + "errors" + "fmt" + "io" + "net/http" + "net/url" + "strconv" + "strings" + + googleapi "google.golang.org/api/googleapi" + internal "google.golang.org/api/internal" + gensupport "google.golang.org/api/internal/gensupport" + option "google.golang.org/api/option" + internaloption "google.golang.org/api/option/internaloption" + htransport "google.golang.org/api/transport/http" +) + +// Always reference these packages, just in case the auto-generated code +// below doesn't. +var _ = bytes.NewBuffer +var _ = strconv.Itoa +var _ = fmt.Sprintf +var _ = json.NewDecoder +var _ = io.Copy +var _ = url.Parse +var _ = gensupport.MarshalJSON +var _ = googleapi.Version +var _ = errors.New +var _ = strings.Replace +var _ = context.Canceled +var _ = internaloption.WithDefaultEndpoint +var _ = internal.Version + +const apiId = "cloudsupport:v2" +const apiName = "cloudsupport" +const apiVersion = "v2" +const basePath = "https://cloudsupport.googleapis.com/" +const mtlsBasePath = "https://cloudsupport.mtls.googleapis.com/" + +// OAuth2 scopes used by this API. +const ( + // See, edit, configure, and delete your Google Cloud data and see the + // email address for your Google Account. + CloudPlatformScope = "https://www.googleapis.com/auth/cloud-platform" +) + +// NewService creates a new Service. +func NewService(ctx context.Context, opts ...option.ClientOption) (*Service, error) { + scopesOption := internaloption.WithDefaultScopes( + "https://www.googleapis.com/auth/cloud-platform", + ) + // NOTE: prepend, so we don't override user-specified scopes. + opts = append([]option.ClientOption{scopesOption}, opts...) + opts = append(opts, internaloption.WithDefaultEndpoint(basePath)) + opts = append(opts, internaloption.WithDefaultMTLSEndpoint(mtlsBasePath)) + client, endpoint, err := htransport.NewClient(ctx, opts...) + if err != nil { + return nil, err + } + s, err := New(client) + if err != nil { + return nil, err + } + if endpoint != "" { + s.BasePath = endpoint + } + return s, nil +} + +// New creates a new Service. It uses the provided http.Client for requests. +// +// Deprecated: please use NewService instead. +// To provide a custom HTTP client, use option.WithHTTPClient. +// If you are using google.golang.org/api/googleapis/transport.APIKey, use option.WithAPIKey with NewService instead. +func New(client *http.Client) (*Service, error) { + if client == nil { + return nil, errors.New("client is nil") + } + s := &Service{client: client, BasePath: basePath} + s.CaseClassifications = NewCaseClassificationsService(s) + s.Cases = NewCasesService(s) + s.Media = NewMediaService(s) + return s, nil +} + +type Service struct { + client *http.Client + BasePath string // API endpoint base URL + UserAgent string // optional additional User-Agent fragment + + CaseClassifications *CaseClassificationsService + + Cases *CasesService + + Media *MediaService +} + +func (s *Service) userAgent() string { + if s.UserAgent == "" { + return googleapi.UserAgent + } + return googleapi.UserAgent + " " + s.UserAgent +} + +func NewCaseClassificationsService(s *Service) *CaseClassificationsService { + rs := &CaseClassificationsService{s: s} + return rs +} + +type CaseClassificationsService struct { + s *Service +} + +func NewCasesService(s *Service) *CasesService { + rs := &CasesService{s: s} + rs.Attachments = NewCasesAttachmentsService(s) + rs.Comments = NewCasesCommentsService(s) + return rs +} + +type CasesService struct { + s *Service + + Attachments *CasesAttachmentsService + + Comments *CasesCommentsService +} + +func NewCasesAttachmentsService(s *Service) *CasesAttachmentsService { + rs := &CasesAttachmentsService{s: s} + return rs +} + +type CasesAttachmentsService struct { + s *Service +} + +func NewCasesCommentsService(s *Service) *CasesCommentsService { + rs := &CasesCommentsService{s: s} + return rs +} + +type CasesCommentsService struct { + s *Service +} + +func NewMediaService(s *Service) *MediaService { + rs := &MediaService{s: s} + return rs +} + +type MediaService struct { + s *Service +} + +// Actor: An object containing information about the effective user and +// authenticated principal responsible for an action. +type Actor struct { + // DisplayName: The name to display for the actor. If not provided, it + // is inferred from credentials supplied during case creation. When an + // email is provided, a display name must also be provided. This will be + // obfuscated if the user is a Google Support agent. + DisplayName string `json:"displayName,omitempty"` + + // Email: The email address of the actor. If not provided, it is + // inferred from credentials supplied during case creation. If the + // authenticated principal does not have an email address, one must be + // provided. When a name is provided, an email must also be provided. + // This will be obfuscated if the user is a Google Support agent. + Email string `json:"email,omitempty"` + + // GoogleSupport: Output only. Whether the actor is a Google support + // actor. + GoogleSupport bool `json:"googleSupport,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 *Actor) MarshalJSON() ([]byte, error) { + type NoMethod Actor + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Attachment: Represents a file attached to a support case. +type Attachment struct { + // CreateTime: Output only. The time at which the attachment was + // created. + CreateTime string `json:"createTime,omitempty"` + + // Creator: Output only. The user who uploaded the attachment. Note, the + // name and email will be obfuscated if the attachment was uploaded by + // Google support. + Creator *Actor `json:"creator,omitempty"` + + // Filename: The filename of the attachment (e.g. "graph.jpg"). + Filename string `json:"filename,omitempty"` + + // MimeType: Output only. The MIME type of the attachment (e.g. + // text/plain). + MimeType string `json:"mimeType,omitempty"` + + // Name: Output only. The resource name of the attachment. + Name string `json:"name,omitempty"` + + // SizeBytes: Output only. The size of the attachment in bytes. + SizeBytes int64 `json:"sizeBytes,omitempty,string"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "CreateTime") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "CreateTime") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Attachment) MarshalJSON() ([]byte, error) { + type NoMethod Attachment + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Blobstore2Info: # gdata.* are outside protos with mising +// documentation +type Blobstore2Info struct { + // BlobGeneration: # gdata.* are outside protos with mising + // documentation + BlobGeneration int64 `json:"blobGeneration,omitempty,string"` + + // BlobId: # gdata.* are outside protos with mising documentation + BlobId string `json:"blobId,omitempty"` + + // DownloadReadHandle: # gdata.* are outside protos with mising + // documentation + DownloadReadHandle string `json:"downloadReadHandle,omitempty"` + + // ReadToken: # gdata.* are outside protos with mising documentation + ReadToken string `json:"readToken,omitempty"` + + // UploadMetadataContainer: # gdata.* are outside protos with mising + // documentation + UploadMetadataContainer string `json:"uploadMetadataContainer,omitempty"` + + // ForceSendFields is a list of field names (e.g. "BlobGeneration") 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. "BlobGeneration") 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 *Blobstore2Info) MarshalJSON() ([]byte, error) { + type NoMethod Blobstore2Info + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Case: A support case. +type Case struct { + // Classification: The issue classification applicable to this case. + Classification *CaseClassification `json:"classification,omitempty"` + + // ContactEmail: A user-supplied email address to send case update + // notifications for. This should only be used in BYOID flows, where we + // cannot infer the user's email address directly from their EUCs. + ContactEmail string `json:"contactEmail,omitempty"` + + // CreateTime: Output only. The time this case was created. + CreateTime string `json:"createTime,omitempty"` + + // Creator: The user who created the case. Note: The name and email will + // be obfuscated if the case was created by Google Support. + Creator *Actor `json:"creator,omitempty"` + + // Description: A broad description of the issue. + Description string `json:"description,omitempty"` + + // DisplayName: The short summary of the issue reported in this case. + DisplayName string `json:"displayName,omitempty"` + + // Escalated: Whether the case is currently escalated. + Escalated bool `json:"escalated,omitempty"` + + // LanguageCode: The language the user has requested to receive support + // in. This should be a BCP 47 language code (e.g., "en", "zh-CN", + // "zh-TW", "ja", "ko"). If no language or an unsupported language + // is specified, this field defaults to English (en). Language selection + // during case creation may affect your available support options. For a + // list of supported languages and their support working hours, see: + // https://cloud.google.com/support/docs/language-working-hours + LanguageCode string `json:"languageCode,omitempty"` + + // Name: The resource name for the case. + Name string `json:"name,omitempty"` + + // Priority: The priority of this case. + // + // Possible values: + // "PRIORITY_UNSPECIFIED" - Priority is undefined or has not been set + // yet. + // "P0" - Extreme impact on a production service. Service is hard + // down. + // "P1" - Critical impact on a production service. Service is + // currently unusable. + // "P2" - Severe impact on a production service. Service is usable but + // greatly impaired. + // "P3" - Medium impact on a production service. Service is available, + // but moderately impaired. + // "P4" - General questions or minor issues. Production service is + // fully available. + Priority string `json:"priority,omitempty"` + + // State: Output only. The current status of the support case. + // + // Possible values: + // "STATE_UNSPECIFIED" - Case is in an unknown state. + // "NEW" - The case has been created but no one is assigned to work on + // it yet. + // "IN_PROGRESS_GOOGLE_SUPPORT" - The case is currently being handled + // by Google support. + // "ACTION_REQUIRED" - Google is waiting for a response. + // "SOLUTION_PROVIDED" - A solution has been offered for the case, but + // it isn't yet closed. + // "CLOSED" - The case has been resolved. + State string `json:"state,omitempty"` + + // SubscriberEmailAddresses: The email addresses to receive updates on + // this case. + SubscriberEmailAddresses []string `json:"subscriberEmailAddresses,omitempty"` + + // TestCase: Whether this case was created for internal API testing and + // should not be acted on by the support team. + TestCase bool `json:"testCase,omitempty"` + + // TimeZone: The timezone of the user who created the support case. It + // should be in a format IANA recognizes: + // https://www.iana.org/time-zones. There is no additional validation + // done by the API. + TimeZone string `json:"timeZone,omitempty"` + + // UpdateTime: Output only. The time this case was last updated. + UpdateTime string `json:"updateTime,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "Classification") 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. "Classification") 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 *Case) MarshalJSON() ([]byte, error) { + type NoMethod Case + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// CaseClassification: A classification object with a product type and +// value. +type CaseClassification struct { + // DisplayName: A display name for the classification. The display name + // is not static and can change. To uniquely and consistently identify + // classifications, use the `CaseClassification.id` field. + DisplayName string `json:"displayName,omitempty"` + + // Id: The unique ID for a classification. Must be specified for case + // creation. To retrieve valid classification IDs for case creation, use + // `caseClassifications.search`. Classification IDs returned by + // `caseClassifications.search` are guaranteed to be valid for at least + // 6 months. If a given classification is deactiveated, it will + // immediately stop being returned. After 6 months, `case.create` + // requests using the classification ID will fail. + 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 *CaseClassification) MarshalJSON() ([]byte, error) { + type NoMethod CaseClassification + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// CloseCaseRequest: The request message for the CloseCase endpoint. +type CloseCaseRequest struct { +} + +// Comment: A comment associated with a support case. +type Comment struct { + // Body: The full comment body. Maximum of 12800 characters. This can + // contain rich text syntax. + Body string `json:"body,omitempty"` + + // CreateTime: Output only. The time when this comment was created. + CreateTime string `json:"createTime,omitempty"` + + // Creator: Output only. The user or Google Support agent created this + // comment. + Creator *Actor `json:"creator,omitempty"` + + // Name: Output only. The resource name for the comment. + Name string `json:"name,omitempty"` + + // PlainTextBody: Output only. DEPRECATED. An automatically generated + // plain text version of body with all rich text syntax stripped. + PlainTextBody string `json:"plainTextBody,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "Body") 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. "Body") 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 *Comment) MarshalJSON() ([]byte, error) { + type NoMethod Comment + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// CompositeMedia: # gdata.* are outside protos with mising +// documentation +type CompositeMedia struct { + // BlobRef: # gdata.* are outside protos with mising documentation + BlobRef string `json:"blobRef,omitempty"` + + // Blobstore2Info: # gdata.* are outside protos with mising + // documentation + Blobstore2Info *Blobstore2Info `json:"blobstore2Info,omitempty"` + + // CosmoBinaryReference: # gdata.* are outside protos with mising + // documentation + CosmoBinaryReference string `json:"cosmoBinaryReference,omitempty"` + + // Crc32cHash: # gdata.* are outside protos with mising documentation + Crc32cHash int64 `json:"crc32cHash,omitempty"` + + // Inline: # gdata.* are outside protos with mising documentation + Inline string `json:"inline,omitempty"` + + // Length: # gdata.* are outside protos with mising documentation + Length int64 `json:"length,omitempty,string"` + + // Md5Hash: # gdata.* are outside protos with mising documentation + Md5Hash string `json:"md5Hash,omitempty"` + + // ObjectId: # gdata.* are outside protos with mising documentation + ObjectId *ObjectId `json:"objectId,omitempty"` + + // Path: # gdata.* are outside protos with mising documentation + Path string `json:"path,omitempty"` + + // ReferenceType: # gdata.* are outside protos with mising documentation + // + // Possible values: + // "PATH" - # gdata.* are outside protos with mising documentation + // "BLOB_REF" - # gdata.* are outside protos with mising documentation + // "INLINE" - # gdata.* are outside protos with mising documentation + // "BIGSTORE_REF" - # gdata.* are outside protos with mising + // documentation + // "COSMO_BINARY_REFERENCE" - # gdata.* are outside protos with mising + // documentation + ReferenceType string `json:"referenceType,omitempty"` + + // Sha1Hash: # gdata.* are outside protos with mising documentation + Sha1Hash string `json:"sha1Hash,omitempty"` + + // ForceSendFields is a list of field names (e.g. "BlobRef") 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. "BlobRef") 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 *CompositeMedia) MarshalJSON() ([]byte, error) { + type NoMethod CompositeMedia + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// ContentTypeInfo: # gdata.* are outside protos with mising +// documentation +type ContentTypeInfo struct { + // BestGuess: # gdata.* are outside protos with mising documentation + BestGuess string `json:"bestGuess,omitempty"` + + // FromBytes: # gdata.* are outside protos with mising documentation + FromBytes string `json:"fromBytes,omitempty"` + + // FromFileName: # gdata.* are outside protos with mising documentation + FromFileName string `json:"fromFileName,omitempty"` + + // FromHeader: # gdata.* are outside protos with mising documentation + FromHeader string `json:"fromHeader,omitempty"` + + // FromUrlPath: # gdata.* are outside protos with mising documentation + FromUrlPath string `json:"fromUrlPath,omitempty"` + + // ForceSendFields is a list of field names (e.g. "BestGuess") 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. "BestGuess") 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 *ContentTypeInfo) MarshalJSON() ([]byte, error) { + type NoMethod ContentTypeInfo + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// CreateAttachmentRequest: The request message for the CreateAttachment +// endpoint. +type CreateAttachmentRequest struct { + // Attachment: Required. The attachment to be created. + Attachment *Attachment `json:"attachment,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Attachment") 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. "Attachment") 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 *CreateAttachmentRequest) MarshalJSON() ([]byte, error) { + type NoMethod CreateAttachmentRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// DiffChecksumsResponse: # gdata.* are outside protos with mising +// documentation +type DiffChecksumsResponse struct { + // ChecksumsLocation: # gdata.* are outside protos with mising + // documentation + ChecksumsLocation *CompositeMedia `json:"checksumsLocation,omitempty"` + + // ChunkSizeBytes: # gdata.* are outside protos with mising + // documentation + ChunkSizeBytes int64 `json:"chunkSizeBytes,omitempty,string"` + + // ObjectLocation: # gdata.* are outside protos with mising + // documentation + ObjectLocation *CompositeMedia `json:"objectLocation,omitempty"` + + // ObjectSizeBytes: # gdata.* are outside protos with mising + // documentation + ObjectSizeBytes int64 `json:"objectSizeBytes,omitempty,string"` + + // ObjectVersion: # gdata.* are outside protos with mising documentation + ObjectVersion string `json:"objectVersion,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ChecksumsLocation") + // 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. "ChecksumsLocation") 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 *DiffChecksumsResponse) MarshalJSON() ([]byte, error) { + type NoMethod DiffChecksumsResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// DiffDownloadResponse: # gdata.* are outside protos with mising +// documentation +type DiffDownloadResponse struct { + // ObjectLocation: # gdata.* are outside protos with mising + // documentation + ObjectLocation *CompositeMedia `json:"objectLocation,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ObjectLocation") 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. "ObjectLocation") 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 *DiffDownloadResponse) MarshalJSON() ([]byte, error) { + type NoMethod DiffDownloadResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// DiffUploadRequest: # gdata.* are outside protos with mising +// documentation +type DiffUploadRequest struct { + // ChecksumsInfo: # gdata.* are outside protos with mising documentation + ChecksumsInfo *CompositeMedia `json:"checksumsInfo,omitempty"` + + // ObjectInfo: # gdata.* are outside protos with mising documentation + ObjectInfo *CompositeMedia `json:"objectInfo,omitempty"` + + // ObjectVersion: # gdata.* are outside protos with mising documentation + ObjectVersion string `json:"objectVersion,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ChecksumsInfo") 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. "ChecksumsInfo") 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 *DiffUploadRequest) MarshalJSON() ([]byte, error) { + type NoMethod DiffUploadRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// DiffUploadResponse: # gdata.* are outside protos with mising +// documentation +type DiffUploadResponse struct { + // ObjectVersion: # gdata.* are outside protos with mising documentation + ObjectVersion string `json:"objectVersion,omitempty"` + + // OriginalObject: # gdata.* are outside protos with mising + // documentation + OriginalObject *CompositeMedia `json:"originalObject,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ObjectVersion") 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. "ObjectVersion") 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 *DiffUploadResponse) MarshalJSON() ([]byte, error) { + type NoMethod DiffUploadResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// DiffVersionResponse: # gdata.* are outside protos with mising +// documentation +type DiffVersionResponse struct { + // ObjectSizeBytes: # gdata.* are outside protos with mising + // documentation + ObjectSizeBytes int64 `json:"objectSizeBytes,omitempty,string"` + + // ObjectVersion: # gdata.* are outside protos with mising documentation + ObjectVersion string `json:"objectVersion,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ObjectSizeBytes") 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. "ObjectSizeBytes") 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 *DiffVersionResponse) MarshalJSON() ([]byte, error) { + type NoMethod DiffVersionResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// DownloadParameters: # gdata.* are outside protos with mising +// documentation +type DownloadParameters struct { + // AllowGzipCompression: # gdata.* are outside protos with mising + // documentation + AllowGzipCompression bool `json:"allowGzipCompression,omitempty"` + + // IgnoreRange: # gdata.* are outside protos with mising documentation + IgnoreRange bool `json:"ignoreRange,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "AllowGzipCompression") 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. "AllowGzipCompression") 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 *DownloadParameters) MarshalJSON() ([]byte, error) { + type NoMethod DownloadParameters + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// EscalateCaseRequest: The request message for the EscalateCase +// endpoint. +type EscalateCaseRequest struct { + // Escalation: The escalation object to be sent with the escalation + // request. + Escalation *Escalation `json:"escalation,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Escalation") 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. "Escalation") 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 *EscalateCaseRequest) MarshalJSON() ([]byte, error) { + type NoMethod EscalateCaseRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Escalation: An escalation of a support case. +type Escalation struct { + // Justification: Required. A free text description to accompany the + // `reason` field above. Provides additional context on why the case is + // being escalated. + Justification string `json:"justification,omitempty"` + + // Reason: Required. The reason why the Case is being escalated. + // + // Possible values: + // "REASON_UNSPECIFIED" - The escalation reason is in an unknown state + // or has not been specified. + // "RESOLUTION_TIME" - The case is taking too long to resolve. + // "TECHNICAL_EXPERTISE" - The support agent does not have the + // expertise required to successfully resolve the issue. + // "BUSINESS_IMPACT" - The issue is having a significant business + // impact. + Reason string `json:"reason,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Justification") 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. "Justification") 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 *Escalation) MarshalJSON() ([]byte, error) { + type NoMethod Escalation + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// ListAttachmentsResponse: The response message for the ListAttachments +// endpoint. +type ListAttachmentsResponse struct { + // Attachments: The list of attachments associated with the given case. + Attachments []*Attachment `json:"attachments,omitempty"` + + // NextPageToken: A token to retrieve the next page of results. This + // should be set in the `page_token` field of subsequent + // `cases.attachments.list` requests. If unspecified, there are no more + // results to retrieve. + NextPageToken string `json:"nextPageToken,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "Attachments") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Attachments") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *ListAttachmentsResponse) MarshalJSON() ([]byte, error) { + type NoMethod ListAttachmentsResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// ListCasesResponse: The response message for the ListCases endpoint. +type ListCasesResponse struct { + // Cases: The list of cases associated with the Google Cloud Resource, + // after any filters have been applied. + Cases []*Case `json:"cases,omitempty"` + + // NextPageToken: A token to retrieve the next page of results. This + // should be set in the `page_token` field of the subsequent + // `ListCasesRequest` message that is issued. If unspecified, there are + // no more results to retrieve. + NextPageToken string `json:"nextPageToken,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "Cases") 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. "Cases") 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 *ListCasesResponse) MarshalJSON() ([]byte, error) { + type NoMethod ListCasesResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// ListCommentsResponse: The response message for the ListComments +// endpoint. +type ListCommentsResponse struct { + // Comments: The list of Comments associated with the given Case. + Comments []*Comment `json:"comments,omitempty"` + + // NextPageToken: A token to retrieve the next page of results. This + // should be set in the `page_token` field of subsequent + // `ListCommentsRequest` message that is issued. If unspecified, there + // are no more results to retrieve. + NextPageToken string `json:"nextPageToken,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "Comments") 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. "Comments") 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 *ListCommentsResponse) MarshalJSON() ([]byte, error) { + type NoMethod ListCommentsResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Media: # gdata.* are outside protos with mising documentation +type Media struct { + // Algorithm: # gdata.* are outside protos with mising documentation + Algorithm string `json:"algorithm,omitempty"` + + // BigstoreObjectRef: # gdata.* are outside protos with mising + // documentation + BigstoreObjectRef string `json:"bigstoreObjectRef,omitempty"` + + // BlobRef: # gdata.* are outside protos with mising documentation + BlobRef string `json:"blobRef,omitempty"` + + // Blobstore2Info: # gdata.* are outside protos with mising + // documentation + Blobstore2Info *Blobstore2Info `json:"blobstore2Info,omitempty"` + + // CompositeMedia: # gdata.* are outside protos with mising + // documentation + CompositeMedia []*CompositeMedia `json:"compositeMedia,omitempty"` + + // ContentType: # gdata.* are outside protos with mising documentation + ContentType string `json:"contentType,omitempty"` + + // ContentTypeInfo: # gdata.* are outside protos with mising + // documentation + ContentTypeInfo *ContentTypeInfo `json:"contentTypeInfo,omitempty"` + + // CosmoBinaryReference: # gdata.* are outside protos with mising + // documentation + CosmoBinaryReference string `json:"cosmoBinaryReference,omitempty"` + + // Crc32cHash: # gdata.* are outside protos with mising documentation + Crc32cHash int64 `json:"crc32cHash,omitempty"` + + // DiffChecksumsResponse: # gdata.* are outside protos with mising + // documentation + DiffChecksumsResponse *DiffChecksumsResponse `json:"diffChecksumsResponse,omitempty"` + + // DiffDownloadResponse: # gdata.* are outside protos with mising + // documentation + DiffDownloadResponse *DiffDownloadResponse `json:"diffDownloadResponse,omitempty"` + + // DiffUploadRequest: # gdata.* are outside protos with mising + // documentation + DiffUploadRequest *DiffUploadRequest `json:"diffUploadRequest,omitempty"` + + // DiffUploadResponse: # gdata.* are outside protos with mising + // documentation + DiffUploadResponse *DiffUploadResponse `json:"diffUploadResponse,omitempty"` + + // DiffVersionResponse: # gdata.* are outside protos with mising + // documentation + DiffVersionResponse *DiffVersionResponse `json:"diffVersionResponse,omitempty"` + + // DownloadParameters: # gdata.* are outside protos with mising + // documentation + DownloadParameters *DownloadParameters `json:"downloadParameters,omitempty"` + + // Filename: # gdata.* are outside protos with mising documentation + Filename string `json:"filename,omitempty"` + + // Hash: # gdata.* are outside protos with mising documentation + Hash string `json:"hash,omitempty"` + + // HashVerified: # gdata.* are outside protos with mising documentation + HashVerified bool `json:"hashVerified,omitempty"` + + // Inline: # gdata.* are outside protos with mising documentation + Inline string `json:"inline,omitempty"` + + // IsPotentialRetry: # gdata.* are outside protos with mising + // documentation + IsPotentialRetry bool `json:"isPotentialRetry,omitempty"` + + // Length: # gdata.* are outside protos with mising documentation + Length int64 `json:"length,omitempty,string"` + + // Md5Hash: # gdata.* are outside protos with mising documentation + Md5Hash string `json:"md5Hash,omitempty"` + + // MediaId: # gdata.* are outside protos with mising documentation + MediaId string `json:"mediaId,omitempty"` + + // ObjectId: # gdata.* are outside protos with mising documentation + ObjectId *ObjectId `json:"objectId,omitempty"` + + // Path: # gdata.* are outside protos with mising documentation + Path string `json:"path,omitempty"` + + // ReferenceType: # gdata.* are outside protos with mising documentation + // + // Possible values: + // "PATH" - # gdata.* are outside protos with mising documentation + // "BLOB_REF" - # gdata.* are outside protos with mising documentation + // "INLINE" - # gdata.* are outside protos with mising documentation + // "GET_MEDIA" - # gdata.* are outside protos with mising + // documentation + // "COMPOSITE_MEDIA" - # gdata.* are outside protos with mising + // documentation + // "BIGSTORE_REF" - # gdata.* are outside protos with mising + // documentation + // "DIFF_VERSION_RESPONSE" - # gdata.* are outside protos with mising + // documentation + // "DIFF_CHECKSUMS_RESPONSE" - # gdata.* are outside protos with + // mising documentation + // "DIFF_DOWNLOAD_RESPONSE" - # gdata.* are outside protos with mising + // documentation + // "DIFF_UPLOAD_REQUEST" - # gdata.* are outside protos with mising + // documentation + // "DIFF_UPLOAD_RESPONSE" - # gdata.* are outside protos with mising + // documentation + // "COSMO_BINARY_REFERENCE" - # gdata.* are outside protos with mising + // documentation + // "ARBITRARY_BYTES" - # gdata.* are outside protos with mising + // documentation + ReferenceType string `json:"referenceType,omitempty"` + + // Sha1Hash: # gdata.* are outside protos with mising documentation + Sha1Hash string `json:"sha1Hash,omitempty"` + + // Sha256Hash: # gdata.* are outside protos with mising documentation + Sha256Hash string `json:"sha256Hash,omitempty"` + + // Timestamp: # gdata.* are outside protos with mising documentation + Timestamp uint64 `json:"timestamp,omitempty,string"` + + // Token: # gdata.* are outside protos with mising documentation + Token string `json:"token,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "Algorithm") 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. "Algorithm") 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 *Media) MarshalJSON() ([]byte, error) { + type NoMethod Media + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// ObjectId: # gdata.* are outside protos with mising documentation +type ObjectId struct { + // BucketName: # gdata.* are outside protos with mising documentation + BucketName string `json:"bucketName,omitempty"` + + // Generation: # gdata.* are outside protos with mising documentation + Generation int64 `json:"generation,omitempty,string"` + + // ObjectName: # gdata.* are outside protos with mising documentation + ObjectName string `json:"objectName,omitempty"` + + // ForceSendFields is a list of field names (e.g. "BucketName") 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. "BucketName") 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 *ObjectId) MarshalJSON() ([]byte, error) { + type NoMethod ObjectId + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// SearchCaseClassificationsResponse: The response message for +// SearchCaseClassifications endpoint. +type SearchCaseClassificationsResponse struct { + // CaseClassifications: The classifications retrieved. + CaseClassifications []*CaseClassification `json:"caseClassifications,omitempty"` + + // NextPageToken: A token to retrieve the next page of results. This + // should be set in the `page_token` field of subsequent + // `SearchCaseClassificationsRequest` message that is issued. If + // unspecified, there are no more results to retrieve. + NextPageToken string `json:"nextPageToken,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "CaseClassifications") + // 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. "CaseClassifications") 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 *SearchCaseClassificationsResponse) MarshalJSON() ([]byte, error) { + type NoMethod SearchCaseClassificationsResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// SearchCasesResponse: The response message for the SearchCases +// endpoint. +type SearchCasesResponse struct { + // Cases: The list of cases associated with the Google Cloud Resource, + // after any filters have been applied. + Cases []*Case `json:"cases,omitempty"` + + // NextPageToken: A token to retrieve the next page of results. This + // should be set in the `page_token` field of subsequent + // `SearchCaseRequest` message that is issued. If unspecified, there are + // no more results to retrieve. + NextPageToken string `json:"nextPageToken,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "Cases") 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. "Cases") 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 *SearchCasesResponse) MarshalJSON() ([]byte, error) { + type NoMethod SearchCasesResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// WorkflowOperationMetadata: Metadata about the operation. Used to +// lookup the current status. +type WorkflowOperationMetadata struct { + // Namespace: The namespace that the job was scheduled in. Must be + // included in the workflow metadata so the workflow status can be + // retrieved. + Namespace string `json:"namespace,omitempty"` + + // OperationAction: The type of action the operation is classified as. + // + // Possible values: + // "OPERATION_ACTION_UNSPECIFIED" - Operation action is not specified. + // "CREATE_SUPPORT_ACCOUNT" - Operation pertains to the creation of a + // new support account. + // "UPDATE_SUPPORT_ACCOUNT" - Operation pertains to the updating of an + // existing support account. + // "PURCHASE_SUPPORT_ACCOUNT" - Operation pertains to the purchasing + // of a support plan that may either create or update a support account. + OperationAction string `json:"operationAction,omitempty"` + + // WorkflowOperationType: Which version of the workflow service this + // operation came from. + // + // Possible values: + // "UNKNOWN_OPERATION_TYPE" - Unknown version. + // "WORKFLOWS_V1" - Version 1. + // "WORKFLOWS_V2" - Version 2. + WorkflowOperationType string `json:"workflowOperationType,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Namespace") 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. "Namespace") 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 *WorkflowOperationMetadata) MarshalJSON() ([]byte, error) { + type NoMethod WorkflowOperationMetadata + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// method id "cloudsupport.caseClassifications.search": + +type CaseClassificationsSearchCall struct { + s *Service + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Search: Retrieve valid classifications to be used when creating a +// support case. The classications are hierarchical, with each +// classification containing all levels of the hierarchy, separated by +// " > ". For example "Technical Issue > Compute > Compute Engine". +// Classification IDs returned by `caseClassifications.search` are +// guaranteed to be valid for at least 6 months. If a given +// classification is deactiveated, it will immediately stop being +// returned. After 6 months, `case.create` requests using the +// classification ID will fail. +func (r *CaseClassificationsService) Search() *CaseClassificationsSearchCall { + c := &CaseClassificationsSearchCall{s: r.s, urlParams_: make(gensupport.URLParams)} + return c +} + +// PageSize sets the optional parameter "pageSize": The maximum number +// of cases fetched with each request. +func (c *CaseClassificationsSearchCall) PageSize(pageSize int64) *CaseClassificationsSearchCall { + c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) + return c +} + +// PageToken sets the optional parameter "pageToken": A token +// identifying the page of results to return. If unspecified, the first +// page is retrieved. +func (c *CaseClassificationsSearchCall) PageToken(pageToken string) *CaseClassificationsSearchCall { + c.urlParams_.Set("pageToken", pageToken) + return c +} + +// Query sets the optional parameter "query": An expression written in +// the Google Cloud filter language. If non-empty, then only cases whose +// fields match the filter are returned. If empty, then no messages are +// filtered out. +func (c *CaseClassificationsSearchCall) Query(query string) *CaseClassificationsSearchCall { + c.urlParams_.Set("query", query) + 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 *CaseClassificationsSearchCall) Fields(s ...googleapi.Field) *CaseClassificationsSearchCall { + 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 *CaseClassificationsSearchCall) IfNoneMatch(entityTag string) *CaseClassificationsSearchCall { + 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 *CaseClassificationsSearchCall) Context(ctx context.Context) *CaseClassificationsSearchCall { + 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 *CaseClassificationsSearchCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *CaseClassificationsSearchCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/caseClassifications:search") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("GET", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "cloudsupport.caseClassifications.search" call. +// Exactly one of *SearchCaseClassificationsResponse or error will be +// non-nil. Any non-2xx status code is an error. Response headers are in +// either *SearchCaseClassificationsResponse.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 *CaseClassificationsSearchCall) Do(opts ...googleapi.CallOption) (*SearchCaseClassificationsResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &SearchCaseClassificationsResponse{ + 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": "Retrieve valid classifications to be used when creating a support case. The classications are hierarchical, with each classification containing all levels of the hierarchy, separated by `\" \u003e \"`. For example `\"Technical Issue \u003e Compute \u003e Compute Engine\"`. Classification IDs returned by `caseClassifications.search` are guaranteed to be valid for at least 6 months. If a given classification is deactiveated, it will immediately stop being returned. After 6 months, `case.create` requests using the classification ID will fail.", + // "flatPath": "v2/caseClassifications:search", + // "httpMethod": "GET", + // "id": "cloudsupport.caseClassifications.search", + // "parameterOrder": [], + // "parameters": { + // "pageSize": { + // "description": "The maximum number of cases fetched with each request.", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "pageToken": { + // "description": "A token identifying the page of results to return. If unspecified, the first page is retrieved.", + // "location": "query", + // "type": "string" + // }, + // "query": { + // "description": "An expression written in the Google Cloud filter language. If non-empty, then only cases whose fields match the filter are returned. If empty, then no messages are filtered out.", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "v2/caseClassifications:search", + // "response": { + // "$ref": "SearchCaseClassificationsResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// Pages invokes f for each page of results. +// A non-nil error returned from f will halt the iteration. +// The provided context supersedes any context provided to the Context method. +func (c *CaseClassificationsSearchCall) Pages(ctx context.Context, f func(*SearchCaseClassificationsResponse) error) error { + c.ctx_ = ctx + defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point + for { + x, err := c.Do() + if err != nil { + return err + } + if err := f(x); err != nil { + return err + } + if x.NextPageToken == "" { + return nil + } + c.PageToken(x.NextPageToken) + } +} + +// method id "cloudsupport.cases.close": + +type CasesCloseCall struct { + s *Service + name string + closecaserequest *CloseCaseRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Close: Close the specified case. +// +// - name: The fully qualified name of the case resource to be closed. +func (r *CasesService) Close(name string, closecaserequest *CloseCaseRequest) *CasesCloseCall { + c := &CasesCloseCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + c.closecaserequest = closecaserequest + 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 *CasesCloseCall) Fields(s ...googleapi.Field) *CasesCloseCall { + 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 *CasesCloseCall) Context(ctx context.Context) *CasesCloseCall { + 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 *CasesCloseCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *CasesCloseCall) 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.closecaserequest) + 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, "v2/{+name}:close") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("POST", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "cloudsupport.cases.close" call. +// Exactly one of *Case or error will be non-nil. Any non-2xx status +// code is an error. Response headers are in either +// *Case.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 *CasesCloseCall) Do(opts ...googleapi.CallOption) (*Case, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &Case{ + 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": "Close the specified case.", + // "flatPath": "v2/{v2Id}/{v2Id1}/cases/{casesId}:close", + // "httpMethod": "POST", + // "id": "cloudsupport.cases.close", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Required. The fully qualified name of the case resource to be closed.", + // "location": "path", + // "pattern": "^[^/]+/[^/]+/cases/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2/{+name}:close", + // "request": { + // "$ref": "CloseCaseRequest" + // }, + // "response": { + // "$ref": "Case" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "cloudsupport.cases.create": + +type CasesCreateCall struct { + s *Service + parent string + case_ *Case + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Create: Create a new case and associate it with the given Google +// Cloud Resource. The case object must have the following fields set: +// `display_name`, `description`, `classification`, and `priority`. +// +// - parent: The name of the Google Cloud Resource under which the case +// should be created. +func (r *CasesService) Create(parent string, case_ *Case) *CasesCreateCall { + c := &CasesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + c.case_ = case_ + 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 *CasesCreateCall) Fields(s ...googleapi.Field) *CasesCreateCall { + 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 *CasesCreateCall) Context(ctx context.Context) *CasesCreateCall { + 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 *CasesCreateCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *CasesCreateCall) 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.case_) + 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, "v2/{+parent}/cases") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("POST", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "parent": c.parent, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "cloudsupport.cases.create" call. +// Exactly one of *Case or error will be non-nil. Any non-2xx status +// code is an error. Response headers are in either +// *Case.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 *CasesCreateCall) Do(opts ...googleapi.CallOption) (*Case, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &Case{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Create a new case and associate it with the given Google Cloud Resource. The case object must have the following fields set: `display_name`, `description`, `classification`, and `priority`.", + // "flatPath": "v2/{v2Id}/{v2Id1}/cases", + // "httpMethod": "POST", + // "id": "cloudsupport.cases.create", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "parent": { + // "description": "Required. The name of the Google Cloud Resource under which the case should be created.", + // "location": "path", + // "pattern": "^[^/]+/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2/{+parent}/cases", + // "request": { + // "$ref": "Case" + // }, + // "response": { + // "$ref": "Case" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "cloudsupport.cases.escalate": + +type CasesEscalateCall struct { + s *Service + name string + escalatecaserequest *EscalateCaseRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Escalate: Escalate a case. Escalating a case will initiate the Google +// Cloud Support escalation management process. This operation is only +// available to certain Customer Care tiers. Go to +// https://cloud.google.com/support and look for 'Technical support +// escalations' in the feature list to find out which tiers are able to +// perform escalations. +// +// - name: The fully qualified name of the Case resource to be +// escalated. +func (r *CasesService) Escalate(name string, escalatecaserequest *EscalateCaseRequest) *CasesEscalateCall { + c := &CasesEscalateCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + c.escalatecaserequest = escalatecaserequest + 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 *CasesEscalateCall) Fields(s ...googleapi.Field) *CasesEscalateCall { + 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 *CasesEscalateCall) Context(ctx context.Context) *CasesEscalateCall { + 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 *CasesEscalateCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *CasesEscalateCall) 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.escalatecaserequest) + 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, "v2/{+name}:escalate") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("POST", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "cloudsupport.cases.escalate" call. +// Exactly one of *Case or error will be non-nil. Any non-2xx status +// code is an error. Response headers are in either +// *Case.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 *CasesEscalateCall) Do(opts ...googleapi.CallOption) (*Case, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &Case{ + 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": "Escalate a case. Escalating a case will initiate the Google Cloud Support escalation management process. This operation is only available to certain Customer Care tiers. Go to https://cloud.google.com/support and look for 'Technical support escalations' in the feature list to find out which tiers are able to perform escalations.", + // "flatPath": "v2/{v2Id}/{v2Id1}/cases/{casesId}:escalate", + // "httpMethod": "POST", + // "id": "cloudsupport.cases.escalate", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Required. The fully qualified name of the Case resource to be escalated.", + // "location": "path", + // "pattern": "^[^/]+/[^/]+/cases/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2/{+name}:escalate", + // "request": { + // "$ref": "EscalateCaseRequest" + // }, + // "response": { + // "$ref": "Case" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "cloudsupport.cases.get": + +type CasesGetCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Retrieve the specified case. +// +// - name: The fully qualified name of a case to be retrieved. +func (r *CasesService) Get(name string) *CasesGetCall { + c := &CasesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *CasesGetCall) Fields(s ...googleapi.Field) *CasesGetCall { + 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 *CasesGetCall) IfNoneMatch(entityTag string) *CasesGetCall { + 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 *CasesGetCall) Context(ctx context.Context) *CasesGetCall { + 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 *CasesGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *CasesGetCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/{+name}") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("GET", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "cloudsupport.cases.get" call. +// Exactly one of *Case or error will be non-nil. Any non-2xx status +// code is an error. Response headers are in either +// *Case.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 *CasesGetCall) Do(opts ...googleapi.CallOption) (*Case, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &Case{ + 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": "Retrieve the specified case.", + // "flatPath": "v2/{v2Id}/{v2Id1}/cases/{casesId}", + // "httpMethod": "GET", + // "id": "cloudsupport.cases.get", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Required. The fully qualified name of a case to be retrieved.", + // "location": "path", + // "pattern": "^[^/]+/[^/]+/cases/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2/{+name}", + // "response": { + // "$ref": "Case" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "cloudsupport.cases.list": + +type CasesListCall struct { + s *Service + parent string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// List: Retrieve all cases under the specified parent. Note: Listing +// cases under an Organization returns only the cases directly parented +// by that organization. To retrieve all cases under an organization, +// including cases parented by projects under that organization, use +// `cases.search`. +// +// - parent: The fully qualified name of parent resource to list cases +// under. +func (r *CasesService) List(parent string) *CasesListCall { + c := &CasesListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + return c +} + +// Filter sets the optional parameter "filter": An expression written in +// filter language. If non-empty, the query returns the cases that match +// the filter. Else, the query doesn't filter the cases. Filter +// expressions use the following fields with the operators equals (`=`) +// and `AND`: - `state`: The accepted values are `OPEN` or `CLOSED`. - +// `priority`: The accepted values are `P0`, `P1`, `P2`, `P3`, or `P4`. +// You can specify multiple values for priority using the `OR` operator. +// For example, `priority=P1 OR priority=P2`. - `creator.email`: The +// email address of the case creator. Examples: - `state=CLOSED` - +// `state=OPEN AND creator.email="tester@example.com" - `state=OPEN AND +// (priority=P0 OR priority=P1)` +func (c *CasesListCall) Filter(filter string) *CasesListCall { + c.urlParams_.Set("filter", filter) + return c +} + +// PageSize sets the optional parameter "pageSize": The maximum number +// of cases fetched with each request. Defaults to 10. +func (c *CasesListCall) PageSize(pageSize int64) *CasesListCall { + c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) + return c +} + +// PageToken sets the optional parameter "pageToken": A token +// identifying the page of results to return. If unspecified, the first +// page is retrieved. +func (c *CasesListCall) PageToken(pageToken string) *CasesListCall { + 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 *CasesListCall) Fields(s ...googleapi.Field) *CasesListCall { + 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 *CasesListCall) IfNoneMatch(entityTag string) *CasesListCall { + 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 *CasesListCall) Context(ctx context.Context) *CasesListCall { + 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 *CasesListCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *CasesListCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/{+parent}/cases") + 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 "cloudsupport.cases.list" call. +// Exactly one of *ListCasesResponse or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *ListCasesResponse.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 *CasesListCall) Do(opts ...googleapi.CallOption) (*ListCasesResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &ListCasesResponse{ + 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": "Retrieve all cases under the specified parent. Note: Listing cases under an Organization returns only the cases directly parented by that organization. To retrieve all cases under an organization, including cases parented by projects under that organization, use `cases.search`.", + // "flatPath": "v2/{v2Id}/{v2Id1}/cases", + // "httpMethod": "GET", + // "id": "cloudsupport.cases.list", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "filter": { + // "description": "An expression written in filter language. If non-empty, the query returns the cases that match the filter. Else, the query doesn't filter the cases. Filter expressions use the following fields with the operators equals (`=`) and `AND`: - `state`: The accepted values are `OPEN` or `CLOSED`. - `priority`: The accepted values are `P0`, `P1`, `P2`, `P3`, or `P4`. You can specify multiple values for priority using the `OR` operator. For example, `priority=P1 OR priority=P2`. - `creator.email`: The email address of the case creator. Examples: - `state=CLOSED` - `state=OPEN AND creator.email=\"tester@example.com\"` - `state=OPEN AND (priority=P0 OR priority=P1)`", + // "location": "query", + // "type": "string" + // }, + // "pageSize": { + // "description": "The maximum number of cases fetched with each request. Defaults to 10.", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "pageToken": { + // "description": "A token identifying the page of results to return. If unspecified, the first page is retrieved.", + // "location": "query", + // "type": "string" + // }, + // "parent": { + // "description": "Required. The fully qualified name of parent resource to list cases under.", + // "location": "path", + // "pattern": "^[^/]+/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2/{+parent}/cases", + // "response": { + // "$ref": "ListCasesResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// Pages invokes f for each page of results. +// A non-nil error returned from f will halt the iteration. +// The provided context supersedes any context provided to the Context method. +func (c *CasesListCall) Pages(ctx context.Context, f func(*ListCasesResponse) error) error { + c.ctx_ = ctx + defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point + for { + x, err := c.Do() + if err != nil { + return err + } + if err := f(x); err != nil { + return err + } + if x.NextPageToken == "" { + return nil + } + c.PageToken(x.NextPageToken) + } +} + +// method id "cloudsupport.cases.patch": + +type CasesPatchCall struct { + s *Service + name string + case_ *Case + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Patch: Update the specified case. Only a subset of fields can be +// updated. +// +// - name: The resource name for the case. +func (r *CasesService) Patch(name string, case_ *Case) *CasesPatchCall { + c := &CasesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + c.case_ = case_ + return c +} + +// UpdateMask sets the optional parameter "updateMask": A list of +// attributes of the case object that should be updated as part of this +// request. Supported values are `priority`, `display_name`, and +// `subscriber_email_addresses`. If no fields are specified, all +// supported fields are updated. WARNING: If you do not provide a field +// mask, then you might accidentally clear some fields. For example, if +// you leave the field mask empty and do not provide a value for +// `subscriber_email_addresses`, then `subscriber_email_addresses` is +// updated to empty. +func (c *CasesPatchCall) UpdateMask(updateMask string) *CasesPatchCall { + c.urlParams_.Set("updateMask", updateMask) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *CasesPatchCall) Fields(s ...googleapi.Field) *CasesPatchCall { + 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 *CasesPatchCall) Context(ctx context.Context) *CasesPatchCall { + 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 *CasesPatchCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *CasesPatchCall) 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.case_) + 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, "v2/{+name}") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("PATCH", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "cloudsupport.cases.patch" call. +// Exactly one of *Case or error will be non-nil. Any non-2xx status +// code is an error. Response headers are in either +// *Case.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 *CasesPatchCall) Do(opts ...googleapi.CallOption) (*Case, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &Case{ + 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": "Update the specified case. Only a subset of fields can be updated.", + // "flatPath": "v2/{v2Id}/{v2Id1}/cases/{casesId}", + // "httpMethod": "PATCH", + // "id": "cloudsupport.cases.patch", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "The resource name for the case.", + // "location": "path", + // "pattern": "^[^/]+/[^/]+/cases/[^/]+$", + // "required": true, + // "type": "string" + // }, + // "updateMask": { + // "description": "A list of attributes of the case object that should be updated as part of this request. Supported values are `priority`, `display_name`, and `subscriber_email_addresses`. If no fields are specified, all supported fields are updated. WARNING: If you do not provide a field mask, then you might accidentally clear some fields. For example, if you leave the field mask empty and do not provide a value for `subscriber_email_addresses`, then `subscriber_email_addresses` is updated to empty.", + // "format": "google-fieldmask", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "v2/{+name}", + // "request": { + // "$ref": "Case" + // }, + // "response": { + // "$ref": "Case" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "cloudsupport.cases.search": + +type CasesSearchCall struct { + s *Service + parent string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Search: Search cases using the specified query. +// +// - parent: The fully qualified name of parent resource to search cases +// under. +func (r *CasesService) Search(parent string) *CasesSearchCall { + c := &CasesSearchCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + return c +} + +// PageSize sets the optional parameter "pageSize": The maximum number +// of cases fetched with each request. The default page size is 10. +func (c *CasesSearchCall) PageSize(pageSize int64) *CasesSearchCall { + c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) + return c +} + +// PageToken sets the optional parameter "pageToken": A token +// identifying the page of results to return. If unspecified, the first +// page is retrieved. +func (c *CasesSearchCall) PageToken(pageToken string) *CasesSearchCall { + c.urlParams_.Set("pageToken", pageToken) + return c +} + +// Query sets the optional parameter "query": An expression written in +// filter language. A query uses the following fields with the operators +// equals (`=`) and `AND`: - `organization`: An organization name in the +// form `organizations/`. - `project`: A project name in the form +// `projects/`. - `state`: The accepted values are `OPEN` or `CLOSED`. - +// `priority`: The accepted values are `P0`, `P1`, `P2`, `P3`, or `P4`. +// You can specify multiple values for priority using the `OR` operator. +// For example, `priority=P1 OR priority=P2`. - `creator.email`: The +// email address of the case creator. - `billingAccount`: A billing +// account in the form `billingAccounts/` You must specify either +// `organization` or `project`. To search across `displayName`, +// `description`, and comments, use a global restriction with no keyword +// or operator. For example, "my search". To search only cases updated +// after a certain date, use `update_time` restricted with that +// particular date, time, and timezone in ISO datetime format. For +// example, `update_time>"2020-01-01T00:00:00-05:00". `update_time` +// only supports the greater than operator (`>`). Examples: - +// `organization="organizations/123456789" - +// `project="projects/my-project-id" - `project="projects/123456789" - +// `billing_account="billingAccounts/123456-A0B0C0-CUZ789" - +// `organization="organizations/123456789" AND state=CLOSED` - +// `project="projects/my-project-id" AND +// creator.email="tester@example.com" - +// `project="projects/my-project-id" AND (priority=P0 OR priority=P1)` +func (c *CasesSearchCall) Query(query string) *CasesSearchCall { + c.urlParams_.Set("query", query) + 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 *CasesSearchCall) Fields(s ...googleapi.Field) *CasesSearchCall { + 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 *CasesSearchCall) IfNoneMatch(entityTag string) *CasesSearchCall { + 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 *CasesSearchCall) Context(ctx context.Context) *CasesSearchCall { + 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 *CasesSearchCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *CasesSearchCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/{+parent}/cases:search") + 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 "cloudsupport.cases.search" call. +// Exactly one of *SearchCasesResponse or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *SearchCasesResponse.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 *CasesSearchCall) Do(opts ...googleapi.CallOption) (*SearchCasesResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &SearchCasesResponse{ + 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": "Search cases using the specified query.", + // "flatPath": "v2/{v2Id}/{v2Id1}/cases:search", + // "httpMethod": "GET", + // "id": "cloudsupport.cases.search", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "pageSize": { + // "description": "The maximum number of cases fetched with each request. The default page size is 10.", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "pageToken": { + // "description": "A token identifying the page of results to return. If unspecified, the first page is retrieved.", + // "location": "query", + // "type": "string" + // }, + // "parent": { + // "description": "The fully qualified name of parent resource to search cases under.", + // "location": "path", + // "pattern": "^[^/]+/[^/]+$", + // "required": true, + // "type": "string" + // }, + // "query": { + // "description": "An expression written in filter language. A query uses the following fields with the operators equals (`=`) and `AND`: - `organization`: An organization name in the form `organizations/`. - `project`: A project name in the form `projects/`. - `state`: The accepted values are `OPEN` or `CLOSED`. - `priority`: The accepted values are `P0`, `P1`, `P2`, `P3`, or `P4`. You can specify multiple values for priority using the `OR` operator. For example, `priority=P1 OR priority=P2`. - `creator.email`: The email address of the case creator. - `billingAccount`: A billing account in the form `billingAccounts/` You must specify either `organization` or `project`. To search across `displayName`, `description`, and comments, use a global restriction with no keyword or operator. For example, `\"my search\"`. To search only cases updated after a certain date, use `update_time` restricted with that particular date, time, and timezone in ISO datetime format. For example, `update_time\u003e\"2020-01-01T00:00:00-05:00\"`. `update_time` only supports the greater than operator (`\u003e`). Examples: - `organization=\"organizations/123456789\"` - `project=\"projects/my-project-id\"` - `project=\"projects/123456789\"` - `billing_account=\"billingAccounts/123456-A0B0C0-CUZ789\"` - `organization=\"organizations/123456789\" AND state=CLOSED` - `project=\"projects/my-project-id\" AND creator.email=\"tester@example.com\"` - `project=\"projects/my-project-id\" AND (priority=P0 OR priority=P1)`", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "v2/{+parent}/cases:search", + // "response": { + // "$ref": "SearchCasesResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// Pages invokes f for each page of results. +// A non-nil error returned from f will halt the iteration. +// The provided context supersedes any context provided to the Context method. +func (c *CasesSearchCall) Pages(ctx context.Context, f func(*SearchCasesResponse) error) error { + c.ctx_ = ctx + defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point + for { + x, err := c.Do() + if err != nil { + return err + } + if err := f(x); err != nil { + return err + } + if x.NextPageToken == "" { + return nil + } + c.PageToken(x.NextPageToken) + } +} + +// method id "cloudsupport.cases.attachments.list": + +type CasesAttachmentsListCall struct { + s *Service + parent string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// List: Retrieve all attachments associated with a support case. +// +// - parent: The resource name of Case object for which attachments +// should be listed. +func (r *CasesAttachmentsService) List(parent string) *CasesAttachmentsListCall { + c := &CasesAttachmentsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + return c +} + +// PageSize sets the optional parameter "pageSize": The maximum number +// of attachments fetched with each request. If not provided, the +// default is 10. The maximum page size that will be returned is 100. +func (c *CasesAttachmentsListCall) PageSize(pageSize int64) *CasesAttachmentsListCall { + c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) + return c +} + +// PageToken sets the optional parameter "pageToken": A token +// identifying the page of results to return. If unspecified, the first +// page is retrieved. +func (c *CasesAttachmentsListCall) PageToken(pageToken string) *CasesAttachmentsListCall { + 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 *CasesAttachmentsListCall) Fields(s ...googleapi.Field) *CasesAttachmentsListCall { + 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 *CasesAttachmentsListCall) IfNoneMatch(entityTag string) *CasesAttachmentsListCall { + 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 *CasesAttachmentsListCall) Context(ctx context.Context) *CasesAttachmentsListCall { + 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 *CasesAttachmentsListCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *CasesAttachmentsListCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/{+parent}/attachments") + 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 "cloudsupport.cases.attachments.list" call. +// Exactly one of *ListAttachmentsResponse or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *ListAttachmentsResponse.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 *CasesAttachmentsListCall) Do(opts ...googleapi.CallOption) (*ListAttachmentsResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &ListAttachmentsResponse{ + 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": "Retrieve all attachments associated with a support case.", + // "flatPath": "v2/{v2Id}/{v2Id1}/cases/{casesId}/attachments", + // "httpMethod": "GET", + // "id": "cloudsupport.cases.attachments.list", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "pageSize": { + // "description": "The maximum number of attachments fetched with each request. If not provided, the default is 10. The maximum page size that will be returned is 100.", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "pageToken": { + // "description": "A token identifying the page of results to return. If unspecified, the first page is retrieved.", + // "location": "query", + // "type": "string" + // }, + // "parent": { + // "description": "Required. The resource name of Case object for which attachments should be listed.", + // "location": "path", + // "pattern": "^[^/]+/[^/]+/cases/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2/{+parent}/attachments", + // "response": { + // "$ref": "ListAttachmentsResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// Pages invokes f for each page of results. +// A non-nil error returned from f will halt the iteration. +// The provided context supersedes any context provided to the Context method. +func (c *CasesAttachmentsListCall) Pages(ctx context.Context, f func(*ListAttachmentsResponse) error) error { + c.ctx_ = ctx + defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point + for { + x, err := c.Do() + if err != nil { + return err + } + if err := f(x); err != nil { + return err + } + if x.NextPageToken == "" { + return nil + } + c.PageToken(x.NextPageToken) + } +} + +// method id "cloudsupport.cases.comments.create": + +type CasesCommentsCreateCall struct { + s *Service + parent string + comment *Comment + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Create: Add a new comment to the specified Case. The comment object +// must have the following fields set: body. +// +// - parent: The resource name of Case to which this comment should be +// added. +func (r *CasesCommentsService) Create(parent string, comment *Comment) *CasesCommentsCreateCall { + c := &CasesCommentsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + c.comment = comment + 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 *CasesCommentsCreateCall) Fields(s ...googleapi.Field) *CasesCommentsCreateCall { + 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 *CasesCommentsCreateCall) Context(ctx context.Context) *CasesCommentsCreateCall { + 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 *CasesCommentsCreateCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *CasesCommentsCreateCall) 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.comment) + 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, "v2/{+parent}/comments") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("POST", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "parent": c.parent, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "cloudsupport.cases.comments.create" call. +// Exactly one of *Comment or error will be non-nil. Any non-2xx status +// code is an error. Response headers are in either +// *Comment.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 *CasesCommentsCreateCall) Do(opts ...googleapi.CallOption) (*Comment, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &Comment{ + 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": "Add a new comment to the specified Case. The comment object must have the following fields set: body.", + // "flatPath": "v2/{v2Id}/{v2Id1}/cases/{casesId}/comments", + // "httpMethod": "POST", + // "id": "cloudsupport.cases.comments.create", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "parent": { + // "description": "Required. The resource name of Case to which this comment should be added.", + // "location": "path", + // "pattern": "^[^/]+/[^/]+/cases/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2/{+parent}/comments", + // "request": { + // "$ref": "Comment" + // }, + // "response": { + // "$ref": "Comment" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "cloudsupport.cases.comments.list": + +type CasesCommentsListCall struct { + s *Service + parent string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// List: Retrieve all Comments associated with the Case object. +// +// - parent: The resource name of Case object for which comments should +// be listed. +func (r *CasesCommentsService) List(parent string) *CasesCommentsListCall { + c := &CasesCommentsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + return c +} + +// PageSize sets the optional parameter "pageSize": The maximum number +// of comments fetched with each request. Defaults to 10. +func (c *CasesCommentsListCall) PageSize(pageSize int64) *CasesCommentsListCall { + c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) + return c +} + +// PageToken sets the optional parameter "pageToken": A token +// identifying the page of results to return. If unspecified, the first +// page is retrieved. +func (c *CasesCommentsListCall) PageToken(pageToken string) *CasesCommentsListCall { + 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 *CasesCommentsListCall) Fields(s ...googleapi.Field) *CasesCommentsListCall { + 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 *CasesCommentsListCall) IfNoneMatch(entityTag string) *CasesCommentsListCall { + 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 *CasesCommentsListCall) Context(ctx context.Context) *CasesCommentsListCall { + 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 *CasesCommentsListCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *CasesCommentsListCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/{+parent}/comments") + 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 "cloudsupport.cases.comments.list" call. +// Exactly one of *ListCommentsResponse or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *ListCommentsResponse.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 *CasesCommentsListCall) Do(opts ...googleapi.CallOption) (*ListCommentsResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &ListCommentsResponse{ + 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": "Retrieve all Comments associated with the Case object.", + // "flatPath": "v2/{v2Id}/{v2Id1}/cases/{casesId}/comments", + // "httpMethod": "GET", + // "id": "cloudsupport.cases.comments.list", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "pageSize": { + // "description": "The maximum number of comments fetched with each request. Defaults to 10.", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "pageToken": { + // "description": "A token identifying the page of results to return. If unspecified, the first page is retrieved.", + // "location": "query", + // "type": "string" + // }, + // "parent": { + // "description": "Required. The resource name of Case object for which comments should be listed.", + // "location": "path", + // "pattern": "^[^/]+/[^/]+/cases/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2/{+parent}/comments", + // "response": { + // "$ref": "ListCommentsResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// Pages invokes f for each page of results. +// A non-nil error returned from f will halt the iteration. +// The provided context supersedes any context provided to the Context method. +func (c *CasesCommentsListCall) Pages(ctx context.Context, f func(*ListCommentsResponse) error) error { + c.ctx_ = ctx + defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point + for { + x, err := c.Do() + if err != nil { + return err + } + if err := f(x); err != nil { + return err + } + if x.NextPageToken == "" { + return nil + } + c.PageToken(x.NextPageToken) + } +} + +// method id "cloudsupport.media.download": + +type MediaDownloadCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Download: Download a file attachment on a case. Note: HTTP requests +// must append "?alt=media" to the URL. +// +// - name: The resource name of the attachment to be downloaded. +func (r *MediaService) Download(name string) *MediaDownloadCall { + c := &MediaDownloadCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *MediaDownloadCall) Fields(s ...googleapi.Field) *MediaDownloadCall { + 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 *MediaDownloadCall) IfNoneMatch(entityTag string) *MediaDownloadCall { + c.ifNoneMatch_ = entityTag + return c +} + +// Context sets the context to be used in this call's Do and Download +// methods. Any pending HTTP request will be aborted if the provided +// context is canceled. +func (c *MediaDownloadCall) Context(ctx context.Context) *MediaDownloadCall { + 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 *MediaDownloadCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *MediaDownloadCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "v2/{+name}:download") + 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) +} + +// Download fetches the API endpoint's "media" value, instead of the normal +// API response value. If the returned error is nil, the Response is guaranteed to +// have a 2xx status code. Callers must close the Response.Body as usual. +func (c *MediaDownloadCall) Download(opts ...googleapi.CallOption) (*http.Response, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("media") + if err != nil { + return nil, err + } + if err := googleapi.CheckResponse(res); err != nil { + res.Body.Close() + return nil, gensupport.WrapError(err) + } + return res, nil +} + +// Do executes the "cloudsupport.media.download" call. +// Exactly one of *Media or error will be non-nil. Any non-2xx status +// code is an error. Response headers are in either +// *Media.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 *MediaDownloadCall) Do(opts ...googleapi.CallOption) (*Media, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &Media{ + 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": "Download a file attachment on a case. Note: HTTP requests must append \"?alt=media\" to the URL.", + // "flatPath": "v2/{v2Id}/{v2Id1}/cases/{casesId}/attachments/{attachmentsId}:download", + // "httpMethod": "GET", + // "id": "cloudsupport.media.download", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "The resource name of the attachment to be downloaded.", + // "location": "path", + // "pattern": "^[^/]+/[^/]+/cases/[^/]+/attachments/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2/{+name}:download", + // "response": { + // "$ref": "Media" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ], + // "supportsMediaDownload": true, + // "useMediaDownloadService": true + // } + +} + +// method id "cloudsupport.media.upload": + +type MediaUploadCall struct { + s *Service + parent string + createattachmentrequest *CreateAttachmentRequest + urlParams_ gensupport.URLParams + mediaInfo_ *gensupport.MediaInfo + ctx_ context.Context + header_ http.Header +} + +// Upload: Create a file attachment on a case or Cloud resource. The +// attachment object must have the following fields set: filename. +// +// - parent: The resource name of the case (or case parent) to which the +// attachment should be attached. +func (r *MediaService) Upload(parent string, createattachmentrequest *CreateAttachmentRequest) *MediaUploadCall { + c := &MediaUploadCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + c.createattachmentrequest = createattachmentrequest + return c +} + +// Media specifies the media to upload in one or more chunks. The chunk +// size may be controlled by supplying a MediaOption generated by +// googleapi.ChunkSize. The chunk size defaults to +// googleapi.DefaultUploadChunkSize.The Content-Type header used in the +// upload request will be determined by sniffing the contents of r, +// unless a MediaOption generated by googleapi.ContentType is +// supplied. +// At most one of Media and ResumableMedia may be set. +func (c *MediaUploadCall) Media(r io.Reader, options ...googleapi.MediaOption) *MediaUploadCall { + c.mediaInfo_ = gensupport.NewInfoFromMedia(r, options) + return c +} + +// ResumableMedia specifies the media to upload in chunks and can be +// canceled with ctx. +// +// Deprecated: use Media instead. +// +// At most one of Media and ResumableMedia may be set. mediaType +// identifies the MIME media type of the upload, such as "image/png". If +// mediaType is "", it will be auto-detected. The provided ctx will +// supersede any context previously provided to the Context method. +func (c *MediaUploadCall) ResumableMedia(ctx context.Context, r io.ReaderAt, size int64, mediaType string) *MediaUploadCall { + c.ctx_ = ctx + c.mediaInfo_ = gensupport.NewInfoFromResumableMedia(r, size, mediaType) + return c +} + +// ProgressUpdater provides a callback function that will be called +// after every chunk. It should be a low-latency function in order to +// not slow down the upload operation. This should only be called when +// using ResumableMedia (as opposed to Media). +func (c *MediaUploadCall) ProgressUpdater(pu googleapi.ProgressUpdater) *MediaUploadCall { + c.mediaInfo_.SetProgressUpdater(pu) + 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 *MediaUploadCall) Fields(s ...googleapi.Field) *MediaUploadCall { + 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. +// This context will supersede any context previously provided to the +// ResumableMedia method. +func (c *MediaUploadCall) Context(ctx context.Context) *MediaUploadCall { + 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 *MediaUploadCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *MediaUploadCall) 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.createattachmentrequest) + 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, "v2/{+parent}/attachments") + if c.mediaInfo_ != nil { + urls = googleapi.ResolveRelative(c.s.BasePath, "/upload/v2/{+parent}/attachments") + c.urlParams_.Set("uploadType", c.mediaInfo_.UploadType()) + } + if body == nil { + body = new(bytes.Buffer) + reqHeaders.Set("Content-Type", "application/json") + } + body, getBody, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body) + defer cleanup() + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("POST", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + req.GetBody = getBody + googleapi.Expand(req.URL, map[string]string{ + "parent": c.parent, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "cloudsupport.media.upload" call. +// Exactly one of *Attachment or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Attachment.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 *MediaUploadCall) Do(opts ...googleapi.CallOption) (*Attachment, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + rx := c.mediaInfo_.ResumableUpload(res.Header.Get("Location")) + if rx != nil { + rx.Client = c.s.client + rx.UserAgent = c.s.userAgent() + ctx := c.ctx_ + if ctx == nil { + ctx = context.TODO() + } + res, err = rx.Upload(ctx) + if err != nil { + return nil, err + } + defer res.Body.Close() + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + } + ret := &Attachment{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Create a file attachment on a case or Cloud resource. The attachment object must have the following fields set: filename.", + // "flatPath": "v2/{v2Id}/{v2Id1}/cases/{casesId}/attachments", + // "httpMethod": "POST", + // "id": "cloudsupport.media.upload", + // "mediaUpload": { + // "accept": [ + // "*/*" + // ], + // "protocols": { + // "simple": { + // "multipart": true, + // "path": "/upload/v2/{+parent}/attachments" + // } + // } + // }, + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "parent": { + // "description": "Required. The resource name of the case (or case parent) to which the attachment should be attached.", + // "location": "path", + // "pattern": "^[^/]+/[^/]+/cases/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v2/{+parent}/attachments", + // "request": { + // "$ref": "CreateAttachmentRequest" + // }, + // "response": { + // "$ref": "Attachment" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ], + // "supportsMediaUpload": true + // } + +} diff --git a/cloudsupport/v2beta/cloudsupport-api.json b/cloudsupport/v2beta/cloudsupport-api.json index 83aa95955af..d008b150cd3 100644 --- a/cloudsupport/v2beta/cloudsupport-api.json +++ b/cloudsupport/v2beta/cloudsupport-api.json @@ -345,6 +345,11 @@ "location": "query", "type": "string" }, + "parent": { + "description": "The fully qualified name of parent resource to search cases under.", + "location": "query", + "type": "string" + }, "query": { "description": "An expression written in filter language. A query uses the following fields with the operators equals (`=`) and `AND`: - `organization`: An organization name in the form `organizations/`. - `project`: A project name in the form `projects/`. - `state`: The accepted values are `OPEN` or `CLOSED`. - `priority`: The accepted values are `P0`, `P1`, `P2`, `P3`, or `P4`. You can specify multiple values for priority using the `OR` operator. For example, `priority=P1 OR priority=P2`. - `creator.email`: The email address of the case creator. - `billingAccount`: A billing account in the form `billingAccounts/` You must specify either `organization` or `project`. To search across `displayName`, `description`, and comments, use a global restriction with no keyword or operator. For example, `\"my search\"`. To search only cases updated after a certain date, use `update_time` restricted with that particular date, time, and timezone in ISO datetime format. For example, `update_time\u003e\"2020-01-01T00:00:00-05:00\"`. `update_time` only supports the greater than operator (`\u003e`). Examples: - `organization=\"organizations/123456789\"` - `project=\"projects/my-project-id\"` - `project=\"projects/123456789\"` - `billing_account=\"billingAccounts/123456-A0B0C0-CUZ789\"` - `organization=\"organizations/123456789\" AND state=CLOSED` - `project=\"projects/my-project-id\" AND creator.email=\"tester@example.com\"` - `project=\"projects/my-project-id\" AND (priority=P0 OR priority=P1)`", "location": "query", @@ -543,7 +548,7 @@ } } }, - "revision": "20230614", + "revision": "20230626", "rootUrl": "https://cloudsupport.googleapis.com/", "schemas": { "Actor": { diff --git a/cloudsupport/v2beta/cloudsupport-gen.go b/cloudsupport/v2beta/cloudsupport-gen.go index 478e9fd9581..3215d735c31 100644 --- a/cloudsupport/v2beta/cloudsupport-gen.go +++ b/cloudsupport/v2beta/cloudsupport-gen.go @@ -2615,6 +2615,13 @@ func (c *CasesSearchCall) PageToken(pageToken string) *CasesSearchCall { return c } +// Parent sets the optional parameter "parent": The fully qualified name +// of parent resource to search cases under. +func (c *CasesSearchCall) Parent(parent string) *CasesSearchCall { + c.urlParams_.Set("parent", parent) + return c +} + // Query sets the optional parameter "query": An expression written in // filter language. A query uses the following fields with the operators // equals (`=`) and `AND`: - `organization`: An organization name in the @@ -2757,6 +2764,11 @@ func (c *CasesSearchCall) Do(opts ...googleapi.CallOption) (*SearchCasesResponse // "location": "query", // "type": "string" // }, + // "parent": { + // "description": "The fully qualified name of parent resource to search cases under.", + // "location": "query", + // "type": "string" + // }, // "query": { // "description": "An expression written in filter language. A query uses the following fields with the operators equals (`=`) and `AND`: - `organization`: An organization name in the form `organizations/`. - `project`: A project name in the form `projects/`. - `state`: The accepted values are `OPEN` or `CLOSED`. - `priority`: The accepted values are `P0`, `P1`, `P2`, `P3`, or `P4`. You can specify multiple values for priority using the `OR` operator. For example, `priority=P1 OR priority=P2`. - `creator.email`: The email address of the case creator. - `billingAccount`: A billing account in the form `billingAccounts/` You must specify either `organization` or `project`. To search across `displayName`, `description`, and comments, use a global restriction with no keyword or operator. For example, `\"my search\"`. To search only cases updated after a certain date, use `update_time` restricted with that particular date, time, and timezone in ISO datetime format. For example, `update_time\u003e\"2020-01-01T00:00:00-05:00\"`. `update_time` only supports the greater than operator (`\u003e`). Examples: - `organization=\"organizations/123456789\"` - `project=\"projects/my-project-id\"` - `project=\"projects/123456789\"` - `billing_account=\"billingAccounts/123456-A0B0C0-CUZ789\"` - `organization=\"organizations/123456789\" AND state=CLOSED` - `project=\"projects/my-project-id\" AND creator.email=\"tester@example.com\"` - `project=\"projects/my-project-id\" AND (priority=P0 OR priority=P1)`", // "location": "query", diff --git a/compute/v0.alpha/compute-api.json b/compute/v0.alpha/compute-api.json index 9184c39fa81..494e60c8d7b 100644 --- a/compute/v0.alpha/compute-api.json +++ b/compute/v0.alpha/compute-api.json @@ -42015,7 +42015,7 @@ } } }, - "revision": "20230610", + "revision": "20230620", "rootUrl": "https://compute.googleapis.com/", "schemas": { "AWSV4Signature": { @@ -45175,7 +45175,7 @@ "type": "array" }, "serviceLbPolicy": { - "description": "URL to networkservices.ServiceLbPolicy resource. Can only be set if load balancing scheme is EXTERNAL, INTERNAL_MANAGED or INTERNAL_SELF_MANAGED. If used with a backend service, must reference a global policy. If used with a regional backend service, must reference a regional policy.", + "description": "URL to networkservices.ServiceLbPolicy resource. Can only be set if load balancing scheme is EXTERNAL, EXTERNAL_MANAGED, INTERNAL_MANAGED or INTERNAL_SELF_MANAGED and the scope is global.", "type": "string" }, "sessionAffinity": { @@ -50121,7 +50121,7 @@ "type": "boolean" }, "allowGlobalAccess": { - "description": "This field is used along with the backend_service field for internal load balancing or with the target field for internal TargetInstance. If the field is set to TRUE, clients can access ILB from all regions. Otherwise only allows access from clients in the same region as the internal load balancer.", + "description": "This field is used along with the backend_service field for internal load balancing or with the target field for internal TargetInstance. If set to true, clients can access the Internal TCP/UDP Load Balancer, Internal HTTP(S) and TCP Proxy Load Balancer from all regions. If false, only allows access from the local region the load balancer is located at. Note that for INTERNAL_MANAGED forwarding rules, this field cannot be changed after the forwarding rule is created.", "type": "boolean" }, "allowPscGlobalAccess": { @@ -51606,6 +51606,7 @@ "BARE_METAL_LINUX_COMPATIBLE", "FEATURE_TYPE_UNSPECIFIED", "GVNIC", + "IDPF", "MULTI_IP_SUBNET", "SECURE_BOOT", "SEV_CAPABLE", @@ -51628,6 +51629,7 @@ "", "", "", + "", "" ], "type": "string" @@ -55165,6 +55167,11 @@ "format": "int32", "type": "integer" }, + "creatingInBulk": { + "description": "[Output Only] The number of instances that the managed instance group will attempt to create in bulk. If the desired count of instances cannot be created, entire batch will be deleted and the group will decrease its targetSize value accordingly.", + "format": "int32", + "type": "integer" + }, "creatingWithoutRetries": { "description": "[Output Only] The number of instances that the managed instance group will attempt to create. The group attempts to create each instance only once. If the group fails to create any of these instances, it decreases the group's targetSize value accordingly.", "format": "int32", @@ -56161,6 +56168,13 @@ "InstanceGroupManagersDeleteInstancesRequest": { "id": "InstanceGroupManagersDeleteInstancesRequest", "properties": { + "instanceNames": { + "description": "The list of instance names to delete. Queued instances do not have URL and can be deleted only by name. You cannot specify both URLs and names in a single request.", + "items": { + "type": "string" + }, + "type": "array" + }, "instances": { "description": "The URLs of one or more instances to delete. This can be a full URL or a partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME]. Queued instances do not have URL and can be deleted only by name. One cannot specify both URLs and names in a single request.", "items": { @@ -57149,6 +57163,7 @@ "ABANDONING", "CREATING", "CREATING_ATOMICALLY", + "CREATING_IN_BULK", "CREATING_WITHOUT_RETRIES", "DELETING", "NONE", @@ -57166,6 +57181,7 @@ "The managed instance group is abandoning this instance. The instance will be removed from the instance group and from any target pools that are associated with this group.", "The managed instance group is creating this instance. If the group fails to create this instance, it will try again until it is successful.", "The managed instance group is creating this instance atomically.", + "The managed instance group is creating this instance in bulk.", "The managed instance group is attempting to create this instance only once. If the group fails to create this instance, it does not try again and the group's targetSize value is decreased.", "The managed instance group is permanently deleting this instance.", "The managed instance group has not scheduled any actions for this instance.", @@ -62399,6 +62415,7 @@ "ABANDONING", "CREATING", "CREATING_ATOMICALLY", + "CREATING_IN_BULK", "CREATING_WITHOUT_RETRIES", "DELETING", "NONE", @@ -62416,6 +62433,7 @@ "The managed instance group is abandoning this instance. The instance will be removed from the instance group and from any target pools that are associated with this group.", "The managed instance group is creating this instance. If the group fails to create this instance, it will try again until it is successful.", "The managed instance group is creating this instance atomically.", + "The managed instance group is creating this instance in bulk.", "The managed instance group is attempting to create this instance only once. If the group fails to create this instance, it does not try again and the group's targetSize value is decreased.", "The managed instance group is permanently deleting this instance.", "The managed instance group has not scheduled any actions for this instance.", @@ -69536,7 +69554,7 @@ "type": "string" }, "ipCidrRange": { - "description": "The IPv4 address range, in CIDR format, represented by this public delegated prefix.", + "description": "The IP address range, in CIDR format, represented by this public delegated prefix.", "type": "string" }, "isLiveMigration": { @@ -69867,7 +69885,7 @@ "type": "string" }, "ipCidrRange": { - "description": "The IPv4 address range, in CIDR format, represented by this sub public delegated prefix.", + "description": "The IP address range, in CIDR format, represented by this sub public delegated prefix.", "type": "string" }, "isAddress": { diff --git a/compute/v0.alpha/compute-gen.go b/compute/v0.alpha/compute-gen.go index 7fa29bdd18e..3ccbaf5b52c 100644 --- a/compute/v0.alpha/compute-gen.go +++ b/compute/v0.alpha/compute-gen.go @@ -6403,10 +6403,8 @@ type BackendService struct { ServiceBindings []string `json:"serviceBindings,omitempty"` // ServiceLbPolicy: URL to networkservices.ServiceLbPolicy resource. Can - // only be set if load balancing scheme is EXTERNAL, INTERNAL_MANAGED or - // INTERNAL_SELF_MANAGED. If used with a backend service, must reference - // a global policy. If used with a regional backend service, must - // reference a regional policy. + // only be set if load balancing scheme is EXTERNAL, EXTERNAL_MANAGED, + // INTERNAL_MANAGED or INTERNAL_SELF_MANAGED and the scope is global. ServiceLbPolicy string `json:"serviceLbPolicy,omitempty"` // SessionAffinity: Type of session affinity to use. The default is @@ -14406,9 +14404,12 @@ type ForwardingRule struct { // AllowGlobalAccess: This field is used along with the backend_service // field for internal load balancing or with the target field for - // internal TargetInstance. If the field is set to TRUE, clients can - // access ILB from all regions. Otherwise only allows access from - // clients in the same region as the internal load balancer. + // internal TargetInstance. If set to true, clients can access the + // Internal TCP/UDP Load Balancer, Internal HTTP(S) and TCP Proxy Load + // Balancer from all regions. If false, only allows access from the + // local region the load balancer is located at. Note that for + // INTERNAL_MANAGED forwarding rules, this field cannot be changed after + // the forwarding rule is created. AllowGlobalAccess bool `json:"allowGlobalAccess,omitempty"` // AllowPscGlobalAccess: This is used in PSC consumer ForwardingRule to @@ -16793,6 +16794,7 @@ type GuestOsFeature struct { // "BARE_METAL_LINUX_COMPATIBLE" // "FEATURE_TYPE_UNSPECIFIED" // "GVNIC" + // "IDPF" // "MULTI_IP_SUBNET" // "SECURE_BOOT" // "SEV_CAPABLE" @@ -22260,6 +22262,12 @@ type InstanceGroupManagerActionsSummary struct { // value accordingly. CreatingAtomically int64 `json:"creatingAtomically,omitempty"` + // CreatingInBulk: [Output Only] The number of instances that the + // managed instance group will attempt to create in bulk. If the desired + // count of instances cannot be created, entire batch will be deleted + // and the group will decrease its targetSize value accordingly. + CreatingInBulk int64 `json:"creatingInBulk,omitempty"` + // CreatingWithoutRetries: [Output Only] The number of instances that // the managed instance group will attempt to create. The group attempts // to create each instance only once. If the group fails to create any @@ -23998,6 +24006,11 @@ func (s *InstanceGroupManagersCreateInstancesRequest) MarshalJSON() ([]byte, err } type InstanceGroupManagersDeleteInstancesRequest struct { + // InstanceNames: The list of instance names to delete. Queued instances + // do not have URL and can be deleted only by name. You cannot specify + // both URLs and names in a single request. + InstanceNames []string `json:"instanceNames,omitempty"` + // Instances: The URLs of one or more instances to delete. This can be a // full URL or a partial URL, such as // zones/[ZONE]/instances/[INSTANCE_NAME]. Queued instances do not have @@ -24015,7 +24028,7 @@ type InstanceGroupManagersDeleteInstancesRequest struct { // zone or region. SkipInstancesOnValidationError bool `json:"skipInstancesOnValidationError,omitempty"` - // ForceSendFields is a list of field names (e.g. "Instances") to + // ForceSendFields is a list of field names (e.g. "InstanceNames") 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 @@ -24023,10 +24036,10 @@ type InstanceGroupManagersDeleteInstancesRequest struct { // This may be used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "Instances") to include in - // API requests with the JSON null value. By default, fields with empty - // values are omitted from API requests. However, any field with an - // empty value appearing in NullFields will be sent to the server as + // NullFields is a list of field names (e.g. "InstanceNames") 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:"-"` @@ -25795,6 +25808,8 @@ type InstanceManagedByIgmErrorInstanceActionDetails struct { // it is successful. // "CREATING_ATOMICALLY" - The managed instance group is creating this // instance atomically. + // "CREATING_IN_BULK" - The managed instance group is creating this + // instance in bulk. // "CREATING_WITHOUT_RETRIES" - The managed instance group is // attempting to create this instance only once. If the group fails to // create this instance, it does not try again and the group's @@ -33921,6 +33936,8 @@ type ManagedInstance struct { // it is successful. // "CREATING_ATOMICALLY" - The managed instance group is creating this // instance atomically. + // "CREATING_IN_BULK" - The managed instance group is creating this + // instance in bulk. // "CREATING_WITHOUT_RETRIES" - The managed instance group is // attempting to create this instance only once. If the group fails to // create this instance, it does not try again and the group's @@ -45071,7 +45088,7 @@ type PublicDelegatedPrefix struct { // server generates this identifier. Id uint64 `json:"id,omitempty,string"` - // IpCidrRange: The IPv4 address range, in CIDR format, represented by + // IpCidrRange: The IP address range, in CIDR format, represented by // this public delegated prefix. IpCidrRange string `json:"ipCidrRange,omitempty"` @@ -45560,7 +45577,7 @@ type PublicDelegatedPrefixPublicDelegatedSubPrefix struct { // property when you create the resource. Description string `json:"description,omitempty"` - // IpCidrRange: The IPv4 address range, in CIDR format, represented by + // IpCidrRange: The IP address range, in CIDR format, represented by // this sub public delegated prefix. IpCidrRange string `json:"ipCidrRange,omitempty"` diff --git a/compute/v1/compute-api.json b/compute/v1/compute-api.json index 2fa90a6a6ba..3c21bcacaf0 100644 --- a/compute/v1/compute-api.json +++ b/compute/v1/compute-api.json @@ -33731,7 +33731,7 @@ } } }, - "revision": "20230610", + "revision": "20230620", "rootUrl": "https://compute.googleapis.com/", "schemas": { "AcceleratorConfig": { @@ -41002,7 +41002,7 @@ "type": "boolean" }, "allowGlobalAccess": { - "description": "This field is used along with the backend_service field for internal load balancing or with the target field for internal TargetInstance. If the field is set to TRUE, clients can access ILB from all regions. Otherwise only allows access from clients in the same region as the internal load balancer.", + "description": "This field is used along with the backend_service field for internal load balancing or with the target field for internal TargetInstance. If set to true, clients can access the Internal TCP/UDP Load Balancer, Internal HTTP(S) and TCP Proxy Load Balancer from all regions. If false, only allows access from the local region the load balancer is located at. Note that for INTERNAL_MANAGED forwarding rules, this field cannot be changed after the forwarding rule is created.", "type": "boolean" }, "allowPscGlobalAccess": { @@ -56433,7 +56433,7 @@ "type": "string" }, "ipCidrRange": { - "description": "The IPv4 address range, in CIDR format, represented by this public delegated prefix.", + "description": "The IP address range, in CIDR format, represented by this public delegated prefix.", "type": "string" }, "isLiveMigration": { @@ -56756,7 +56756,7 @@ "type": "string" }, "ipCidrRange": { - "description": "The IPv4 address range, in CIDR format, represented by this sub public delegated prefix.", + "description": "The IP address range, in CIDR format, represented by this sub public delegated prefix.", "type": "string" }, "isAddress": { @@ -59945,6 +59945,10 @@ "description": "The URL to a gateway that should handle matching packets. You can only specify the internet gateway using a full or partial valid URL: projects/ project/global/gateways/default-internet-gateway", "type": "string" }, + "nextHopHub": { + "description": "[Output Only] The full resource name of the Network Connectivity Center hub that will handle matching packets.", + "type": "string" + }, "nextHopIlb": { "description": "The URL to a forwarding rule of type loadBalancingScheme=INTERNAL that should handle matching packets or the IP address of the forwarding Rule. For example, the following are all valid URLs: - 10.128.0.56 - https://www.googleapis.com/compute/v1/projects/project/regions/region /forwardingRules/forwardingRule - regions/region/forwardingRules/forwardingRule ", "type": "string" @@ -60942,6 +60946,22 @@ "description": "Represents a Nat resource. It enables the VMs within the specified subnetworks to access Internet without external IP addresses. It specifies a list of subnetworks (and the ranges within) that want to use NAT. Customers can also provide the external IPs that would be used for NAT. GCP would auto-allocate ephemeral IPs if no external IPs are provided.", "id": "RouterNat", "properties": { + "autoNetworkTier": { + "description": "The network tier to use when automatically reserving IP addresses. Must be one of: PREMIUM, STANDARD. If not specified, PREMIUM tier will be used.", + "enum": [ + "FIXED_STANDARD", + "PREMIUM", + "STANDARD", + "STANDARD_OVERRIDES_FIXED_STANDARD" + ], + "enumDescriptions": [ + "Public internet quality with fixed bandwidth.", + "High quality, Google-grade network tier, support for all networking products.", + "Public internet quality, only limited support for other networking products.", + "(Output only) Temporary tier for FIXED_STANDARD when fixed standard tier is expired or not configured." + ], + "type": "string" + }, "drainNatIps": { "description": "A list of URLs of the IP resources to be drained. These IPs must be valid static external IPs that have been assigned to the NAT. These IPs should be used for updating/patching a NAT only.", "items": { @@ -66132,6 +66152,11 @@ "format": "byte", "type": "string" }, + "httpKeepAliveTimeoutSec": { + "description": "Specifies how long to keep a connection open, after completing a response, while there is no matching traffic (in seconds). If an HTTP keep-alive is not specified, a default value (610 seconds) will be used. For Global external HTTP(S) load balancer, the minimum allowed value is 5 seconds and the maximum allowed value is 1200 seconds. For Global external HTTP(S) load balancer (classic), this option is not available publicly.", + "format": "int32", + "type": "integer" + }, "id": { "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", "format": "uint64", @@ -66498,6 +66523,11 @@ "format": "byte", "type": "string" }, + "httpKeepAliveTimeoutSec": { + "description": "Specifies how long to keep a connection open, after completing a response, while there is no matching traffic (in seconds). If an HTTP keep-alive is not specified, a default value (610 seconds) will be used. For Global external HTTP(S) load balancer, the minimum allowed value is 5 seconds and the maximum allowed value is 1200 seconds. For Global external HTTP(S) load balancer (classic), this option is not available publicly.", + "format": "int32", + "type": "integer" + }, "id": { "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", "format": "uint64", diff --git a/compute/v1/compute-gen.go b/compute/v1/compute-gen.go index 3d92538f126..6617549790e 100644 --- a/compute/v1/compute-gen.go +++ b/compute/v1/compute-gen.go @@ -12995,9 +12995,12 @@ type ForwardingRule struct { // AllowGlobalAccess: This field is used along with the backend_service // field for internal load balancing or with the target field for - // internal TargetInstance. If the field is set to TRUE, clients can - // access ILB from all regions. Otherwise only allows access from - // clients in the same region as the internal load balancer. + // internal TargetInstance. If set to true, clients can access the + // Internal TCP/UDP Load Balancer, Internal HTTP(S) and TCP Proxy Load + // Balancer from all regions. If false, only allows access from the + // local region the load balancer is located at. Note that for + // INTERNAL_MANAGED forwarding rules, this field cannot be changed after + // the forwarding rule is created. AllowGlobalAccess bool `json:"allowGlobalAccess,omitempty"` // AllowPscGlobalAccess: This is used in PSC consumer ForwardingRule to @@ -37439,7 +37442,7 @@ type PublicDelegatedPrefix struct { // server generates this identifier. Id uint64 `json:"id,omitempty,string"` - // IpCidrRange: The IPv4 address range, in CIDR format, represented by + // IpCidrRange: The IP address range, in CIDR format, represented by // this public delegated prefix. IpCidrRange string `json:"ipCidrRange,omitempty"` @@ -37920,7 +37923,7 @@ type PublicDelegatedPrefixPublicDelegatedSubPrefix struct { // property when you create the resource. Description string `json:"description,omitempty"` - // IpCidrRange: The IPv4 address range, in CIDR format, represented by + // IpCidrRange: The IP address range, in CIDR format, represented by // this sub public delegated prefix. IpCidrRange string `json:"ipCidrRange,omitempty"` @@ -42815,6 +42818,10 @@ type Route struct { // project/global/gateways/default-internet-gateway NextHopGateway string `json:"nextHopGateway,omitempty"` + // NextHopHub: [Output Only] The full resource name of the Network + // Connectivity Center hub that will handle matching packets. + NextHopHub string `json:"nextHopHub,omitempty"` + // NextHopIlb: The URL to a forwarding rule of type // loadBalancingScheme=INTERNAL that should handle matching packets or // the IP address of the forwarding Rule. For example, the following are @@ -44245,6 +44252,21 @@ func (s *RouterMd5AuthenticationKey) MarshalJSON() ([]byte, error) { // that would be used for NAT. GCP would auto-allocate ephemeral IPs if // no external IPs are provided. type RouterNat struct { + // AutoNetworkTier: The network tier to use when automatically reserving + // IP addresses. Must be one of: PREMIUM, STANDARD. If not specified, + // PREMIUM tier will be used. + // + // Possible values: + // "FIXED_STANDARD" - Public internet quality with fixed bandwidth. + // "PREMIUM" - High quality, Google-grade network tier, support for + // all networking products. + // "STANDARD" - Public internet quality, only limited support for + // other networking products. + // "STANDARD_OVERRIDES_FIXED_STANDARD" - (Output only) Temporary tier + // for FIXED_STANDARD when fixed standard tier is expired or not + // configured. + AutoNetworkTier string `json:"autoNetworkTier,omitempty"` + // DrainNatIps: A list of URLs of the IP resources to be drained. These // IPs must be valid static external IPs that have been assigned to the // NAT. These IPs should be used for updating/patching a NAT only. @@ -44362,7 +44384,7 @@ type RouterNat struct { // to 30s if not set. UdpIdleTimeoutSec int64 `json:"udpIdleTimeoutSec,omitempty"` - // ForceSendFields is a list of field names (e.g. "DrainNatIps") to + // ForceSendFields is a list of field names (e.g. "AutoNetworkTier") 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 @@ -44370,12 +44392,13 @@ type RouterNat struct { // This may be used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "DrainNatIps") 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. "AutoNetworkTier") 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:"-"` } @@ -52237,6 +52260,15 @@ type TargetHttpProxy struct { // to retrieve the TargetHttpProxy. Fingerprint string `json:"fingerprint,omitempty"` + // HttpKeepAliveTimeoutSec: Specifies how long to keep a connection + // open, after completing a response, while there is no matching traffic + // (in seconds). If an HTTP keep-alive is not specified, a default value + // (610 seconds) will be used. For Global external HTTP(S) load + // balancer, the minimum allowed value is 5 seconds and the maximum + // allowed value is 1200 seconds. For Global external HTTP(S) load + // balancer (classic), this option is not available publicly. + HttpKeepAliveTimeoutSec int64 `json:"httpKeepAliveTimeoutSec,omitempty"` + // Id: [Output Only] The unique identifier for the resource. This // identifier is defined by the server. Id uint64 `json:"id,omitempty,string"` @@ -52867,6 +52899,15 @@ type TargetHttpsProxy struct { // to retrieve the TargetHttpsProxy. Fingerprint string `json:"fingerprint,omitempty"` + // HttpKeepAliveTimeoutSec: Specifies how long to keep a connection + // open, after completing a response, while there is no matching traffic + // (in seconds). If an HTTP keep-alive is not specified, a default value + // (610 seconds) will be used. For Global external HTTP(S) load + // balancer, the minimum allowed value is 5 seconds and the maximum + // allowed value is 1200 seconds. For Global external HTTP(S) load + // balancer (classic), this option is not available publicly. + HttpKeepAliveTimeoutSec int64 `json:"httpKeepAliveTimeoutSec,omitempty"` + // Id: [Output Only] The unique identifier for the resource. This // identifier is defined by the server. Id uint64 `json:"id,omitempty,string"` diff --git a/connectors/v2/connectors-api.json b/connectors/v2/connectors-api.json index b1b594783df..e3ee7d9f89d 100644 --- a/connectors/v2/connectors-api.json +++ b/connectors/v2/connectors-api.json @@ -478,7 +478,7 @@ } } }, - "revision": "20220808", + "revision": "20230621", "rootUrl": "https://connectors.googleapis.com/", "schemas": { "Action": { @@ -672,6 +672,53 @@ "TIME_WITH_TIMEZONE", "TIMESTAMP_WITH_TIMEZONE" ], + "enumDeprecated": [ + false, + true, + false, + false, + false, + true, + false, + true, + true, + false, + false, + true, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], "enumDescriptions": [ "Datatype unspecified.", "Deprecated Int type, use INTEGER type instead.", @@ -801,6 +848,53 @@ "TIME_WITH_TIMEZONE", "TIMESTAMP_WITH_TIMEZONE" ], + "enumDeprecated": [ + false, + true, + false, + false, + false, + true, + false, + true, + true, + false, + false, + true, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], "enumDescriptions": [ "Datatype unspecified.", "Deprecated Int type, use INTEGER type instead.", @@ -1015,6 +1109,53 @@ "TIME_WITH_TIMEZONE", "TIMESTAMP_WITH_TIMEZONE" ], + "enumDeprecated": [ + false, + true, + false, + false, + false, + true, + false, + true, + true, + false, + false, + true, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], "enumDescriptions": [ "Datatype unspecified.", "Deprecated Int type, use INTEGER type instead.", diff --git a/contactcenteraiplatform/v1alpha1/contactcenteraiplatform-api.json b/contactcenteraiplatform/v1alpha1/contactcenteraiplatform-api.json index 9acb59fa745..fc9868c3b91 100644 --- a/contactcenteraiplatform/v1alpha1/contactcenteraiplatform-api.json +++ b/contactcenteraiplatform/v1alpha1/contactcenteraiplatform-api.json @@ -571,7 +571,7 @@ } } }, - "revision": "20230615", + "revision": "20230621", "rootUrl": "https://contactcenteraiplatform.googleapis.com/", "schemas": { "AdminUser": { @@ -621,7 +621,7 @@ "type": "object" }, "ContactCenter": { - "description": "Message describing ContactCenter object Next ID: 14", + "description": "Message describing ContactCenter object Next ID: 15", "id": "ContactCenter", "properties": { "adminUser": { @@ -650,6 +650,10 @@ "$ref": "InstanceConfig", "description": "The configuration of this instance, it is currently immutable once created." }, + "kmsKey": { + "description": "Immutable. The KMS key name to encrypt the user input (`ContactCenter`).", + "type": "string" + }, "labels": { "additionalProperties": { "type": "string" @@ -711,11 +715,13 @@ "id": "ContactCenterQuota", "properties": { "contactCenterCountLimit": { + "deprecated": true, "description": "Deprecated: Use the Quota fields instead. Reflects the count limit of contact centers on a billing account.", "format": "int32", "type": "integer" }, "contactCenterCountSum": { + "deprecated": true, "description": "Deprecated: Use the Quota fields instead. Reflects the count sum of contact centers on a billing account.", "format": "int32", "type": "integer" @@ -1047,6 +1053,7 @@ "type": "string" }, "userEmail": { + "deprecated": true, "description": "Email address of the first admin users.", "type": "string" } diff --git a/contactcenteraiplatform/v1alpha1/contactcenteraiplatform-gen.go b/contactcenteraiplatform/v1alpha1/contactcenteraiplatform-gen.go index 54db85bc724..15d4866e0d2 100644 --- a/contactcenteraiplatform/v1alpha1/contactcenteraiplatform-gen.go +++ b/contactcenteraiplatform/v1alpha1/contactcenteraiplatform-gen.go @@ -284,7 +284,7 @@ func (s *BasicAuthConfig) MarshalJSON() ([]byte, error) { type CancelOperationRequest struct { } -// ContactCenter: Message describing ContactCenter object Next ID: 14 +// ContactCenter: Message describing ContactCenter object Next ID: 15 type ContactCenter struct { // AdminUser: Optional. Info about the first admin user, such as given // name and family name. @@ -309,6 +309,10 @@ type ContactCenter struct { // immutable once created. InstanceConfig *InstanceConfig `json:"instanceConfig,omitempty"` + // KmsKey: Immutable. The KMS key name to encrypt the user input + // (`ContactCenter`). + KmsKey string `json:"kmsKey,omitempty"` + // Labels: Labels as key value pairs Labels map[string]string `json:"labels,omitempty"` diff --git a/contactcenterinsights/v1/contactcenterinsights-api.json b/contactcenterinsights/v1/contactcenterinsights-api.json index 69e2d405a87..d189338bccf 100644 --- a/contactcenterinsights/v1/contactcenterinsights-api.json +++ b/contactcenterinsights/v1/contactcenterinsights-api.json @@ -1384,7 +1384,7 @@ } } }, - "revision": "20230621", + "revision": "20230626", "rootUrl": "https://contactcenterinsights.googleapis.com/", "schemas": { "GoogleCloudContactcenterinsightsV1Analysis": { @@ -2921,6 +2921,24 @@ "readOnly": true, "type": "string" }, + "languageCode": { + "description": "Language of the model.", + "type": "string" + }, + "modelType": { + "description": "Type of the model.", + "enum": [ + "MODEL_TYPE_UNSPECIFIED", + "TYPE_V1", + "TYPE_V2" + ], + "enumDescriptions": [ + "Unspecified model type.", + "Type V1.", + "Type V2." + ], + "type": "string" + }, "name": { "description": "Immutable. The resource name of the issue model. Format: projects/{project}/locations/{location}/issueModels/{issue_model}", "type": "string" @@ -5035,6 +5053,24 @@ "readOnly": true, "type": "string" }, + "languageCode": { + "description": "Language of the model.", + "type": "string" + }, + "modelType": { + "description": "Type of the model.", + "enum": [ + "MODEL_TYPE_UNSPECIFIED", + "TYPE_V1", + "TYPE_V2" + ], + "enumDescriptions": [ + "Unspecified model type.", + "Type V1.", + "Type V2." + ], + "type": "string" + }, "name": { "description": "Immutable. The resource name of the issue model. Format: projects/{project}/locations/{location}/issueModels/{issue_model}", "type": "string" diff --git a/contactcenterinsights/v1/contactcenterinsights-gen.go b/contactcenterinsights/v1/contactcenterinsights-gen.go index 5505e32e12d..3b40bbadbbd 100644 --- a/contactcenterinsights/v1/contactcenterinsights-gen.go +++ b/contactcenterinsights/v1/contactcenterinsights-gen.go @@ -2765,6 +2765,17 @@ type GoogleCloudContactcenterinsightsV1IssueModel struct { // IssueCount: Output only. Number of issues in this issue model. IssueCount int64 `json:"issueCount,omitempty,string"` + // LanguageCode: Language of the model. + LanguageCode string `json:"languageCode,omitempty"` + + // ModelType: Type of the model. + // + // Possible values: + // "MODEL_TYPE_UNSPECIFIED" - Unspecified model type. + // "TYPE_V1" - Type V1. + // "TYPE_V2" - Type V2. + ModelType string `json:"modelType,omitempty"` + // Name: Immutable. The resource name of the issue model. Format: // projects/{project}/locations/{location}/issueModels/{issue_model} Name string `json:"name,omitempty"` @@ -6283,6 +6294,17 @@ type GoogleCloudContactcenterinsightsV1alpha1IssueModel struct { // IssueCount: Output only. Number of issues in this issue model. IssueCount int64 `json:"issueCount,omitempty,string"` + // LanguageCode: Language of the model. + LanguageCode string `json:"languageCode,omitempty"` + + // ModelType: Type of the model. + // + // Possible values: + // "MODEL_TYPE_UNSPECIFIED" - Unspecified model type. + // "TYPE_V1" - Type V1. + // "TYPE_V2" - Type V2. + ModelType string `json:"modelType,omitempty"` + // Name: Immutable. The resource name of the issue model. Format: // projects/{project}/locations/{location}/issueModels/{issue_model} Name string `json:"name,omitempty"` diff --git a/container/v1/container-api.json b/container/v1/container-api.json index 83716edd616..45d258e3f98 100644 --- a/container/v1/container-api.json +++ b/container/v1/container-api.json @@ -2540,7 +2540,7 @@ } } }, - "revision": "20230522", + "revision": "20230620", "rootUrl": "https://container.googleapis.com/", "schemas": { "AcceleratorConfig": { @@ -2575,6 +2575,14 @@ "description": "AdditionalPodRangesConfig is the configuration for additional pod secondary ranges supporting the ClusterUpdate message.", "id": "AdditionalPodRangesConfig", "properties": { + "podRangeInfo": { + "description": "Output only. [Output only] Information for additional pod range.", + "items": { + "$ref": "RangeInfo" + }, + "readOnly": true, + "type": "array" + }, "podRangeNames": { "description": "Name for pod secondary ipv4 range which has the actual range defined ahead.", "items": { @@ -2609,6 +2617,10 @@ "$ref": "GcpFilestoreCsiDriverConfig", "description": "Configuration for the GCP Filestore CSI driver." }, + "gcsFuseCsiDriverConfig": { + "$ref": "GcsFuseCsiDriverConfig", + "description": "Configuration for the Cloud Storage Fuse CSI driver." + }, "gkeBackupAgentConfig": { "$ref": "GkeBackupAgentConfig", "description": "Configuration for the Backup for GKE agent addon." @@ -2757,6 +2769,10 @@ "description": "The image type to use for NAP created node. Please see https://cloud.google.com/kubernetes-engine/docs/concepts/node-images for available image types.", "type": "string" }, + "insecureKubeletReadonlyPortEnabled": { + "description": "Enable or disable Kubelet read only port.", + "type": "boolean" + }, "management": { "$ref": "NodeManagement", "description": "Specifies the node management options for NAP created node-pools." @@ -3351,6 +3367,25 @@ }, "type": "object" }, + "ClusterNetworkPerformanceConfig": { + "description": "Configuration of network bandwidth tiers", + "id": "ClusterNetworkPerformanceConfig", + "properties": { + "totalEgressBandwidthTier": { + "description": "Specifies the total network bandwidth tier for NodePools in the cluster.", + "enum": [ + "TIER_UNSPECIFIED", + "TIER_1" + ], + "enumDescriptions": [ + "Default value", + "Higher bandwidth, actual values based on VM size." + ], + "type": "string" + } + }, + "type": "object" + }, "ClusterUpdate": { "description": "ClusterUpdate describes an update to the cluster. Exactly one update can be applied to a cluster with each request, so at most one field can be provided.", "id": "ClusterUpdate", @@ -3484,6 +3519,10 @@ "description": "The monitoring service the cluster should use to write metrics. Currently available options: * \"monitoring.googleapis.com/kubernetes\" - The Cloud Monitoring service with a Kubernetes-native resource model * `monitoring.googleapis.com` - The legacy Cloud Monitoring service (no longer available as of GKE 1.15). * `none` - No metrics will be exported from the cluster. If left as an empty string,`monitoring.googleapis.com/kubernetes` will be used for GKE 1.14+ or `monitoring.googleapis.com` for earlier versions.", "type": "string" }, + "desiredNetworkPerformanceConfig": { + "$ref": "ClusterNetworkPerformanceConfig", + "description": "The desired network performance config." + }, "desiredNodePoolAutoConfigNetworkTags": { "$ref": "NetworkTags", "description": "The desired network tags that apply to all auto-provisioned node pools in autopilot clusters and node auto-provisioning enabled clusters." @@ -3717,12 +3756,14 @@ "enum": [ "PROVIDER_UNSPECIFIED", "PLATFORM_DEFAULT", - "CLOUD_DNS" + "CLOUD_DNS", + "KUBE_DNS" ], "enumDescriptions": [ "Default value", "Use GKE default DNS provider(kube-dns) for DNS resolution.", - "Use CloudDNS for DNS resolution." + "Use CloudDNS for DNS resolution.", + "Use KubeDNS for DNS resolution" ], "type": "string" }, @@ -3986,6 +4027,17 @@ }, "type": "object" }, + "GcsFuseCsiDriverConfig": { + "description": "Configuration for the Cloud Storage Fuse CSI driver.", + "id": "GcsFuseCsiDriverConfig", + "properties": { + "enabled": { + "description": "Whether the Cloud Storage Fuse CSI driver is enabled for this cluster.", + "type": "boolean" + } + }, + "type": "object" + }, "GetJSONWebKeysResponse": { "description": "GetJSONWebKeysResponse is a valid JSON Web Key Set as specififed in rfc 7517", "id": "GetJSONWebKeysResponse", @@ -4147,6 +4199,12 @@ "description": "Whether a new subnetwork will be created automatically for the cluster. This field is only applicable when `use_ip_aliases` is true.", "type": "boolean" }, + "defaultPodIpv4RangeUtilization": { + "description": "Output only. [Output only] The utilization of the cluster default IPv4 range for pod. The ratio is Usage/[Total number of IPs in the secondary range], Usage=numNodes*numZones*podIPsPerNode.", + "format": "double", + "readOnly": true, + "type": "number" + }, "ipv6AccessType": { "description": "The ipv6 access type (internal or external) when create_subnetwork is true", "enum": [ @@ -4764,6 +4822,10 @@ "description": "Output only. The relative name of the Google Compute Engine network(https://cloud.google.com/compute/docs/networks-and-firewalls#networks) to which the cluster is connected. Example: projects/my-project/global/networks/my-network", "type": "string" }, + "networkPerformanceConfig": { + "$ref": "ClusterNetworkPerformanceConfig", + "description": "Network bandwidth tier configuration." + }, "privateIpv6GoogleAccess": { "description": "The desired state of IPv6 connectivity to Google Services. By default, no private IPv6 access to or from Google Services (all access will be via IPv4)", "enum": [ @@ -5087,6 +5149,10 @@ "description": "Control the CPU management policy on the node. See https://kubernetes.io/docs/tasks/administer-cluster/cpu-management-policies/ The following values are allowed. * \"none\": the default, which represents the existing scheduling behavior. * \"static\": allows pods with certain resource characteristics to be granted increased CPU affinity and exclusivity on the node. The default value is 'none' if unspecified.", "type": "string" }, + "insecureKubeletReadonlyPortEnabled": { + "description": "Enable or disable Kubelet read only port.", + "type": "boolean" + }, "podPidsLimit": { "description": "Set the Pod PID limits. See https://kubernetes.io/docs/concepts/policy/pid-limiting/#pod-pid-limits Controls the maximum number of processes allowed to run in a pod. The value must be greater than or equal to 1024 and less than 4194304.", "format": "int64", @@ -5152,6 +5218,12 @@ "description": "The IP address range for pod IPs in this node pool. Only applicable if `create_pod_range` is true. Set to blank to have a range chosen with the default size. Set to /netmask (e.g. `/14`) to have a range chosen with a specific netmask. Set to a [CIDR](https://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing) notation (e.g. `10.96.0.0/14`) to pick a specific range to use. Only applicable if `ip_allocation_policy.use_ip_aliases` is true. This field cannot be changed after the node pool has been created.", "type": "string" }, + "podIpv4RangeUtilization": { + "description": "Output only. [Output only] The utilization of the IPv4 range for pod. The ratio is Usage/[Total number of IPs in the secondary range], Usage=numNodes*numZones*podIPsPerNode.", + "format": "double", + "readOnly": true, + "type": "number" + }, "podRange": { "description": "The ID of the secondary range for pod IPs. If `create_pod_range` is true, this ID is used for the new range. If `create_pod_range` is false, uses an existing secondary range with this ID. Only applicable if `ip_allocation_policy.use_ip_aliases` is true. This field cannot be changed after the node pool has been created.", "type": "string" @@ -5685,6 +5757,24 @@ }, "type": "object" }, + "RangeInfo": { + "description": "RangeInfo contains the range name and the range utilization by this cluster.", + "id": "RangeInfo", + "properties": { + "rangeName": { + "description": "Output only. [Output only] Name of a range.", + "readOnly": true, + "type": "string" + }, + "utilization": { + "description": "Output only. [Output only] The utilization of the range.", + "format": "double", + "readOnly": true, + "type": "number" + } + }, + "type": "object" + }, "RecurringTimeWindow": { "description": "Represents an arbitrary window of time that recurs.", "id": "RecurringTimeWindow", diff --git a/container/v1/container-gen.go b/container/v1/container-gen.go index 27233a714f4..a6368a67be7 100644 --- a/container/v1/container-gen.go +++ b/container/v1/container-gen.go @@ -331,11 +331,15 @@ func (s *AcceleratorConfig) MarshalJSON() ([]byte, error) { // configuration for additional pod secondary ranges supporting the // ClusterUpdate message. type AdditionalPodRangesConfig struct { + // PodRangeInfo: Output only. [Output only] Information for additional + // pod range. + PodRangeInfo []*RangeInfo `json:"podRangeInfo,omitempty"` + // PodRangeNames: Name for pod secondary ipv4 range which has the actual // range defined ahead. PodRangeNames []string `json:"podRangeNames,omitempty"` - // ForceSendFields is a list of field names (e.g. "PodRangeNames") to + // ForceSendFields is a list of field names (e.g. "PodRangeInfo") 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 @@ -343,7 +347,7 @@ type AdditionalPodRangesConfig struct { // This may be used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "PodRangeNames") to include + // NullFields is a list of field names (e.g. "PodRangeInfo") 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 @@ -382,6 +386,10 @@ type AddonsConfig struct { // driver. GcpFilestoreCsiDriverConfig *GcpFilestoreCsiDriverConfig `json:"gcpFilestoreCsiDriverConfig,omitempty"` + // GcsFuseCsiDriverConfig: Configuration for the Cloud Storage Fuse CSI + // driver. + GcsFuseCsiDriverConfig *GcsFuseCsiDriverConfig `json:"gcsFuseCsiDriverConfig,omitempty"` + // GkeBackupAgentConfig: Configuration for the Backup for GKE agent // addon. GkeBackupAgentConfig *GkeBackupAgentConfig `json:"gkeBackupAgentConfig,omitempty"` @@ -653,6 +661,10 @@ type AutoprovisioningNodePoolDefaults struct { // for available image types. ImageType string `json:"imageType,omitempty"` + // InsecureKubeletReadonlyPortEnabled: Enable or disable Kubelet read + // only port. + InsecureKubeletReadonlyPortEnabled bool `json:"insecureKubeletReadonlyPortEnabled,omitempty"` + // Management: Specifies the node management options for NAP created // node-pools. Management *NodeManagement `json:"management,omitempty"` @@ -1531,6 +1543,42 @@ func (s *ClusterAutoscaling) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// ClusterNetworkPerformanceConfig: Configuration of network bandwidth +// tiers +type ClusterNetworkPerformanceConfig struct { + // TotalEgressBandwidthTier: Specifies the total network bandwidth tier + // for NodePools in the cluster. + // + // Possible values: + // "TIER_UNSPECIFIED" - Default value + // "TIER_1" - Higher bandwidth, actual values based on VM size. + TotalEgressBandwidthTier string `json:"totalEgressBandwidthTier,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "TotalEgressBandwidthTier") 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. "TotalEgressBandwidthTier") + // 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 *ClusterNetworkPerformanceConfig) MarshalJSON() ([]byte, error) { + type NoMethod ClusterNetworkPerformanceConfig + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // ClusterUpdate: ClusterUpdate describes an update to the cluster. // Exactly one update can be applied to a cluster with each request, so // at most one field can be provided. @@ -1677,6 +1725,10 @@ type ClusterUpdate struct { // versions. DesiredMonitoringService string `json:"desiredMonitoringService,omitempty"` + // DesiredNetworkPerformanceConfig: The desired network performance + // config. + DesiredNetworkPerformanceConfig *ClusterNetworkPerformanceConfig `json:"desiredNetworkPerformanceConfig,omitempty"` + // DesiredNodePoolAutoConfigNetworkTags: The desired network tags that // apply to all auto-provisioned node pools in autopilot clusters and // node auto-provisioning enabled clusters. @@ -2083,6 +2135,7 @@ type DNSConfig struct { // "PLATFORM_DEFAULT" - Use GKE default DNS provider(kube-dns) for DNS // resolution. // "CLOUD_DNS" - Use CloudDNS for DNS resolution. + // "KUBE_DNS" - Use KubeDNS for DNS resolution ClusterDns string `json:"clusterDns,omitempty"` // ClusterDnsDomain: cluster_dns_domain is the suffix used for all @@ -2614,6 +2667,36 @@ func (s *GcpFilestoreCsiDriverConfig) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// GcsFuseCsiDriverConfig: Configuration for the Cloud Storage Fuse CSI +// driver. +type GcsFuseCsiDriverConfig struct { + // Enabled: Whether the Cloud Storage Fuse CSI driver is enabled for + // this cluster. + Enabled bool `json:"enabled,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Enabled") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Enabled") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GcsFuseCsiDriverConfig) MarshalJSON() ([]byte, error) { + type NoMethod GcsFuseCsiDriverConfig + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // GetJSONWebKeysResponse: GetJSONWebKeysResponse is a valid JSON Web // Key Set as specififed in rfc 7517 type GetJSONWebKeysResponse struct { @@ -2904,6 +2987,12 @@ type IPAllocationPolicy struct { // `use_ip_aliases` is true. CreateSubnetwork bool `json:"createSubnetwork,omitempty"` + // DefaultPodIpv4RangeUtilization: Output only. [Output only] The + // utilization of the cluster default IPv4 range for pod. The ratio is + // Usage/[Total number of IPs in the secondary range], + // Usage=numNodes*numZones*podIPsPerNode. + DefaultPodIpv4RangeUtilization float64 `json:"defaultPodIpv4RangeUtilization,omitempty"` + // Ipv6AccessType: The ipv6 access type (internal or external) when // create_subnetwork is true // @@ -3035,6 +3124,20 @@ func (s *IPAllocationPolicy) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +func (s *IPAllocationPolicy) UnmarshalJSON(data []byte) error { + type NoMethod IPAllocationPolicy + var s1 struct { + DefaultPodIpv4RangeUtilization gensupport.JSONFloat64 `json:"defaultPodIpv4RangeUtilization"` + *NoMethod + } + s1.NoMethod = (*NoMethod)(s) + if err := json.Unmarshal(data, &s1); err != nil { + return err + } + s.DefaultPodIpv4RangeUtilization = float64(s1.DefaultPodIpv4RangeUtilization) + return nil +} + // IdentityServiceConfig: IdentityServiceConfig is configuration for // Identity Service which allows customers to use external identity // providers with the K8S API @@ -4059,6 +4162,9 @@ type NetworkConfig struct { // projects/my-project/global/networks/my-network Network string `json:"network,omitempty"` + // NetworkPerformanceConfig: Network bandwidth tier configuration. + NetworkPerformanceConfig *ClusterNetworkPerformanceConfig `json:"networkPerformanceConfig,omitempty"` + // PrivateIpv6GoogleAccess: The desired state of IPv6 connectivity to // Google Services. By default, no private IPv6 access to or from Google // Services (all access will be via IPv4) @@ -4553,6 +4659,10 @@ type NodeKubeletConfig struct { // unspecified. CpuManagerPolicy string `json:"cpuManagerPolicy,omitempty"` + // InsecureKubeletReadonlyPortEnabled: Enable or disable Kubelet read + // only port. + InsecureKubeletReadonlyPortEnabled bool `json:"insecureKubeletReadonlyPortEnabled,omitempty"` + // PodPidsLimit: Set the Pod PID limits. See // https://kubernetes.io/docs/concepts/policy/pid-limiting/#pod-pid-limits // Controls the maximum number of processes allowed to run in a pod. The @@ -4692,6 +4802,11 @@ type NodeNetworkConfig struct { // field cannot be changed after the node pool has been created. PodIpv4CidrBlock string `json:"podIpv4CidrBlock,omitempty"` + // PodIpv4RangeUtilization: Output only. [Output only] The utilization + // of the IPv4 range for pod. The ratio is Usage/[Total number of IPs in + // the secondary range], Usage=numNodes*numZones*podIPsPerNode. + PodIpv4RangeUtilization float64 `json:"podIpv4RangeUtilization,omitempty"` + // PodRange: The ID of the secondary range for pod IPs. If // `create_pod_range` is true, this ID is used for the new range. If // `create_pod_range` is false, uses an existing secondary range with @@ -4724,6 +4839,20 @@ func (s *NodeNetworkConfig) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +func (s *NodeNetworkConfig) UnmarshalJSON(data []byte) error { + type NoMethod NodeNetworkConfig + var s1 struct { + PodIpv4RangeUtilization gensupport.JSONFloat64 `json:"podIpv4RangeUtilization"` + *NoMethod + } + s1.NoMethod = (*NoMethod)(s) + if err := json.Unmarshal(data, &s1); err != nil { + return err + } + s.PodIpv4RangeUtilization = float64(s1.PodIpv4RangeUtilization) + return nil +} + // NodePool: NodePool contains the name and configuration for a // cluster's node pool. Node pools are a set of nodes (i.e. VM's), with // a common configuration and specification, under the control of the @@ -5555,6 +5684,52 @@ func (s *PubSub) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// RangeInfo: RangeInfo contains the range name and the range +// utilization by this cluster. +type RangeInfo struct { + // RangeName: Output only. [Output only] Name of a range. + RangeName string `json:"rangeName,omitempty"` + + // Utilization: Output only. [Output only] The utilization of the range. + Utilization float64 `json:"utilization,omitempty"` + + // ForceSendFields is a list of field names (e.g. "RangeName") 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. "RangeName") 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 *RangeInfo) MarshalJSON() ([]byte, error) { + type NoMethod RangeInfo + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +func (s *RangeInfo) UnmarshalJSON(data []byte) error { + type NoMethod RangeInfo + var s1 struct { + Utilization gensupport.JSONFloat64 `json:"utilization"` + *NoMethod + } + s1.NoMethod = (*NoMethod)(s) + if err := json.Unmarshal(data, &s1); err != nil { + return err + } + s.Utilization = float64(s1.Utilization) + return nil +} + // RecurringTimeWindow: Represents an arbitrary window of time that // recurs. type RecurringTimeWindow struct { diff --git a/container/v1beta1/container-api.json b/container/v1beta1/container-api.json index a733be120b1..5aad19d29f4 100644 --- a/container/v1beta1/container-api.json +++ b/container/v1beta1/container-api.json @@ -2565,7 +2565,7 @@ } } }, - "revision": "20230522", + "revision": "20230620", "rootUrl": "https://container.googleapis.com/", "schemas": { "AcceleratorConfig": { @@ -2605,6 +2605,14 @@ "description": "AdditionalPodRangesConfig is the configuration for additional pod secondary ranges supporting the ClusterUpdate message.", "id": "AdditionalPodRangesConfig", "properties": { + "podRangeInfo": { + "description": "Output only. [Output only] Information for additional pod range.", + "items": { + "$ref": "RangeInfo" + }, + "readOnly": true, + "type": "array" + }, "podRangeNames": { "description": "Name for pod secondary ipv4 range which has the actual range defined ahead.", "items": { @@ -2799,6 +2807,10 @@ "description": "The image type to use for NAP created node. Please see https://cloud.google.com/kubernetes-engine/docs/concepts/node-images for available image types.", "type": "string" }, + "insecureKubeletReadonlyPortEnabled": { + "description": "Enable or disable Kubelet read only port.", + "type": "boolean" + }, "management": { "$ref": "NodeManagement", "description": "NodeManagement configuration for this NodePool." @@ -3444,6 +3456,25 @@ }, "type": "object" }, + "ClusterNetworkPerformanceConfig": { + "description": "Configuration of all network bandwidth tiers", + "id": "ClusterNetworkPerformanceConfig", + "properties": { + "totalEgressBandwidthTier": { + "description": "Specifies the total network bandwidth tier for the NodePool.", + "enum": [ + "TIER_UNSPECIFIED", + "TIER_1" + ], + "enumDescriptions": [ + "Default value", + "Higher bandwidth, actual values based on VM size." + ], + "type": "string" + } + }, + "type": "object" + }, "ClusterTelemetry": { "description": "Telemetry integration for the cluster.", "id": "ClusterTelemetry", @@ -3608,6 +3639,10 @@ "description": "The monitoring service the cluster should use to write metrics. Currently available options: * \"monitoring.googleapis.com/kubernetes\" - The Cloud Monitoring service with a Kubernetes-native resource model * `monitoring.googleapis.com` - The legacy Cloud Monitoring service (no longer available as of GKE 1.15). * `none` - No metrics will be exported from the cluster. If left as an empty string,`monitoring.googleapis.com/kubernetes` will be used for GKE 1.14+ or `monitoring.googleapis.com` for earlier versions.", "type": "string" }, + "desiredNetworkPerformanceConfig": { + "$ref": "ClusterNetworkPerformanceConfig", + "description": "The desired network performance config." + }, "desiredNodePoolAutoConfigNetworkTags": { "$ref": "NetworkTags", "description": "The desired network tags that apply to all auto-provisioned node pools in autopilot clusters and node auto-provisioning enabled clusters." @@ -3861,12 +3896,14 @@ "enum": [ "PROVIDER_UNSPECIFIED", "PLATFORM_DEFAULT", - "CLOUD_DNS" + "CLOUD_DNS", + "KUBE_DNS" ], "enumDescriptions": [ "Default value", "Use GKE default DNS provider(kube-dns) for DNS resolution.", - "Use CloudDNS for DNS resolution." + "Use CloudDNS for DNS resolution.", + "Use KubeDNS for DNS resolution" ], "type": "string" }, @@ -4340,6 +4377,12 @@ "description": "Whether a new subnetwork will be created automatically for the cluster. This field is only applicable when `use_ip_aliases` is true.", "type": "boolean" }, + "defaultPodIpv4RangeUtilization": { + "description": "Output only. [Output only] The utilization of the cluster default IPv4 range for pod. The ratio is Usage/[Total number of IPs in the secondary range], Usage=numNodes*numZones*podIPsPerNode.", + "format": "double", + "readOnly": true, + "type": "number" + }, "ipv6AccessType": { "description": "The ipv6 access type (internal or external) when create_subnetwork is true", "enum": [ @@ -5045,6 +5088,10 @@ "description": "Output only. The relative name of the Google Compute Engine network(https://cloud.google.com/compute/docs/networks-and-firewalls#networks) to which the cluster is connected. Example: projects/my-project/global/networks/my-network", "type": "string" }, + "networkPerformanceConfig": { + "$ref": "ClusterNetworkPerformanceConfig", + "description": "Network bandwidth tier configuration." + }, "privateIpv6GoogleAccess": { "description": "The desired state of IPv6 connectivity to Google Services. By default, no private IPv6 access to or from Google Services (all access will be via IPv4)", "enum": [ @@ -5294,7 +5341,7 @@ "type": "array" }, "preemptible": { - "description": "Whether the nodes are created as preemptible VM instances. See: https://cloud.google.com/compute/docs/instances/preemptible for more inforamtion about preemptible VM instances.", + "description": "Whether the nodes are created as preemptible VM instances. See: https://cloud.google.com/compute/docs/instances/preemptible for more information about preemptible VM instances.", "type": "boolean" }, "reservationAffinity": { @@ -5384,6 +5431,10 @@ "description": "Control the CPU management policy on the node. See https://kubernetes.io/docs/tasks/administer-cluster/cpu-management-policies/ The following values are allowed. * \"none\": the default, which represents the existing scheduling behavior. * \"static\": allows pods with certain resource characteristics to be granted increased CPU affinity and exclusivity on the node. The default value is 'none' if unspecified.", "type": "string" }, + "insecureKubeletReadonlyPortEnabled": { + "description": "Enable or disable Kubelet read only port.", + "type": "boolean" + }, "podPidsLimit": { "description": "Set the Pod PID limits. See https://kubernetes.io/docs/concepts/policy/pid-limiting/#pod-pid-limits Controls the maximum number of processes allowed to run in a pod. The value must be greater than or equal to 1024 and less than 4194304.", "format": "int64", @@ -5449,6 +5500,12 @@ "description": "The IP address range for pod IPs in this node pool. Only applicable if `create_pod_range` is true. Set to blank to have a range chosen with the default size. Set to /netmask (e.g. `/14`) to have a range chosen with a specific netmask. Set to a [CIDR](https://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing) notation (e.g. `10.96.0.0/14`) to pick a specific range to use. Only applicable if `ip_allocation_policy.use_ip_aliases` is true. This field cannot be changed after the node pool has been created.", "type": "string" }, + "podIpv4RangeUtilization": { + "description": "Output only. [Output only] The utilization of the IPv4 range for pod. The ratio is Usage/[Total number of IPs in the secondary range], Usage=numNodes*numZones*podIPsPerNode.", + "format": "double", + "readOnly": true, + "type": "number" + }, "podRange": { "description": "The ID of the secondary range for pod IPs. If `create_pod_range` is true, this ID is used for the new range. If `create_pod_range` is false, uses an existing secondary range with this ID. Only applicable if `ip_allocation_policy.use_ip_aliases` is true. This field cannot be changed after the node pool has been created.", "type": "string" @@ -5887,6 +5944,10 @@ "description": "PlacementPolicy defines the placement policy used by the node pool.", "id": "PlacementPolicy", "properties": { + "tpuTopology": { + "description": "TPU placement topology for pod slice node pool. https://cloud.google.com/tpu/docs/types-topologies#tpu_topologies", + "type": "string" + }, "type": { "description": "The type of placement.", "enum": [ @@ -6018,6 +6079,24 @@ }, "type": "object" }, + "RangeInfo": { + "description": "RangeInfo contains the range name and the range utilization by this cluster.", + "id": "RangeInfo", + "properties": { + "rangeName": { + "description": "Output only. [Output only] Name of a range.", + "readOnly": true, + "type": "string" + }, + "utilization": { + "description": "Output only. [Output only] The utilization of the range.", + "format": "double", + "readOnly": true, + "type": "number" + } + }, + "type": "object" + }, "RecurringTimeWindow": { "description": "Represents an arbitrary window of time that recurs.", "id": "RecurringTimeWindow", diff --git a/container/v1beta1/container-gen.go b/container/v1beta1/container-gen.go index d73f734a577..44cbccf7d29 100644 --- a/container/v1beta1/container-gen.go +++ b/container/v1beta1/container-gen.go @@ -335,11 +335,15 @@ func (s *AcceleratorConfig) MarshalJSON() ([]byte, error) { // configuration for additional pod secondary ranges supporting the // ClusterUpdate message. type AdditionalPodRangesConfig struct { + // PodRangeInfo: Output only. [Output only] Information for additional + // pod range. + PodRangeInfo []*RangeInfo `json:"podRangeInfo,omitempty"` + // PodRangeNames: Name for pod secondary ipv4 range which has the actual // range defined ahead. PodRangeNames []string `json:"podRangeNames,omitempty"` - // ForceSendFields is a list of field names (e.g. "PodRangeNames") to + // ForceSendFields is a list of field names (e.g. "PodRangeInfo") 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 @@ -347,7 +351,7 @@ type AdditionalPodRangesConfig struct { // This may be used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "PodRangeNames") to include + // NullFields is a list of field names (e.g. "PodRangeInfo") 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 @@ -670,6 +674,10 @@ type AutoprovisioningNodePoolDefaults struct { // for available image types. ImageType string `json:"imageType,omitempty"` + // InsecureKubeletReadonlyPortEnabled: Enable or disable Kubelet read + // only port. + InsecureKubeletReadonlyPortEnabled bool `json:"insecureKubeletReadonlyPortEnabled,omitempty"` + // Management: NodeManagement configuration for this NodePool. Management *NodeManagement `json:"management,omitempty"` @@ -1631,6 +1639,42 @@ func (s *ClusterAutoscaling) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// ClusterNetworkPerformanceConfig: Configuration of all network +// bandwidth tiers +type ClusterNetworkPerformanceConfig struct { + // TotalEgressBandwidthTier: Specifies the total network bandwidth tier + // for the NodePool. + // + // Possible values: + // "TIER_UNSPECIFIED" - Default value + // "TIER_1" - Higher bandwidth, actual values based on VM size. + TotalEgressBandwidthTier string `json:"totalEgressBandwidthTier,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "TotalEgressBandwidthTier") 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. "TotalEgressBandwidthTier") + // 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 *ClusterNetworkPerformanceConfig) MarshalJSON() ([]byte, error) { + type NoMethod ClusterNetworkPerformanceConfig + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // ClusterTelemetry: Telemetry integration for the cluster. type ClusterTelemetry struct { // Type: Type of the integration. @@ -1819,6 +1863,10 @@ type ClusterUpdate struct { // versions. DesiredMonitoringService string `json:"desiredMonitoringService,omitempty"` + // DesiredNetworkPerformanceConfig: The desired network performance + // config. + DesiredNetworkPerformanceConfig *ClusterNetworkPerformanceConfig `json:"desiredNetworkPerformanceConfig,omitempty"` + // DesiredNodePoolAutoConfigNetworkTags: The desired network tags that // apply to all auto-provisioned node pools in autopilot clusters and // node auto-provisioning enabled clusters. @@ -2245,6 +2293,7 @@ type DNSConfig struct { // "PLATFORM_DEFAULT" - Use GKE default DNS provider(kube-dns) for DNS // resolution. // "CLOUD_DNS" - Use CloudDNS for DNS resolution. + // "KUBE_DNS" - Use KubeDNS for DNS resolution ClusterDns string `json:"clusterDns,omitempty"` // ClusterDnsDomain: cluster_dns_domain is the suffix used for all @@ -3184,6 +3233,12 @@ type IPAllocationPolicy struct { // `use_ip_aliases` is true. CreateSubnetwork bool `json:"createSubnetwork,omitempty"` + // DefaultPodIpv4RangeUtilization: Output only. [Output only] The + // utilization of the cluster default IPv4 range for pod. The ratio is + // Usage/[Total number of IPs in the secondary range], + // Usage=numNodes*numZones*podIPsPerNode. + DefaultPodIpv4RangeUtilization float64 `json:"defaultPodIpv4RangeUtilization,omitempty"` + // Ipv6AccessType: The ipv6 access type (internal or external) when // create_subnetwork is true // @@ -3316,6 +3371,20 @@ func (s *IPAllocationPolicy) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +func (s *IPAllocationPolicy) UnmarshalJSON(data []byte) error { + type NoMethod IPAllocationPolicy + var s1 struct { + DefaultPodIpv4RangeUtilization gensupport.JSONFloat64 `json:"defaultPodIpv4RangeUtilization"` + *NoMethod + } + s1.NoMethod = (*NoMethod)(s) + if err := json.Unmarshal(data, &s1); err != nil { + return err + } + s.DefaultPodIpv4RangeUtilization = float64(s1.DefaultPodIpv4RangeUtilization) + return nil +} + // IdentityServiceConfig: IdentityServiceConfig is configuration for // Identity Service which allows customers to use external identity // providers with the K8S API @@ -4493,6 +4562,9 @@ type NetworkConfig struct { // projects/my-project/global/networks/my-network Network string `json:"network,omitempty"` + // NetworkPerformanceConfig: Network bandwidth tier configuration. + NetworkPerformanceConfig *ClusterNetworkPerformanceConfig `json:"networkPerformanceConfig,omitempty"` + // PrivateIpv6GoogleAccess: The desired state of IPv6 connectivity to // Google Services. By default, no private IPv6 access to or from Google // Services (all access will be via IPv4) @@ -4866,7 +4938,7 @@ type NodeConfig struct { // Preemptible: Whether the nodes are created as preemptible VM // instances. See: // https://cloud.google.com/compute/docs/instances/preemptible for more - // inforamtion about preemptible VM instances. + // information about preemptible VM instances. Preemptible bool `json:"preemptible,omitempty"` // ReservationAffinity: The optional reservation affinity. Setting this @@ -5002,6 +5074,10 @@ type NodeKubeletConfig struct { // unspecified. CpuManagerPolicy string `json:"cpuManagerPolicy,omitempty"` + // InsecureKubeletReadonlyPortEnabled: Enable or disable Kubelet read + // only port. + InsecureKubeletReadonlyPortEnabled bool `json:"insecureKubeletReadonlyPortEnabled,omitempty"` + // PodPidsLimit: Set the Pod PID limits. See // https://kubernetes.io/docs/concepts/policy/pid-limiting/#pod-pid-limits // Controls the maximum number of processes allowed to run in a pod. The @@ -5135,6 +5211,11 @@ type NodeNetworkConfig struct { // field cannot be changed after the node pool has been created. PodIpv4CidrBlock string `json:"podIpv4CidrBlock,omitempty"` + // PodIpv4RangeUtilization: Output only. [Output only] The utilization + // of the IPv4 range for pod. The ratio is Usage/[Total number of IPs in + // the secondary range], Usage=numNodes*numZones*podIPsPerNode. + PodIpv4RangeUtilization float64 `json:"podIpv4RangeUtilization,omitempty"` + // PodRange: The ID of the secondary range for pod IPs. If // `create_pod_range` is true, this ID is used for the new range. If // `create_pod_range` is false, uses an existing secondary range with @@ -5167,6 +5248,20 @@ func (s *NodeNetworkConfig) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +func (s *NodeNetworkConfig) UnmarshalJSON(data []byte) error { + type NoMethod NodeNetworkConfig + var s1 struct { + PodIpv4RangeUtilization gensupport.JSONFloat64 `json:"podIpv4RangeUtilization"` + *NoMethod + } + s1.NoMethod = (*NoMethod)(s) + if err := json.Unmarshal(data, &s1); err != nil { + return err + } + s.PodIpv4RangeUtilization = float64(s1.PodIpv4RangeUtilization) + return nil +} + // NodePool: NodePool contains the name and configuration for a // cluster's node pool. Node pools are a set of nodes (i.e. VM's), with // a common configuration and specification, under the control of the @@ -5823,6 +5918,10 @@ func (s *OperationProgress) MarshalJSON() ([]byte, error) { // PlacementPolicy: PlacementPolicy defines the placement policy used by // the node pool. type PlacementPolicy struct { + // TpuTopology: TPU placement topology for pod slice node pool. + // https://cloud.google.com/tpu/docs/types-topologies#tpu_topologies + TpuTopology string `json:"tpuTopology,omitempty"` + // Type: The type of placement. // // Possible values: @@ -5832,7 +5931,7 @@ type PlacementPolicy struct { // availability domain to ensure low communication latency. Type string `json:"type,omitempty"` - // ForceSendFields is a list of field names (e.g. "Type") to + // ForceSendFields is a list of field names (e.g. "TpuTopology") 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 @@ -5840,10 +5939,10 @@ type PlacementPolicy struct { // This may be used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "Type") to include in API - // requests with the JSON null value. By default, fields with empty - // values are omitted from API requests. However, any field with an - // empty value appearing in NullFields will be sent to the server as + // NullFields is a list of field names (e.g. "TpuTopology") 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:"-"` @@ -6087,6 +6186,52 @@ func (s *PubSub) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// RangeInfo: RangeInfo contains the range name and the range +// utilization by this cluster. +type RangeInfo struct { + // RangeName: Output only. [Output only] Name of a range. + RangeName string `json:"rangeName,omitempty"` + + // Utilization: Output only. [Output only] The utilization of the range. + Utilization float64 `json:"utilization,omitempty"` + + // ForceSendFields is a list of field names (e.g. "RangeName") 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. "RangeName") 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 *RangeInfo) MarshalJSON() ([]byte, error) { + type NoMethod RangeInfo + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +func (s *RangeInfo) UnmarshalJSON(data []byte) error { + type NoMethod RangeInfo + var s1 struct { + Utilization gensupport.JSONFloat64 `json:"utilization"` + *NoMethod + } + s1.NoMethod = (*NoMethod)(s) + if err := json.Unmarshal(data, &s1); err != nil { + return err + } + s.Utilization = float64(s1.Utilization) + return nil +} + // RecurringTimeWindow: Represents an arbitrary window of time that // recurs. type RecurringTimeWindow struct { diff --git a/content/v2.1/content-api.json b/content/v2.1/content-api.json index 9cc952d6bc6..b7e0a692320 100644 --- a/content/v2.1/content-api.json +++ b/content/v2.1/content-api.json @@ -6271,7 +6271,7 @@ } } }, - "revision": "20230613", + "revision": "20230627", "rootUrl": "https://shoppingcontent.googleapis.com/", "schemas": { "Account": { @@ -13396,6 +13396,13 @@ "description": "URL for the canonical version of your item's landing page.", "type": "string" }, + "certifications": { + "description": "Product [certification](https://support.google.com/merchants/answer/13528839), introduced for EU energy efficiency labeling compliance using the [EU EPREL](https://eprel.ec.europa.eu/screen/home) database.", + "items": { + "$ref": "ProductCertification" + }, + "type": "array" + }, "channel": { "description": "Required. The item's channel (online or local). Acceptable values are: - \"`local`\" - \"`online`\" ", "type": "string" @@ -13800,6 +13807,25 @@ }, "type": "object" }, + "ProductCertification": { + "description": "Product [certification](https://support.google.com/merchants/answer/13528839), introduced for EU energy efficiency labeling compliance using the [EU EPREL](https://eprel.ec.europa.eu/screen/home) database.", + "id": "ProductCertification", + "properties": { + "certificationAuthority": { + "description": "The certification authority, for example \"European_Commission\". Maximum length is 2000 characters.", + "type": "string" + }, + "certificationCode": { + "description": "The certification code, for eaxample \"123456\". Maximum length is 2000 characters.", + "type": "string" + }, + "certificationName": { + "description": "The name of the certification, for example \"EPREL\". Maximum length is 2000 characters.", + "type": "string" + } + }, + "type": "object" + }, "ProductCluster": { "description": "Product cluster fields. A product cluster is a grouping for different offers that represent the same product. Values are only set for fields requested explicitly in the request's search query.", "id": "ProductCluster", @@ -16946,6 +16972,10 @@ "$ref": "ServiceStoreConfigCutoffConfigLocalCutoffTime", "description": "Time in hours and minutes in the local timezone when local delivery ends." }, + "noDeliveryPostCutoff": { + "description": "Merchants can opt-out of showing n+1 day local delivery when they have a shipping service configured to n day local delivery. For example, if the shipping service defines same-day delivery, and it's past the cut-off, setting this field to `true` results in the calculated shipping service rate returning `NO_DELIVERY_POST_CUTOFF`. In the same example, setting this field to `false` results in the calculated shipping time being one day. This is only for local delivery.", + "type": "boolean" + }, "storeCloseOffsetHours": { "description": "Represents cutoff time as the number of hours before store closing. Mutually exclusive with other fields (hour and minute).", "format": "int64", diff --git a/content/v2.1/content-gen.go b/content/v2.1/content-gen.go index 706f8145ce7..22ff208a5f7 100644 --- a/content/v2.1/content-gen.go +++ b/content/v2.1/content-gen.go @@ -12928,6 +12928,12 @@ type Product struct { // page. CanonicalLink string `json:"canonicalLink,omitempty"` + // Certifications: Product certification + // (https://support.google.com/merchants/answer/13528839), introduced + // for EU energy efficiency labeling compliance using the EU EPREL + // (https://eprel.ec.europa.eu/screen/home) database. + Certifications []*ProductCertification `json:"certifications,omitempty"` + // Channel: Required. The item's channel (online or local). Acceptable // values are: - "local" - "online" Channel string `json:"channel,omitempty"` @@ -13346,6 +13352,48 @@ func (s *ProductAmount) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// ProductCertification: Product certification +// (https://support.google.com/merchants/answer/13528839), introduced +// for EU energy efficiency labeling compliance using the EU EPREL +// (https://eprel.ec.europa.eu/screen/home) database. +type ProductCertification struct { + // CertificationAuthority: The certification authority, for example + // "European_Commission". Maximum length is 2000 characters. + CertificationAuthority string `json:"certificationAuthority,omitempty"` + + // CertificationCode: The certification code, for eaxample "123456". + // Maximum length is 2000 characters. + CertificationCode string `json:"certificationCode,omitempty"` + + // CertificationName: The name of the certification, for example + // "EPREL". Maximum length is 2000 characters. + CertificationName string `json:"certificationName,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "CertificationAuthority") 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. "CertificationAuthority") + // 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 *ProductCertification) MarshalJSON() ([]byte, error) { + type NoMethod ProductCertification + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // ProductCluster: Product cluster fields. A product cluster is a // grouping for different offers that represent the same product. Values // are only set for fields requested explicitly in the request's search @@ -18276,6 +18324,16 @@ type ServiceStoreConfigCutoffConfig struct { // local delivery ends. LocalCutoffTime *ServiceStoreConfigCutoffConfigLocalCutoffTime `json:"localCutoffTime,omitempty"` + // NoDeliveryPostCutoff: Merchants can opt-out of showing n+1 day local + // delivery when they have a shipping service configured to n day local + // delivery. For example, if the shipping service defines same-day + // delivery, and it's past the cut-off, setting this field to `true` + // results in the calculated shipping service rate returning + // `NO_DELIVERY_POST_CUTOFF`. In the same example, setting this field to + // `false` results in the calculated shipping time being one day. This + // is only for local delivery. + NoDeliveryPostCutoff bool `json:"noDeliveryPostCutoff,omitempty"` + // StoreCloseOffsetHours: Represents cutoff time as the number of hours // before store closing. Mutually exclusive with other fields (hour and // minute). diff --git a/contentwarehouse/v1/contentwarehouse-api.json b/contentwarehouse/v1/contentwarehouse-api.json index c4bbff9e74c..168da27f592 100644 --- a/contentwarehouse/v1/contentwarehouse-api.json +++ b/contentwarehouse/v1/contentwarehouse-api.json @@ -1128,7 +1128,7 @@ } } }, - "revision": "20230620", + "revision": "20230627", "rootUrl": "https://contentwarehouse.googleapis.com/", "schemas": { "AbuseiamAbuseType": { @@ -3656,7 +3656,8 @@ "ACCESSIBILITY_TRACKER_AFFINITY", "PLX_DATASOURCE_AFFINITY", "DUCKIEWEB_AFFINITY", - "MEET_CALLING_AFFINITY" + "MEET_CALLING_AFFINITY", + "MATTERSPACE_AFFINITY" ], "enumDescriptions": [ "", @@ -3912,6 +3913,7 @@ "", "", "", + "", "" ], "type": "string" @@ -4027,6 +4029,18 @@ "description": "Store the app unique id endpoint. This will be passed over to app to fulfill the action. For example, app_unique_id for Whatsapp will be \"11234567890@s.whatsapp.net\"", "type": "string" }, + "contactInfoSource": { + "description": "Where this contact info was retrieved from. Note: only added for Assistant usage, and will not be populated by PAPI. This is due to the coupling between Assistant Proto, and PAPI proto. (//depot/google3/quality/qrewrite/servlets/proto/focus_name.proto)", + "enum": [ + "SOURCE_UNKNOWN", + "APP_SEARCH" + ], + "enumDescriptions": [ + "", + "The contact info came from AppSearch." + ], + "type": "string" + }, "displayAppUniqueId": { "description": "Store third party endpoint that is displayed to users. For example, display_app_unique_id for Whatsapp will be \"Message +11234567890\".", "type": "string" @@ -4393,10 +4407,6 @@ "description": "Contact-level people-prompts settings and contact-level connection reminders. Part of go/people-prompts.", "id": "AppsPeopleOzExternalMergedpeopleapiConnectionReminder", "properties": { - "contactPromptSettings": { - "$ref": "SocialGraphApiProtoContactPromptSettings", - "description": "Contains the Contact level settings that will affect all reminders." - }, "metadata": { "$ref": "AppsPeopleOzExternalMergedpeopleapiPersonFieldMetadata" }, @@ -11380,13 +11390,139 @@ "type": "object" }, "AssistantApiCoreTypesGovernedSurfaceIdentity": { - "description": "The set of information that helps the server identify the surface. This replaces the User-Agent string within the Assistant Server. Note: The SurfaceIdentity proto should only be used to derive the capabilities of a surface. It should not be accessed outside of the CapabilityBuilder or CapabilityChecker. NEXT ID: 5 LINT.IfChange", + "description": "The set of information that helps the server identify the surface. This replaces the User-Agent string within the Assistant Server. Note: The SurfaceIdentity proto should only be used to derive the capabilities of a surface. It should not be accessed outside of the CapabilityBuilder or CapabilityChecker. NEXT ID: 6 LINT.IfChange", "id": "AssistantApiCoreTypesGovernedSurfaceIdentity", "properties": { "deviceId": { "$ref": "AssistantApiCoreTypesDeviceId", "description": "The identifier of the device." }, + "legacySurfaceType": { + "description": "DEPRECATED: The legacy device's surface type enum. NOTE: Prefer using the ontological `surface_type` field above. If you need to access the legacy surface type, please file a bug and add it in your code to migrate to ontological surface type.", + "enum": [ + "UNKNOWN", + "ANDROID_ALLO", + "ANDROID_AUTO", + "ANDROID_THINGS_CUBE", + "ANDROID_THINGS_JASPER", + "ANDROID_TV", + "ANDROID_TV_KIDS", + "ANDROID_WEAR", + "AR_GLASSES", + "ASSISTANT_SDK", + "AUDIOWEAR", + "BUBBLE_CHARACTERS_IOS", + "CAPABILITY_BASED_SURFACE", + "CHROMECAST_ASSISTANT", + "CHROMECAST_MANHATTAN", + "CHROMECAST_SEARCH", + "CLOUD_DEVICE", + "COMPANION_SCREEN", + "DYNAMITE_WEB", + "ENSEMBLE", + "EYESFREE_AGSA", + "EYESFREE_GMM", + "GBOARD", + "GLASS", + "GOOGLE_HOME", + "HANGOUTS_CHATBOT", + "IOS_ALLO", + "IOS_GSA", + "IOS_WEAR", + "LIBASSISTANT", + "LINE_CHATBOT", + "MULTIMODAL_AGSA", + "NON_ASSISTANT_SURFACE", + "OPA_AGSA", + "OPA_AGSA_CHROME_OS", + "OPA_ANDROID_AUTO", + "OPA_ANDROID_LITE", + "OPA_ANDROID_SCREENLESS", + "OPA_ANDROID_SMART_DISPLAY", + "OPA_ANDROID_TABLET", + "OPA_CROS", + "OPA_GACS", + "OPA_IOS", + "OPA_IOS_SCREENLESS", + "OPA_KAIOS", + "OPA_MOBILE_WEB", + "RTOS_PHONE", + "SMS_CHATBOT", + "TELEGRAM_CHATBOT", + "TELEPHONE_ASSISTANT", + "VERILY_ONDUO", + "YOUTUBE_APP", + "AGSA_BISTO_FOR_EVAL", + "COGSWORTH_FOR_EVAL", + "LOCKHART_MIC_FOR_EVAL", + "OPA_ANDROID_AUTO_EMBEDDED_FAKE", + "SPARK", + "WALLE", + "UNIT_TESTING" + ], + "enumDescriptions": [ + "", + "", + "Deprecated (never used). Use OPA_ANDROID_AUTO instead.", + "Assistant on small screen stationary device.", + "", + "", + "", + "", + "Assistant on AR Glasses with both visual and audio experiences. Ask ar-assistant@ for details.", + "For Assistant SDK gRPC client.", + "", + "go/assistant-lamda-overview-characters", + "Surface for capability based testing.", + "For chrome cast assistant web app.", + "For chrome cast with assistant + screen (e.g., Google Nest Hub).", + "", + "Virtual device for event-based triggering, e.g. executing time", + "scheduled routines: go/routine-cloud-ex For Quartz.", + "", + "", + "Deprecated. Please use OPA_ANDROID_SCREENLESS.", + "", + "For Gboard app", + "", + "", + "", + "", + "", + "", + "For standalone libassistant devices.", + "LINE 3P messaging app", + "Deprecated.", + "Surfaces that do not speak to the Assistant, i.e. web HQ", + "Assistant on Android phones accessed through the Google App (velvet). This represents neither all of the assistant on android phones (ANDROID_ALLO, VERILY_ONDUO, etc.) nor all of the assistant built on top of AGSA (ANDROID_WEAR, OPA_ANDROID_SCREENLESS, OPA_AGSA_CHROME_OS, etc.).", + "Deprecated. Please use OPA_CROS.", + "", + "This is OPA on Android Go (not part of AGSA)", + "Assistant on Nexus with screen off/locked. Use go/bisto device to trigger.", + "Assistant on Titan hub mode (go/titan-hubmode-surface). This is OPA Android first party Smart Display devices. The UI experience is built on Opal (Gallium and Flutter) and native Android.", + "Assistant on Android tablet", + "Assistant on native Chrome OS (go/croissant).", + "For assistant on GACS devices (go/gacs-dd). Google Assistant Conversation Service (GACS) defines intents the device accepts. This surface serves the intents in the assistant response.", + "", + "Assistant on iOS with screen off/locked. Use go/bisto device to trigger.", + "Assistant on KaiOS. go/kaiosama", + "Assistant on Mobile Web. go/opa-spidey", + "Assistant on low-cost RTOS phones (go/conceRTOS).", + "", + "Telegram 3P messaging app", + "Assistant on a phone call (go/telephone).", + "", + "A Youtube app.", + "Eval-only surfaces. These surfaces are not real surfaces. They are only used in intermediate steps of eval query and request generation: 1. Eval samplers (OPA query sampler and Cannery sampler) checks logs and temporarily assigns these surface types to the logs, to put Bisto, Lockhart Mic, ... queries in the correct query pools. 2. Request builders uses these surface types to determine how TaskRequest for Bisto, Lockhart Mic, ... should be built, like whether some user user agent should be used, whether some entry source should be set. The surface types in the generated TaskRequest is still the production surface types, like OPA_ANDROID_SCREENLESS or OPA_AGSA. Temp surface for Bisto Android eval. Will be merged with OPA_ANDROID_SCREENLESS in the future.", + "", + "", + "OPA_ANDROID_AUTO has another sub-surface (embedded) that differs in the reported capabilities, client-ops, flags but uses the same surface_type string of OPA_ANDROID_AUTO. This fake surface would allow running turing2 tests and evals for this embedded surface. Deprecated as of Feb 2019. Please use \"OPA_ANDROID_AUTO_EMBEDDED\" client type for tests and eval. See go/client-onboarding for more details. https://cs.corp.google.com/piper///depot/google3/assistant/assistant_server/tools/util/consts.h?l=32\u0026rcl=247481455", + "Unlaunched new surface prototype, ask spark-eng@.", + "Wall-E is an Area120 Project building assistant powered robots. The surface is an extended joplin which have same capabilities as a google home adding custom robot features. Currently in active development. Please reach out walle-software@ or bingxin@ for questions. For details see go/walle-as-pipeline-1-pager.", + "Surface used for unit-testing purposes. Unit-tests might still require the existence of a \"valid\" SurfaceType to succeed (eg. initialization of the CapabilityBuilder, proto matching, etc.). With the move away from SurfaceType checks, a generic \"TESTING\" SurfaceType can be used for such tests without affecting the test behavior. Unlike the CAPABILITY_BASED_SURFACE, this proto does not have any capabilities or ResponseType tied to it. It should only be used for unit-tests and should not be exposed in the ASDebugger." + ], + "type": "string" + }, "surfaceType": { "description": "The device's surface type. The types are defined at google3/assistant/api/core_types/surfaces.gcl.", "enum": [ @@ -20257,8 +20393,63 @@ }, "type": "object" }, + "AssistantPfrDeviceRdMetadata": { + "id": "AssistantPfrDeviceRdMetadata", + "properties": { + "deviceName": { + "type": "string" + }, + "deviceTypes": { + "items": { + "type": "string" + }, + "type": "array" + }, + "effectiveArgSpanLength": { + "format": "float", + "type": "number" + }, + "hasAmbiguousResolutions": { + "description": "True if there are more than one possible resolutions to the RD.", + "type": "boolean" + }, + "hasResolvedDeviceId": { + "description": "True if there's at least one device id that gets resolved. Note this is different from is_grounded = true: it is possible that is_grounded = false (num_grounded_args =0) but there is resolved device ids. E.g.: \"turn on the blue light\" Power_on(device_object = [d1, d2]:RD(category=DeviceObject(name='blue light')) where there are \"blue light 1\" and \"blue light 2\" hence two resolved device ids. But since the quantifier is single, GB can't resolve the ambiguity and would set num_grounded_args = 0 to indicate such unresolved ambiguity.", + "type": "boolean" + }, + "roomName": { + "type": "string" + } + }, + "type": "object" + }, + "AssistantPfrSmartHomeIntentMetadata": { + "description": "Used by the Smarthome Business Rules twiddler to determine whether to replace the top-scoring Smarthome intent with another.", + "id": "AssistantPfrSmartHomeIntentMetadata", + "properties": { + "deviceRdMetadata": { + "description": "Each DeviceRdMetadata represents one device RD (device slot) in the intent. Note that each device RD could have multiple device groundings inside of it.", + "items": { + "$ref": "AssistantPfrDeviceRdMetadata" + }, + "type": "array" + }, + "intentName": { + "type": "string" + }, + "isExactMatch": { + "description": "When num_constraints == num_constraints_satisfied, indicating all slot matchings are exact match.", + "type": "boolean" + }, + "isGrounded": { + "description": "When num_grounded_args \u003e 0, indicating there is at least one top-level argument is grounded.", + "type": "boolean" + } + }, + "type": "object" + }, "AssistantPrefulfillmentRankerPrefulfillmentSignals": { - "description": "Signals to be used by the Prefulfillment Ranker. Derived from the ParsingSignals and GroundingSignals carried by the FunctionCall. LINT.IfChange Next ID: 57", + "description": "Signals to be used by the Prefulfillment Ranker. Derived from the ParsingSignals and GroundingSignals carried by the FunctionCall. LINT.IfChange Next ID: 60", "id": "AssistantPrefulfillmentRankerPrefulfillmentSignals", "properties": { "bindingSetAuis": { @@ -20370,6 +20561,10 @@ "description": "Whether the intent is fully grounded.", "type": "boolean" }, + "isHighConfidencePodcastIntent": { + "description": "Used for PFR manual rule to prefer high confidence podcast intent (e.g. topical, genre) over generic podcast intents.", + "type": "boolean" + }, "isMediaControlIntent": { "description": "Whether the intent is a media control intent.", "type": "boolean" @@ -20378,6 +20573,10 @@ "description": "Whether the intent is a PlayGenericMusic-type intent.", "type": "boolean" }, + "isPodcastGenericIntent": { + "description": "Used for PFR manual rule to prefer high confidence podcast intent (e.g. topical, genre) over generic podcast intents.", + "type": "boolean" + }, "isPodcastIntent": { "description": "Whether the intent is a podcast intent.", "type": "boolean" @@ -20572,6 +20771,10 @@ ], "type": "string" }, + "smarthomeIntentMetadata": { + "$ref": "AssistantPfrSmartHomeIntentMetadata", + "description": "SmartHome intent metadata used for the SmartHome business-rules twiddler." + }, "subIntentType": { "description": "sub_intent_type differentiates between intents that share the top level intent name. For eg: for TV_FALLBACK_SEARCH_INTENT, the top level intent name must be \"Find_media\" and the media_object argument within it must be of type \"Media_unspecified\".", "enum": [ @@ -26243,7 +26446,7 @@ "type": "object" }, "DrishtiVesperEncodedThumbnail": { - "description": "The attributes of encoded thumbnail images. Next id: 7.", + "description": "The attributes of encoded thumbnail images. Next id: 8.", "id": "DrishtiVesperEncodedThumbnail", "properties": { "encodingQuality": { @@ -26271,6 +26474,10 @@ "format": "int32", "type": "integer" }, + "imageBlobId": { + "description": "The Blob ID of the thumbnail image in the Blobstore. We recommend absolute IDs with universe prefix if this field is passed across systems. The owner of this blob is also responsible for data Wipeout compliance.", + "type": "string" + }, "imageBytes": { "description": "Encoded thumbnail bytes. Prefer this over `image_string` as we are not supposed to store image bytes in a proto string field.", "format": "byte", @@ -46795,6 +47002,14 @@ "description": "The document type of the document being referenced.", "type": "boolean" }, + "documentIsLegalHoldFolder": { + "description": "Document is a folder with legal hold.", + "type": "boolean" + }, + "documentIsRetentionFolder": { + "description": "Document is a folder with retention policy.", + "type": "boolean" + }, "documentName": { "description": "Required. Name of the referenced document.", "type": "string" @@ -48188,12 +48403,14 @@ "enum": [ "TIME_FIELD_UNSPECIFIED", "CREATE_TIME", - "UPDATE_TIME" + "UPDATE_TIME", + "DISPOSITION_TIME" ], "enumDescriptions": [ "Default value.", "Earliest document create time.", - "Latest document update time." + "Latest document update time.", + "Time when document becomes mutable again." ], "type": "string" }, @@ -81192,6 +81409,7 @@ "PMW_TI", "ACCESSIBILITY_TRACKER", "DUCKIEWEB", + "MATTERSPACE", "DEPRECATED_QUICKSTART_FLUME", "DUO_CLIENT", "ALBERT", @@ -81591,7 +81809,7 @@ "Memegen! https://memegen.googleplex.com Team contact: memgegen-team@google.com", "Society App http://go/society Team contact: society-team@google.com", "Society chat application. http://go/society Team contact: society-team@google.com", - "Search Highlight http://go/seng-highlight Team contact: search-engagement-team@google.com", + "Search One Presence (Formerly Search Engagement Highlight) http://go/dumpling Team contact: team-dumpling@google.com", "YouTube Live Chat. http://go/livechat-redesign Team contact: yt-live-chat@google.com", "YouTube Live Activity log. http://go/live-chat-history-design Team contact: yt-live-chat@google.com", "YouTube Live Takeout. http://go/livechat-takeout Team contact: yt-live-chat@google.com", @@ -81836,6 +82054,7 @@ "Pmw Ti Team contact: pmw-ti", "Accessibility Tracker Team contact: a11y-tracker-eng@google.com", "Duckieweb Team contact: workflow-horizontals-core@google.com", + "Matterspace Team contact: legalworks-elm-eng@google.com, rajapate@google.com", "", "Duo Client Team contact: duo-eng@google.com", "Project albert (go/albert-frontend) Team contact: albert-eng@google.com", @@ -93663,6 +93882,12 @@ "format": "uint64", "type": "string" }, + "images": { + "items": { + "$ref": "ShoppingWebentityShoppingAnnotationProductImage" + }, + "type": "array" + }, "locale": { "$ref": "QualityShoppingShoppingAttachmentLocale" }, @@ -103286,7 +103511,7 @@ "type": "object" }, "ResearchScienceSearchReconciledMetadata": { - "description": "A proto for storing inferred and reconciled metadata for Science Search. Next available tag: 71", + "description": "A proto for storing inferred and reconciled metadata for Science Search. Next available tag: 72", "id": "ResearchScienceSearchReconciledMetadata", "properties": { "alternateName": { @@ -103649,6 +103874,11 @@ "type": "number" }, "type": "array" + }, + "versionsSimhash": { + "description": "A simhash value of the fields used for identifying versions of a dataset. This will be used by the VersionClusterInfoWriter.", + "format": "uint64", + "type": "string" } }, "type": "object" @@ -106975,6 +107205,30 @@ }, "type": "object" }, + "ShoppingWebentityShoppingAnnotationProductImage": { + "description": "Images from the product-level representation (i.e. GPC). These images are currently only annotated 1) when no offers are available 2) on the product level", + "id": "ShoppingWebentityShoppingAnnotationProductImage", + "properties": { + "imageDocid": { + "format": "uint64", + "type": "string" + }, + "productImageType": { + "enum": [ + "PRODUCT_IMAGE_TYPE_UNKNOWN", + "PRODUCT_IMAGE_GPC", + "PRODUCT_IMAGE_TYPE_MULTIBANG_ENTITY_INFERRED" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, "ShoppingWebentityShoppingAnnotationProductRating": { "description": "Information about a rating provided for a product. This can represent an aggregated rating if count is set. Next Id: 7", "id": "ShoppingWebentityShoppingAnnotationProductRating", @@ -110290,6 +110544,7 @@ "ISOLATION_S12Y_RECIPE_INGREDIENT_INSIGHTS", "ISOLATION_SCOUTS_SOCIETAL_CONTEXT_ENTITIES", "ISOLATION_ASTROLOGY_HOROSCOPE", + "ISOLATION_LLM_GENERATED_TVM_SYNOPSIS", "UMP_TESTING_ONLY", "INTENTJOINS_NB_SIGNALS", "ADS_INTEGRITY_ANNOTATION", @@ -110475,6 +110730,7 @@ "For Search sustainability's food choice feature, Recipe Ingredient Insights. Assign existing KG entities feature types to classify triggering behavior and insights. Owned by salehh@ and s12y-eng@ See go/rii-kg-triggering-migration for more information.", "Access controls for SCOUTS Societal Context Repository entities. Please contact johnhenry-eng@ before reading or writing this data. DD: go/scouts-kg-integration-dd", "Access controls for Astrology Horoscope features. Please contact search-india-verticals@ before reading or writing this data. DD: go/daily-horoscope-dd", + "Access controls for LLM generated tvm synopsis. DD: go/i18n-tvm-descriptions Please contact dkrish-team@ before reading or writing this data.", "This access control is used to guard data used by the Unified Media Platform team (ke-media-actions-serving@) for testing new features. It should never be used for purposes other than testing. More context at go/fake-media-provider.", "Access controls for the IntentJoins Navboost data. YOU MUST CONTACT intentjoins-eng@ before reading or writing this data.", "Access controls for Ads Integrity annotation data. Ads Integrity annotations are only available for Ads Integrity policy enforcement. See go/ai-political-km for more details. YOU MUST CONTACT ai-pacg@ before reading or writing this data.", @@ -113881,6 +114137,7 @@ "MDP_WITH_LIVE_OPS_EVER_INSTALLED_USERS_EVENT_LEVEL", "MDP_WITH_LIVE_OPS_NEVER_INSTALLED_USERS_EVENT_LEVEL", "BROAD_RELATED_QUERIES_CLUSTER_EVENT", + "SUPPLEMENTAL_TG_RETRIEVAL_EVENT_LEVEL", "EVENT_LEVEL_TEST_CODE_LIMIT", "ENTERTAINMENT_CLUSTER_TRIGGERING_AT_SESSION_LEVEL", "BEST_SELLER_CART_TAG_AT_SESSION_LEVEL", @@ -114389,6 +114646,8 @@ "SHOULD_SEE_NOW_CLUSTER_CONTENT_PRE_REGISTRATION_NH_K2", "SHOULD_SEE_NOW_CLUSTER_CONTENT_PRE_REGISTRATION_NH_K3_4", "SHOULD_SEE_NOW_CLUSTER_CONTENT_PRE_REGISTRATION_NH_GTE_K5", + "FEATURED_PRODUCTS_LIVE_OPS_AT_SESSION_LEVEL", + "SUPPLEMENTAL_TG_RETRIEVAL_SESSION_LEVEL", "WALLET_WELLBEING_ALERT_SESSION_LEVEL", "BROAD_INTENT_REWEIGHTING_SESSION_LEVEL", "DYNASTY_DEVICE_HANDOFF_SESSION_LEVEL", @@ -114695,6 +114954,7 @@ "LOYALTY_CORPUS_WIDE_STAMP_CARD_GAMES_HOME_CLIENT_USER_LEVEL", "GROWTH_CORPUS_WIDE_STAMP_CARD_GAMES_HOME_SERVER_USER_LEVEL", "LOYALTY_PURCHASE_QUEST_GAMES_HOME_SERVER_USER_LEVEL", + "LOYALTY_PURCHASE_QUEST_SERP_SERVER_USER_LEVEL", "LOYALTY_CORPUS_WIDE_STAMP_CARD_GAMES_HOME_SERVER_USER_LEVEL", "LOYALTY_CORPUS_WIDE_STAMP_CARD_DETAILS_PAGE_SERVER_USER_LEVEL", "SUBS_HIGH_CHURN_FOP_OPTIONS_AVAILABLE_USER_LEVEL", @@ -114818,6 +115078,7 @@ "IS_ELIGIBLE_FOR_DYNAMIC_AUTH_USER_LEVEL", "GE_LIVEOPS_PSPEND_USER_LEVEL", "IS_ELIGIBLE_FOR_RENEWAL_REMINDER_USER_LEVEL", + "FEATURED_PRODUCTS_LIVE_OPS_AT_USER_LEVEL", "USER_LEVEL_TEST_CODE_LIMIT" ], "enumDescriptions": [ @@ -115082,6 +115343,7 @@ "Event-level test code for logging MDP LiveOps shown to ever-installed users on SERP", "Event-level test code for logging MDP LiveOps shown to never-installed users on SERP", "Broad Related Queries TestCode", + "Event-level test code for Supplemental TG Retrieval.", "", "", "", @@ -115590,6 +115852,8 @@ "", "", "", + "Session level test code for Featured Products LiveOps.", + "Session-level test code for Supplemental TG Retrieval.", "TestCode for slicing the users cohorts that should have received a budget Warning alert", "TestCode for Broad Intent Reweighting Session Level.", "TestCode for Dynasty Device Handoff Session Level.", @@ -115896,6 +116160,7 @@ "User level test code for Corpus Wide Loyalty Stamp Card, for tracking users who are eligible for the LSC in Games Home. This test code is logged on client side.", "User level test code for Corpus Wide Growth Stamp Card, for tracking users who are eligible for the GSC in Games Home. This test code is logged on server side.", "User level test code for Loyalty Purchase Quest, for tracking users who are eligible for the LPQ in Games Home. This test code is logged on server side.", + "User level test code for Loyalty Purchase Quest, for tracking users who are eligible for the LPQ in SERP. This test code is logged on server side.", "User level test code for Corpus Wide Loyalty Stamp Card, for tracking users who are eligible for the LSC in Games Home. This test code is logged on server side.", "User level test code for Corpus Wide Loyalty Stamp Card, for tracking users who are eligible for the LSC in Apps Details Page. This test code is logged on server side.", "User level test code that indicates that at least one high churn fop options is available for user when visiting add fop page for subscription purchase. Deprecated, use 20361 instead.", @@ -116019,6 +116284,7 @@ "User level test code for users who are eligible for dynamic auth.", "User level test code for LiveOps pSpend uplift experiment. If GE campaign decision changed after enabling pSpend model, log test code.", "User level test code for users who are eligible to see the renewal reminder button.", + "User level test code for Featured Products LiveOps.", "" ], "type": "string" @@ -132030,28 +132296,32 @@ "type": "object" }, "YoutubeBackstageSuperVodCommentInfo": { - "description": "Contains information about comment that is posted through a Super VOD purchase. Next ID: 6", + "description": "Contains information about comment that is posted through a Super Thanks purchase. Next ID: 7", "id": "YoutubeBackstageSuperVodCommentInfo", "properties": { "currencyCode": { - "description": "Currency code the user uses to purchase this Super VOD item.", + "description": "Currency code the user uses to purchase this Super Thanks item.", "type": "string" }, "entitlementId": { - "description": "The ID of the Super VOD entitlement. It uniquely identifies a Super VOD purchase.", + "description": "The ID of the Super Thanks entitlement. It uniquely identifies a Super Thanks purchase. This field is deprecated in favor of transaction_id, see go/st-deprecate-ent-id.", "type": "string" }, "priceInMicros": { - "description": "Price of Super VOD item the user purchases in micros.", + "description": "Price of Super Thanks item the user purchases in micros.", "format": "uint64", "type": "string" }, "superVodItemId": { - "description": "The Super VOD item the user purchases, it represents price tier.", + "description": "The Super Thanks item the user purchases, it represents price tier.", + "type": "string" + }, + "transactionId": { + "description": "The ID of the Super Thanks transaction. It uniquely identifies a Super Thanks purchase.", "type": "string" }, "version": { - "description": "Which version of experiment this Super VOD comment is posted in.", + "description": "Which version of experiment this Super Thanks comment is posted in.", "enum": [ "UNSPECIFIED_VERSION", "V1_DEFAULT_MESSAGE", @@ -132060,9 +132330,9 @@ ], "enumDescriptions": [ "", - "DEPRECATED since decorated comments are fully launched. Comments previously posted with this enum value will continue to exist. Undecorated Comment. When user buys a Super VOD, a comment with default message will be automatically posted on behalf of the user.", - "Decorated Comment. When user buys a Super VOD, a comment with default message and a special decoration will be automatically posted on behalf of the user. https://screenshot.googleplex.com/6aYvGnX5Bp9bT9Q", - "UGC. When user buys a Super VOD, they can write their own UGC comment which will be decorated and automatically posted on behalf of the user." + "DEPRECATED since decorated comments are fully launched. Comments previously posted with this enum value will continue to exist. Undecorated Comment. When user buys a Super Thanks, a comment with default message will be automatically posted on behalf of the user.", + "Decorated Comment. When user buys a Super Thanks, a comment with default message and a special decoration will be automatically posted on behalf of the user. https://screenshot.googleplex.com/6aYvGnX5Bp9bT9Q", + "UGC. When user buys a Super Thanks, they can write their own UGC comment which will be decorated and automatically posted on behalf of the user." ], "type": "string" } diff --git a/contentwarehouse/v1/contentwarehouse-gen.go b/contentwarehouse/v1/contentwarehouse-gen.go index f4a93cc1df4..f160c447367 100644 --- a/contentwarehouse/v1/contentwarehouse-gen.go +++ b/contentwarehouse/v1/contentwarehouse-gen.go @@ -3220,6 +3220,7 @@ type AppsPeopleOzExternalMergedpeopleapiAffinity struct { // "PLX_DATASOURCE_AFFINITY" // "DUCKIEWEB_AFFINITY" // "MEET_CALLING_AFFINITY" + // "MATTERSPACE_AFFINITY" AffinityType string `json:"affinityType,omitempty"` // ContainerId: The ID of the container @@ -3392,6 +3393,16 @@ type AppsPeopleOzExternalMergedpeopleapiAppUniqueInfo struct { // Whatsapp will be "11234567890@s.whatsapp.net" AppUniqueId string `json:"appUniqueId,omitempty"` + // ContactInfoSource: Where this contact info was retrieved from. Note: + // only added for Assistant usage, and will not be populated by PAPI. + // This is due to the coupling between Assistant Proto, and PAPI proto. + // (//depot/google3/quality/qrewrite/servlets/proto/focus_name.proto) + // + // Possible values: + // "SOURCE_UNKNOWN" + // "APP_SEARCH" - The contact info came from AppSearch. + ContactInfoSource string `json:"contactInfoSource,omitempty"` + // DisplayAppUniqueId: Store third party endpoint that is displayed to // users. For example, display_app_unique_id for Whatsapp will be // "Message +11234567890". @@ -4083,31 +4094,25 @@ func (s *AppsPeopleOzExternalMergedpeopleapiCommunicationEmail) MarshalJSON() ([ // people-prompts settings and contact-level connection reminders. Part // of go/people-prompts. type AppsPeopleOzExternalMergedpeopleapiConnectionReminder struct { - // ContactPromptSettings: Contains the Contact level settings that will - // affect all reminders. - ContactPromptSettings *SocialGraphApiProtoContactPromptSettings `json:"contactPromptSettings,omitempty"` - Metadata *AppsPeopleOzExternalMergedpeopleapiPersonFieldMetadata `json:"metadata,omitempty"` // Prompt: Contact-level "reminder to connect" prompts for this contact. Prompt []*SocialGraphApiProtoPrompt `json:"prompt,omitempty"` - // ForceSendFields is a list of field names (e.g. - // "ContactPromptSettings") to unconditionally include in API requests. - // By default, fields with empty or default values are omitted from API - // requests. However, any non-pointer, non-interface field appearing in - // ForceSendFields will be sent to the server regardless of whether the - // field is empty or not. This may be used to include empty fields in - // Patch requests. + // ForceSendFields is a list of field names (e.g. "Metadata") 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. "ContactPromptSettings") 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. "Metadata") 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:"-"` } @@ -13625,11 +13630,125 @@ func (s *AssistantApiCoreTypesGovernedRingtoneTaskMetadataRoutineAlarmMetadata) // User-Agent string within the Assistant Server. Note: The // SurfaceIdentity proto should only be used to derive the capabilities // of a surface. It should not be accessed outside of the -// CapabilityBuilder or CapabilityChecker. NEXT ID: 5 LINT.IfChange +// CapabilityBuilder or CapabilityChecker. NEXT ID: 6 LINT.IfChange type AssistantApiCoreTypesGovernedSurfaceIdentity struct { // DeviceId: The identifier of the device. DeviceId *AssistantApiCoreTypesDeviceId `json:"deviceId,omitempty"` + // LegacySurfaceType: DEPRECATED: The legacy device's surface type enum. + // NOTE: Prefer using the ontological `surface_type` field above. If you + // need to access the legacy surface type, please file a bug and add it + // in your code to migrate to ontological surface type. + // + // Possible values: + // "UNKNOWN" + // "ANDROID_ALLO" + // "ANDROID_AUTO" - Deprecated (never used). Use OPA_ANDROID_AUTO + // instead. + // "ANDROID_THINGS_CUBE" - Assistant on small screen stationary + // device. + // "ANDROID_THINGS_JASPER" + // "ANDROID_TV" + // "ANDROID_TV_KIDS" + // "ANDROID_WEAR" + // "AR_GLASSES" - Assistant on AR Glasses with both visual and audio + // experiences. Ask ar-assistant@ for details. + // "ASSISTANT_SDK" - For Assistant SDK gRPC client. + // "AUDIOWEAR" + // "BUBBLE_CHARACTERS_IOS" - go/assistant-lamda-overview-characters + // "CAPABILITY_BASED_SURFACE" - Surface for capability based testing. + // "CHROMECAST_ASSISTANT" - For chrome cast assistant web app. + // "CHROMECAST_MANHATTAN" - For chrome cast with assistant + screen + // (e.g., Google Nest Hub). + // "CHROMECAST_SEARCH" + // "CLOUD_DEVICE" - Virtual device for event-based triggering, e.g. + // executing time + // "COMPANION_SCREEN" - scheduled routines: go/routine-cloud-ex For + // Quartz. + // "DYNAMITE_WEB" + // "ENSEMBLE" + // "EYESFREE_AGSA" - Deprecated. Please use OPA_ANDROID_SCREENLESS. + // "EYESFREE_GMM" + // "GBOARD" - For Gboard app + // "GLASS" + // "GOOGLE_HOME" + // "HANGOUTS_CHATBOT" + // "IOS_ALLO" + // "IOS_GSA" + // "IOS_WEAR" + // "LIBASSISTANT" - For standalone libassistant devices. + // "LINE_CHATBOT" - LINE 3P messaging app + // "MULTIMODAL_AGSA" - Deprecated. + // "NON_ASSISTANT_SURFACE" - Surfaces that do not speak to the + // Assistant, i.e. web HQ + // "OPA_AGSA" - Assistant on Android phones accessed through the + // Google App (velvet). This represents neither all of the assistant on + // android phones (ANDROID_ALLO, VERILY_ONDUO, etc.) nor all of the + // assistant built on top of AGSA (ANDROID_WEAR, OPA_ANDROID_SCREENLESS, + // OPA_AGSA_CHROME_OS, etc.). + // "OPA_AGSA_CHROME_OS" - Deprecated. Please use OPA_CROS. + // "OPA_ANDROID_AUTO" + // "OPA_ANDROID_LITE" - This is OPA on Android Go (not part of AGSA) + // "OPA_ANDROID_SCREENLESS" - Assistant on Nexus with screen + // off/locked. Use go/bisto device to trigger. + // "OPA_ANDROID_SMART_DISPLAY" - Assistant on Titan hub mode + // (go/titan-hubmode-surface). This is OPA Android first party Smart + // Display devices. The UI experience is built on Opal (Gallium and + // Flutter) and native Android. + // "OPA_ANDROID_TABLET" - Assistant on Android tablet + // "OPA_CROS" - Assistant on native Chrome OS (go/croissant). + // "OPA_GACS" - For assistant on GACS devices (go/gacs-dd). Google + // Assistant Conversation Service (GACS) defines intents the device + // accepts. This surface serves the intents in the assistant response. + // "OPA_IOS" + // "OPA_IOS_SCREENLESS" - Assistant on iOS with screen off/locked. Use + // go/bisto device to trigger. + // "OPA_KAIOS" - Assistant on KaiOS. go/kaiosama + // "OPA_MOBILE_WEB" - Assistant on Mobile Web. go/opa-spidey + // "RTOS_PHONE" - Assistant on low-cost RTOS phones (go/conceRTOS). + // "SMS_CHATBOT" + // "TELEGRAM_CHATBOT" - Telegram 3P messaging app + // "TELEPHONE_ASSISTANT" - Assistant on a phone call (go/telephone). + // "VERILY_ONDUO" + // "YOUTUBE_APP" - A Youtube app. + // "AGSA_BISTO_FOR_EVAL" - Eval-only surfaces. These surfaces are not + // real surfaces. They are only used in intermediate steps of eval query + // and request generation: 1. Eval samplers (OPA query sampler and + // Cannery sampler) checks logs and temporarily assigns these surface + // types to the logs, to put Bisto, Lockhart Mic, ... queries in the + // correct query pools. 2. Request builders uses these surface types to + // determine how TaskRequest for Bisto, Lockhart Mic, ... should be + // built, like whether some user user agent should be used, whether some + // entry source should be set. The surface types in the generated + // TaskRequest is still the production surface types, like + // OPA_ANDROID_SCREENLESS or OPA_AGSA. Temp surface for Bisto Android + // eval. Will be merged with OPA_ANDROID_SCREENLESS in the future. + // "COGSWORTH_FOR_EVAL" + // "LOCKHART_MIC_FOR_EVAL" + // "OPA_ANDROID_AUTO_EMBEDDED_FAKE" - OPA_ANDROID_AUTO has another + // sub-surface (embedded) that differs in the reported capabilities, + // client-ops, flags but uses the same surface_type string of + // OPA_ANDROID_AUTO. This fake surface would allow running turing2 tests + // and evals for this embedded surface. Deprecated as of Feb 2019. + // Please use "OPA_ANDROID_AUTO_EMBEDDED" client type for tests and + // eval. See go/client-onboarding for more details. + // https://cs.corp.google.com/piper///depot/google3/assistant/assistant_server/tools/util/consts.h?l=32&rcl=247481455 + // "SPARK" - Unlaunched new surface prototype, ask spark-eng@. + // "WALLE" - Wall-E is an Area120 Project building assistant powered + // robots. The surface is an extended joplin which have same + // capabilities as a google home adding custom robot features. Currently + // in active development. Please reach out walle-software@ or bingxin@ + // for questions. For details see go/walle-as-pipeline-1-pager. + // "UNIT_TESTING" - Surface used for unit-testing purposes. Unit-tests + // might still require the existence of a "valid" SurfaceType to succeed + // (eg. initialization of the CapabilityBuilder, proto matching, etc.). + // With the move away from SurfaceType checks, a generic "TESTING" + // SurfaceType can be used for such tests without affecting the test + // behavior. Unlike the CAPABILITY_BASED_SURFACE, this proto does not + // have any capabilities or ResponseType tied to it. It should only be + // used for unit-tests and should not be exposed in the ASDebugger. + LegacySurfaceType string `json:"legacySurfaceType,omitempty"` + // SurfaceType: The device's surface type. The types are defined at // google3/assistant/api/core_types/surfaces.gcl. // @@ -26191,10 +26310,114 @@ func (s *AssistantLogsTargetDeviceLog) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +type AssistantPfrDeviceRdMetadata struct { + DeviceName string `json:"deviceName,omitempty"` + + DeviceTypes []string `json:"deviceTypes,omitempty"` + + EffectiveArgSpanLength float64 `json:"effectiveArgSpanLength,omitempty"` + + // HasAmbiguousResolutions: True if there are more than one possible + // resolutions to the RD. + HasAmbiguousResolutions bool `json:"hasAmbiguousResolutions,omitempty"` + + // HasResolvedDeviceId: True if there's at least one device id that gets + // resolved. Note this is different from is_grounded = true: it is + // possible that is_grounded = false (num_grounded_args =0) but there is + // resolved device ids. E.g.: "turn on the blue light" + // Power_on(device_object = [d1, d2]:RD(category=DeviceObject(name='blue + // light')) where there are "blue light 1" and "blue light 2" hence two + // resolved device ids. But since the quantifier is single, GB can't + // resolve the ambiguity and would set num_grounded_args = 0 to indicate + // such unresolved ambiguity. + HasResolvedDeviceId bool `json:"hasResolvedDeviceId,omitempty"` + + RoomName string `json:"roomName,omitempty"` + + // ForceSendFields is a list of field names (e.g. "DeviceName") 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. "DeviceName") 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 *AssistantPfrDeviceRdMetadata) MarshalJSON() ([]byte, error) { + type NoMethod AssistantPfrDeviceRdMetadata + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +func (s *AssistantPfrDeviceRdMetadata) UnmarshalJSON(data []byte) error { + type NoMethod AssistantPfrDeviceRdMetadata + var s1 struct { + EffectiveArgSpanLength gensupport.JSONFloat64 `json:"effectiveArgSpanLength"` + *NoMethod + } + s1.NoMethod = (*NoMethod)(s) + if err := json.Unmarshal(data, &s1); err != nil { + return err + } + s.EffectiveArgSpanLength = float64(s1.EffectiveArgSpanLength) + return nil +} + +// AssistantPfrSmartHomeIntentMetadata: Used by the Smarthome Business +// Rules twiddler to determine whether to replace the top-scoring +// Smarthome intent with another. +type AssistantPfrSmartHomeIntentMetadata struct { + // DeviceRdMetadata: Each DeviceRdMetadata represents one device RD + // (device slot) in the intent. Note that each device RD could have + // multiple device groundings inside of it. + DeviceRdMetadata []*AssistantPfrDeviceRdMetadata `json:"deviceRdMetadata,omitempty"` + + IntentName string `json:"intentName,omitempty"` + + // IsExactMatch: When num_constraints == num_constraints_satisfied, + // indicating all slot matchings are exact match. + IsExactMatch bool `json:"isExactMatch,omitempty"` + + // IsGrounded: When num_grounded_args > 0, indicating there is at least + // one top-level argument is grounded. + IsGrounded bool `json:"isGrounded,omitempty"` + + // ForceSendFields is a list of field names (e.g. "DeviceRdMetadata") 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. "DeviceRdMetadata") 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 *AssistantPfrSmartHomeIntentMetadata) MarshalJSON() ([]byte, error) { + type NoMethod AssistantPfrSmartHomeIntentMetadata + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // AssistantPrefulfillmentRankerPrefulfillmentSignals: Signals to be // used by the Prefulfillment Ranker. Derived from the ParsingSignals // and GroundingSignals carried by the FunctionCall. LINT.IfChange Next -// ID: 57 +// ID: 60 type AssistantPrefulfillmentRankerPrefulfillmentSignals struct { // BindingSetAuis: Assistant User Interaction Score for binding set. BindingSetAuis float64 `json:"bindingSetAuis,omitempty"` @@ -26300,6 +26523,11 @@ type AssistantPrefulfillmentRankerPrefulfillmentSignals struct { // IsFullyGrounded: Whether the intent is fully grounded. IsFullyGrounded bool `json:"isFullyGrounded,omitempty"` + // IsHighConfidencePodcastIntent: Used for PFR manual rule to prefer + // high confidence podcast intent (e.g. topical, genre) over generic + // podcast intents. + IsHighConfidencePodcastIntent bool `json:"isHighConfidencePodcastIntent,omitempty"` + // IsMediaControlIntent: Whether the intent is a media control intent. IsMediaControlIntent bool `json:"isMediaControlIntent,omitempty"` @@ -26307,6 +26535,11 @@ type AssistantPrefulfillmentRankerPrefulfillmentSignals struct { // intent. IsPlayGenericMusic bool `json:"isPlayGenericMusic,omitempty"` + // IsPodcastGenericIntent: Used for PFR manual rule to prefer high + // confidence podcast intent (e.g. topical, genre) over generic podcast + // intents. + IsPodcastGenericIntent bool `json:"isPodcastGenericIntent,omitempty"` + // IsPodcastIntent: Whether the intent is a podcast intent. IsPodcastIntent bool `json:"isPodcastIntent,omitempty"` @@ -26492,6 +26725,10 @@ type AssistantPrefulfillmentRankerPrefulfillmentSignals struct { // for the suppression for intents lower in the list. SearchDispatch string `json:"searchDispatch,omitempty"` + // SmarthomeIntentMetadata: SmartHome intent metadata used for the + // SmartHome business-rules twiddler. + SmarthomeIntentMetadata *AssistantPfrSmartHomeIntentMetadata `json:"smarthomeIntentMetadata,omitempty"` + // SubIntentType: sub_intent_type differentiates between intents that // share the top level intent name. For eg: for // TV_FALLBACK_SEARCH_INTENT, the top level intent name must be @@ -34534,7 +34771,7 @@ func (s *DrishtiSparseFeatureData) UnmarshalJSON(data []byte) error { } // DrishtiVesperEncodedThumbnail: The attributes of encoded thumbnail -// images. Next id: 7. +// images. Next id: 8. type DrishtiVesperEncodedThumbnail struct { // EncodingQuality: JPEG/WEBP quality factor in range [0,100]. EncodingQuality int64 `json:"encodingQuality,omitempty"` @@ -34550,6 +34787,12 @@ type DrishtiVesperEncodedThumbnail struct { Height int64 `json:"height,omitempty"` + // ImageBlobId: The Blob ID of the thumbnail image in the Blobstore. We + // recommend absolute IDs with universe prefix if this field is passed + // across systems. The owner of this blob is also responsible for data + // Wipeout compliance. + ImageBlobId string `json:"imageBlobId,omitempty"` + // ImageBytes: Encoded thumbnail bytes. Prefer this over `image_string` // as we are not supposed to store image bytes in a proto string field. ImageBytes string `json:"imageBytes,omitempty"` @@ -58198,6 +58441,13 @@ type GoogleCloudContentwarehouseV1DocumentReference struct { // DocumentIsFolder: The document type of the document being referenced. DocumentIsFolder bool `json:"documentIsFolder,omitempty"` + // DocumentIsLegalHoldFolder: Document is a folder with legal hold. + DocumentIsLegalHoldFolder bool `json:"documentIsLegalHoldFolder,omitempty"` + + // DocumentIsRetentionFolder: Document is a folder with retention + // policy. + DocumentIsRetentionFolder bool `json:"documentIsRetentionFolder,omitempty"` + // DocumentName: Required. Name of the referenced document. DocumentName string `json:"documentName,omitempty"` @@ -60712,6 +60962,7 @@ type GoogleCloudContentwarehouseV1TimeFilter struct { // "TIME_FIELD_UNSPECIFIED" - Default value. // "CREATE_TIME" - Earliest document create time. // "UPDATE_TIME" - Latest document update time. + // "DISPOSITION_TIME" - Time when document becomes mutable again. TimeField string `json:"timeField,omitempty"` TimeRange *GoogleTypeInterval `json:"timeRange,omitempty"` @@ -103373,8 +103624,8 @@ type PeoplestackFlexorgsProtoInternalExternal struct { // society-team@google.com // "SOCIETY_CHAT" - Society chat application. http://go/society Team // contact: society-team@google.com - // "HIGHLIGHT" - Search Highlight http://go/seng-highlight Team - // contact: search-engagement-team@google.com + // "HIGHLIGHT" - Search One Presence (Formerly Search Engagement + // Highlight) http://go/dumpling Team contact: team-dumpling@google.com // "YOUTUBE_LIVE" - YouTube Live Chat. http://go/livechat-redesign // Team contact: yt-live-chat@google.com // "YOUTUBE_LIVE_ACTIVITY_LOG" - YouTube Live Activity log. @@ -103835,6 +104086,8 @@ type PeoplestackFlexorgsProtoInternalExternal struct { // a11y-tracker-eng@google.com // "DUCKIEWEB" - Duckieweb Team contact: // workflow-horizontals-core@google.com + // "MATTERSPACE" - Matterspace Team contact: + // legalworks-elm-eng@google.com, rajapate@google.com // "DEPRECATED_QUICKSTART_FLUME" // "DUO_CLIENT" - Duo Client Team contact: duo-eng@google.com // "ALBERT" - Project albert (go/albert-frontend) Team contact: @@ -116709,6 +116962,8 @@ type QualityShoppingShoppingAttachmentProduct struct { GlobalProductClusterId uint64 `json:"globalProductClusterId,omitempty,string"` + Images []*ShoppingWebentityShoppingAnnotationProductImage `json:"images,omitempty"` + Locale *QualityShoppingShoppingAttachmentLocale `json:"locale,omitempty"` MokaFacet []*QualityShoppingShoppingAttachmentMokaFacetValue `json:"mokaFacet,omitempty"` @@ -130083,7 +130338,7 @@ func (s *ResearchScienceSearchOrganization) MarshalJSON() ([]byte, error) { } // ResearchScienceSearchReconciledMetadata: A proto for storing inferred -// and reconciled metadata for Science Search. Next available tag: 71 +// and reconciled metadata for Science Search. Next available tag: 72 type ResearchScienceSearchReconciledMetadata struct { // AlternateName: Alternate names and acronyms for the dataset. AlternateName []string `json:"alternateName,omitempty"` @@ -130341,6 +130596,11 @@ type ResearchScienceSearchReconciledMetadata struct { // the VersionAggregator. VersionEmbeddingVector []float64 `json:"versionEmbeddingVector,omitempty"` + // VersionsSimhash: A simhash value of the fields used for identifying + // versions of a dataset. This will be used by the + // VersionClusterInfoWriter. + VersionsSimhash uint64 `json:"versionsSimhash,omitempty,string"` + // ForceSendFields is a list of field names (e.g. "AlternateName") to // unconditionally include in API requests. By default, fields with // empty or default values are omitted from API requests. However, any @@ -134604,6 +134864,42 @@ func (s *ShoppingWebentityShoppingAnnotationOfferAvailabilityInfo) MarshalJSON() return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// ShoppingWebentityShoppingAnnotationProductImage: Images from the +// product-level representation (i.e. GPC). These images are currently +// only annotated 1) when no offers are available 2) on the product +// level +type ShoppingWebentityShoppingAnnotationProductImage struct { + ImageDocid uint64 `json:"imageDocid,omitempty,string"` + + // Possible values: + // "PRODUCT_IMAGE_TYPE_UNKNOWN" + // "PRODUCT_IMAGE_GPC" + // "PRODUCT_IMAGE_TYPE_MULTIBANG_ENTITY_INFERRED" + ProductImageType string `json:"productImageType,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ImageDocid") 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. "ImageDocid") 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 *ShoppingWebentityShoppingAnnotationProductImage) MarshalJSON() ([]byte, error) { + type NoMethod ShoppingWebentityShoppingAnnotationProductImage + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // ShoppingWebentityShoppingAnnotationProductRating: Information about a // rating provided for a product. This can represent an aggregated // rating if count is set. Next Id: 7 @@ -140400,6 +140696,9 @@ type StorageGraphBfgTripleProvenance struct { // "ISOLATION_ASTROLOGY_HOROSCOPE" - Access controls for Astrology // Horoscope features. Please contact search-india-verticals@ before // reading or writing this data. DD: go/daily-horoscope-dd + // "ISOLATION_LLM_GENERATED_TVM_SYNOPSIS" - Access controls for LLM + // generated tvm synopsis. DD: go/i18n-tvm-descriptions Please contact + // dkrish-team@ before reading or writing this data. // "UMP_TESTING_ONLY" - This access control is used to guard data used // by the Unified Media Platform team (ke-media-actions-serving@) for // testing new features. It should never be used for purposes other than @@ -144769,6 +145068,8 @@ type VendingConsumerProtoTrustedGenomeAnnotation struct { // SERP // "BROAD_RELATED_QUERIES_CLUSTER_EVENT" - Broad Related Queries // TestCode + // "SUPPLEMENTAL_TG_RETRIEVAL_EVENT_LEVEL" - Event-level test code for + // Supplemental TG Retrieval. // "EVENT_LEVEL_TEST_CODE_LIMIT" // "ENTERTAINMENT_CLUSTER_TRIGGERING_AT_SESSION_LEVEL" // "BEST_SELLER_CART_TAG_AT_SESSION_LEVEL" @@ -145499,6 +145800,10 @@ type VendingConsumerProtoTrustedGenomeAnnotation struct { // "SHOULD_SEE_NOW_CLUSTER_CONTENT_PRE_REGISTRATION_NH_K2" // "SHOULD_SEE_NOW_CLUSTER_CONTENT_PRE_REGISTRATION_NH_K3_4" // "SHOULD_SEE_NOW_CLUSTER_CONTENT_PRE_REGISTRATION_NH_GTE_K5" + // "FEATURED_PRODUCTS_LIVE_OPS_AT_SESSION_LEVEL" - Session level test + // code for Featured Products LiveOps. + // "SUPPLEMENTAL_TG_RETRIEVAL_SESSION_LEVEL" - Session-level test code + // for Supplemental TG Retrieval. // "WALLET_WELLBEING_ALERT_SESSION_LEVEL" - TestCode for slicing the // users cohorts that should have received a budget Warning alert // "BROAD_INTENT_REWEIGHTING_SESSION_LEVEL" - TestCode for Broad @@ -146049,6 +146354,9 @@ type VendingConsumerProtoTrustedGenomeAnnotation struct { // test code for Loyalty Purchase Quest, for tracking users who are // eligible for the LPQ in Games Home. This test code is logged on // server side. + // "LOYALTY_PURCHASE_QUEST_SERP_SERVER_USER_LEVEL" - User level test + // code for Loyalty Purchase Quest, for tracking users who are eligible + // for the LPQ in SERP. This test code is logged on server side. // "LOYALTY_CORPUS_WIDE_STAMP_CARD_GAMES_HOME_SERVER_USER_LEVEL" - // User level test code for Corpus Wide Loyalty Stamp Card, for tracking // users who are eligible for the LSC in Games Home. This test code is @@ -146312,6 +146620,8 @@ type VendingConsumerProtoTrustedGenomeAnnotation struct { // enabling pSpend model, log test code. // "IS_ELIGIBLE_FOR_RENEWAL_REMINDER_USER_LEVEL" - User level test // code for users who are eligible to see the renewal reminder button. + // "FEATURED_PRODUCTS_LIVE_OPS_AT_USER_LEVEL" - User level test code + // for Featured Products LiveOps. // "USER_LEVEL_TEST_CODE_LIMIT" TestCode []string `json:"testCode,omitempty"` @@ -161648,39 +161958,45 @@ func (s *WirelessTranscoderFetchFetchSourceInfo) MarshalJSON() ([]byte, error) { } // YoutubeBackstageSuperVodCommentInfo: Contains information about -// comment that is posted through a Super VOD purchase. Next ID: 6 +// comment that is posted through a Super Thanks purchase. Next ID: 7 type YoutubeBackstageSuperVodCommentInfo struct { - // CurrencyCode: Currency code the user uses to purchase this Super VOD - // item. + // CurrencyCode: Currency code the user uses to purchase this Super + // Thanks item. CurrencyCode string `json:"currencyCode,omitempty"` - // EntitlementId: The ID of the Super VOD entitlement. It uniquely - // identifies a Super VOD purchase. + // EntitlementId: The ID of the Super Thanks entitlement. It uniquely + // identifies a Super Thanks purchase. This field is deprecated in favor + // of transaction_id, see go/st-deprecate-ent-id. EntitlementId string `json:"entitlementId,omitempty"` - // PriceInMicros: Price of Super VOD item the user purchases in micros. + // PriceInMicros: Price of Super Thanks item the user purchases in + // micros. PriceInMicros uint64 `json:"priceInMicros,omitempty,string"` - // SuperVodItemId: The Super VOD item the user purchases, it represents - // price tier. + // SuperVodItemId: The Super Thanks item the user purchases, it + // represents price tier. SuperVodItemId string `json:"superVodItemId,omitempty"` - // Version: Which version of experiment this Super VOD comment is posted - // in. + // TransactionId: The ID of the Super Thanks transaction. It uniquely + // identifies a Super Thanks purchase. + TransactionId string `json:"transactionId,omitempty"` + + // Version: Which version of experiment this Super Thanks comment is + // posted in. // // Possible values: // "UNSPECIFIED_VERSION" // "V1_DEFAULT_MESSAGE" - DEPRECATED since decorated comments are // fully launched. Comments previously posted with this enum value will - // continue to exist. Undecorated Comment. When user buys a Super VOD, a - // comment with default message will be automatically posted on behalf - // of the user. + // continue to exist. Undecorated Comment. When user buys a Super + // Thanks, a comment with default message will be automatically posted + // on behalf of the user. // "V2_DECORATED_DEFAULT_MESSAGE" - Decorated Comment. When user buys - // a Super VOD, a comment with default message and a special decoration - // will be automatically posted on behalf of the user. + // a Super Thanks, a comment with default message and a special + // decoration will be automatically posted on behalf of the user. // https://screenshot.googleplex.com/6aYvGnX5Bp9bT9Q - // "V3_USER_GENERATED_MESSAGE" - UGC. When user buys a Super VOD, they - // can write their own UGC comment which will be decorated and + // "V3_USER_GENERATED_MESSAGE" - UGC. When user buys a Super Thanks, + // they can write their own UGC comment which will be decorated and // automatically posted on behalf of the user. Version string `json:"version,omitempty"` diff --git a/customsearch/v1/customsearch-api.json b/customsearch/v1/customsearch-api.json index a838db84823..93e47a41905 100644 --- a/customsearch/v1/customsearch-api.json +++ b/customsearch/v1/customsearch-api.json @@ -321,6 +321,13 @@ "medium", "off" ], + "enumDeprecated": [ + false, + false, + true, + true, + false + ], "enumDescriptions": [ "SafeSearch mode unspecified. (Falls back to engine's configuration.)", "Turn SafeSearch on.", @@ -609,6 +616,13 @@ "medium", "off" ], + "enumDeprecated": [ + false, + false, + true, + true, + false + ], "enumDescriptions": [ "SafeSearch mode unspecified. (Falls back to engine's configuration.)", "Turn SafeSearch on.", @@ -674,7 +688,7 @@ } } }, - "revision": "20230329", + "revision": "20230702", "rootUrl": "https://customsearch.googleapis.com/", "schemas": { "Promotion": { diff --git a/customsearch/v1/customsearch-gen.go b/customsearch/v1/customsearch-gen.go index 0063aa212ac..da8406260e8 100644 --- a/customsearch/v1/customsearch-gen.go +++ b/customsearch/v1/customsearch-gen.go @@ -2020,6 +2020,13 @@ func (c *CseListCall) Do(opts ...googleapi.CallOption) (*Search, error) { // "medium", // "off" // ], + // "enumDeprecated": [ + // false, + // false, + // true, + // true, + // false + // ], // "enumDescriptions": [ // "SafeSearch mode unspecified. (Falls back to engine's configuration.)", // "Turn SafeSearch on.", @@ -2793,6 +2800,13 @@ func (c *CseSiterestrictListCall) Do(opts ...googleapi.CallOption) (*Search, err // "medium", // "off" // ], + // "enumDeprecated": [ + // false, + // false, + // true, + // true, + // false + // ], // "enumDescriptions": [ // "SafeSearch mode unspecified. (Falls back to engine's configuration.)", // "Turn SafeSearch on.", diff --git a/dataflow/v1b3/dataflow-api.json b/dataflow/v1b3/dataflow-api.json index 448a3e3f1ba..045edbea4ce 100644 --- a/dataflow/v1b3/dataflow-api.json +++ b/dataflow/v1b3/dataflow-api.json @@ -576,7 +576,7 @@ "type": "string" }, "updateMask": { - "description": "The list of fields to update relative to Job. If empty, only RequestedJobState will be considered for update. If the FieldMask is not empty and RequestedJobState is none/empty, The fields specified in the update mask will be the only ones considered for update. If both RequestedJobState and update_mask are specified, we will first handle RequestedJobState and then the update_mask fields.", + "description": "The list of fields to update relative to Job. If empty, only RequestedJobState will be considered for update. If the FieldMask is not empty and RequestedJobState is none/empty, The fields specified in the update mask will be the only ones considered for update. If both RequestedJobState and update_mask are specified, an error will be returned as we cannot update both state and mask.", "format": "google-fieldmask", "location": "query", "type": "string" @@ -1302,7 +1302,7 @@ "type": "string" }, "updateMask": { - "description": "The list of fields to update relative to Job. If empty, only RequestedJobState will be considered for update. If the FieldMask is not empty and RequestedJobState is none/empty, The fields specified in the update mask will be the only ones considered for update. If both RequestedJobState and update_mask are specified, we will first handle RequestedJobState and then the update_mask fields.", + "description": "The list of fields to update relative to Job. If empty, only RequestedJobState will be considered for update. If the FieldMask is not empty and RequestedJobState is none/empty, The fields specified in the update mask will be the only ones considered for update. If both RequestedJobState and update_mask are specified, an error will be returned as we cannot update both state and mask.", "format": "google-fieldmask", "location": "query", "type": "string" @@ -2214,7 +2214,7 @@ } } }, - "revision": "20230529", + "revision": "20230619", "rootUrl": "https://dataflow.googleapis.com/", "schemas": { "ApproximateProgress": { @@ -4700,6 +4700,13 @@ "description": "Optional. Additional metadata for describing this parameter.", "type": "object" }, + "enumOptions": { + "description": "Optional. The options shown when ENUM ParameterType is specified.", + "items": { + "$ref": "ParameterMetadataEnumOption" + }, + "type": "array" + }, "groupName": { "description": "Optional. Specifies a group name for this parameter to be rendered under. Group header text will be rendered exactly as specified in this field. Only considered when parent_name is NOT provided.", "type": "string" @@ -4739,7 +4746,9 @@ "MACHINE_TYPE", "KMS_KEY_NAME", "WORKER_REGION", - "WORKER_ZONE" + "WORKER_ZONE", + "BOOLEAN", + "ENUM" ], "enumDescriptions": [ "Default input type.", @@ -4758,7 +4767,9 @@ "The parameter specifies a Machine Type.", "The parameter specifies a KMS Key name.", "The parameter specifies a Worker Region.", - "The parameter specifies a Worker Zone." + "The parameter specifies a Worker Zone.", + "The parameter specifies a boolean input.", + "The parameter specifies an enum input." ], "type": "string" }, @@ -4783,6 +4794,25 @@ }, "type": "object" }, + "ParameterMetadataEnumOption": { + "description": "ParameterMetadataEnumOption specifies the option shown in the enum form.", + "id": "ParameterMetadataEnumOption", + "properties": { + "description": { + "description": "Optional. The description to display for the enum option.", + "type": "string" + }, + "label": { + "description": "Optional. The label to display for the enum option.", + "type": "string" + }, + "value": { + "description": "Required. The value of the enum option.", + "type": "string" + } + }, + "type": "object" + }, "PartialGroupByKeyInstruction": { "description": "An instruction that does a partial group-by-key. One input and one output.", "id": "PartialGroupByKeyInstruction", diff --git a/dataflow/v1b3/dataflow-gen.go b/dataflow/v1b3/dataflow-gen.go index fe6feecd9b2..95e9b304882 100644 --- a/dataflow/v1b3/dataflow-gen.go +++ b/dataflow/v1b3/dataflow-gen.go @@ -4348,6 +4348,10 @@ type ParameterMetadata struct { // parameter. CustomMetadata map[string]string `json:"customMetadata,omitempty"` + // EnumOptions: Optional. The options shown when ENUM ParameterType is + // specified. + EnumOptions []*ParameterMetadataEnumOption `json:"enumOptions,omitempty"` + // GroupName: Optional. Specifies a group name for this parameter to be // rendered under. Group header text will be rendered exactly as // specified in this field. Only considered when parent_name is NOT @@ -4397,6 +4401,8 @@ type ParameterMetadata struct { // "KMS_KEY_NAME" - The parameter specifies a KMS Key name. // "WORKER_REGION" - The parameter specifies a Worker Region. // "WORKER_ZONE" - The parameter specifies a Worker Zone. + // "BOOLEAN" - The parameter specifies a boolean input. + // "ENUM" - The parameter specifies an enum input. ParamType string `json:"paramType,omitempty"` // ParentName: Optional. Specifies the name of the parent parameter. @@ -4439,6 +4445,42 @@ func (s *ParameterMetadata) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// ParameterMetadataEnumOption: ParameterMetadataEnumOption specifies +// the option shown in the enum form. +type ParameterMetadataEnumOption struct { + // Description: Optional. The description to display for the enum + // option. + Description string `json:"description,omitempty"` + + // Label: Optional. The label to display for the enum option. + Label string `json:"label,omitempty"` + + // Value: Required. The value of the enum option. + Value string `json:"value,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 *ParameterMetadataEnumOption) MarshalJSON() ([]byte, error) { + type NoMethod ParameterMetadataEnumOption + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // PartialGroupByKeyInstruction: An instruction that does a partial // group-by-key. One input and one output. type PartialGroupByKeyInstruction struct { @@ -10157,8 +10199,8 @@ func (c *ProjectsJobsUpdateCall) Location(location string) *ProjectsJobsUpdateCa // will be considered for update. If the FieldMask is not empty and // RequestedJobState is none/empty, The fields specified in the update // mask will be the only ones considered for update. If both -// RequestedJobState and update_mask are specified, we will first handle -// RequestedJobState and then the update_mask fields. +// RequestedJobState and update_mask are specified, an error will be +// returned as we cannot update both state and mask. func (c *ProjectsJobsUpdateCall) UpdateMask(updateMask string) *ProjectsJobsUpdateCall { c.urlParams_.Set("updateMask", updateMask) return c @@ -10283,7 +10325,7 @@ func (c *ProjectsJobsUpdateCall) Do(opts ...googleapi.CallOption) (*Job, error) // "type": "string" // }, // "updateMask": { - // "description": "The list of fields to update relative to Job. If empty, only RequestedJobState will be considered for update. If the FieldMask is not empty and RequestedJobState is none/empty, The fields specified in the update mask will be the only ones considered for update. If both RequestedJobState and update_mask are specified, we will first handle RequestedJobState and then the update_mask fields.", + // "description": "The list of fields to update relative to Job. If empty, only RequestedJobState will be considered for update. If the FieldMask is not empty and RequestedJobState is none/empty, The fields specified in the update mask will be the only ones considered for update. If both RequestedJobState and update_mask are specified, an error will be returned as we cannot update both state and mask.", // "format": "google-fieldmask", // "location": "query", // "type": "string" @@ -12961,8 +13003,8 @@ func (r *ProjectsLocationsJobsService) Update(projectId string, location string, // will be considered for update. If the FieldMask is not empty and // RequestedJobState is none/empty, The fields specified in the update // mask will be the only ones considered for update. If both -// RequestedJobState and update_mask are specified, we will first handle -// RequestedJobState and then the update_mask fields. +// RequestedJobState and update_mask are specified, an error will be +// returned as we cannot update both state and mask. func (c *ProjectsLocationsJobsUpdateCall) UpdateMask(updateMask string) *ProjectsLocationsJobsUpdateCall { c.urlParams_.Set("updateMask", updateMask) return c @@ -13090,7 +13132,7 @@ func (c *ProjectsLocationsJobsUpdateCall) Do(opts ...googleapi.CallOption) (*Job // "type": "string" // }, // "updateMask": { - // "description": "The list of fields to update relative to Job. If empty, only RequestedJobState will be considered for update. If the FieldMask is not empty and RequestedJobState is none/empty, The fields specified in the update mask will be the only ones considered for update. If both RequestedJobState and update_mask are specified, we will first handle RequestedJobState and then the update_mask fields.", + // "description": "The list of fields to update relative to Job. If empty, only RequestedJobState will be considered for update. If the FieldMask is not empty and RequestedJobState is none/empty, The fields specified in the update mask will be the only ones considered for update. If both RequestedJobState and update_mask are specified, an error will be returned as we cannot update both state and mask.", // "format": "google-fieldmask", // "location": "query", // "type": "string" diff --git a/dataform/v1beta1/dataform-api.json b/dataform/v1beta1/dataform-api.json index 7b4173f92b5..50af7c791c8 100644 --- a/dataform/v1beta1/dataform-api.json +++ b/dataform/v1beta1/dataform-api.json @@ -1816,7 +1816,7 @@ } } }, - "revision": "20230616", + "revision": "20230626", "rootUrl": "https://dataform.googleapis.com/", "schemas": { "Assertion": { @@ -2255,6 +2255,7 @@ "type": "string" }, "tokenStatus": { + "deprecated": true, "description": "Output only. Deprecated: The field does not contain any token status information. Instead use https://cloud.google.com/dataform/reference/rest/v1beta1/projects.locations.repositories/computeAccessTokenStatus", "enum": [ "TOKEN_STATUS_UNSPECIFIED", diff --git a/datafusion/v1/datafusion-api.json b/datafusion/v1/datafusion-api.json index fc3e18ef864..20082f49191 100644 --- a/datafusion/v1/datafusion-api.json +++ b/datafusion/v1/datafusion-api.json @@ -737,7 +737,7 @@ } } }, - "revision": "20230508", + "revision": "20230627", "rootUrl": "https://datafusion.googleapis.com/", "schemas": { "Accelerator": { @@ -1065,6 +1065,7 @@ "type": "boolean" }, "serviceAccount": { + "deprecated": true, "description": "Output only. Deprecated. Use tenant_project_id instead to extract the tenant project ID.", "readOnly": true, "type": "string" diff --git a/datafusion/v1beta1/datafusion-api.json b/datafusion/v1beta1/datafusion-api.json index fa0d7c2e919..6188710d81a 100644 --- a/datafusion/v1beta1/datafusion-api.json +++ b/datafusion/v1beta1/datafusion-api.json @@ -935,7 +935,7 @@ } } }, - "revision": "20230508", + "revision": "20230627", "rootUrl": "https://datafusion.googleapis.com/", "schemas": { "Accelerator": { @@ -1278,6 +1278,7 @@ "type": "boolean" }, "serviceAccount": { + "deprecated": true, "description": "Output only. Deprecated. Use tenant_project_id instead to extract the tenant project ID.", "readOnly": true, "type": "string" diff --git a/datalineage/v1/datalineage-api.json b/datalineage/v1/datalineage-api.json index 707991b7b54..366b78212bc 100644 --- a/datalineage/v1/datalineage-api.json +++ b/datalineage/v1/datalineage-api.json @@ -761,7 +761,7 @@ } } }, - "revision": "20230519", + "revision": "20230623", "rootUrl": "https://datalineage.googleapis.com/", "schemas": { "GoogleCloudDatacatalogLineageV1BatchSearchLinkProcessesRequest": { @@ -852,7 +852,7 @@ "type": "string" }, "startTime": { - "description": "Optional. The beginning of the transformation which resulted in this lineage event. For streaming scenarios, it should be the beginning of the period from which the lineage is being reported.", + "description": "Required. The beginning of the transformation which resulted in this lineage event. For streaming scenarios, it should be the beginning of the period from which the lineage is being reported.", "format": "google-datetime", "type": "string" } diff --git a/datalineage/v1/datalineage-gen.go b/datalineage/v1/datalineage-gen.go index a5ae3eeff33..b9f1b0cc45a 100644 --- a/datalineage/v1/datalineage-gen.go +++ b/datalineage/v1/datalineage-gen.go @@ -374,7 +374,7 @@ type GoogleCloudDatacatalogLineageV1LineageEvent struct { // contain characters in a set: `a-zA-Z0-9_-:.` Name string `json:"name,omitempty"` - // StartTime: Optional. The beginning of the transformation which + // StartTime: Required. The beginning of the transformation which // resulted in this lineage event. For streaming scenarios, it should be // the beginning of the period from which the lineage is being reported. StartTime string `json:"startTime,omitempty"` diff --git a/dataplex/v1/dataplex-api.json b/dataplex/v1/dataplex-api.json index 1589e759f44..ea12b034286 100644 --- a/dataplex/v1/dataplex-api.json +++ b/dataplex/v1/dataplex-api.json @@ -4269,7 +4269,7 @@ } } }, - "revision": "20230616", + "revision": "20230626", "rootUrl": "https://dataplex.googleapis.com/", "schemas": { "Empty": { @@ -5798,6 +5798,10 @@ "description": "The message describing the data scan job event.", "type": "string" }, + "postScanActionsResult": { + "$ref": "GoogleCloudDataplexV1DataScanEventPostScanActionsResult", + "description": "The result of post scan actions." + }, "scope": { "description": "The scope of the data scan (e.g. full, incremental).", "enum": [ @@ -5941,6 +5945,44 @@ }, "type": "object" }, + "GoogleCloudDataplexV1DataScanEventPostScanActionsResult": { + "description": "Post scan actions result for data scan job.", + "id": "GoogleCloudDataplexV1DataScanEventPostScanActionsResult", + "properties": { + "bigqueryExportResult": { + "$ref": "GoogleCloudDataplexV1DataScanEventPostScanActionsResultBigQueryExportResult", + "description": "The result of BigQuery export post scan action." + } + }, + "type": "object" + }, + "GoogleCloudDataplexV1DataScanEventPostScanActionsResultBigQueryExportResult": { + "description": "The result of BigQuery export post scan action.", + "id": "GoogleCloudDataplexV1DataScanEventPostScanActionsResultBigQueryExportResult", + "properties": { + "message": { + "description": "Additional information about the BigQuery exporting.", + "type": "string" + }, + "state": { + "description": "Execution state for the BigQuery exporting.", + "enum": [ + "STATE_UNSPECIFIED", + "SUCCEEDED", + "FAILED", + "SKIPPED" + ], + "enumDescriptions": [ + "The exporting state is unspecified.", + "The exporting completed successfully.", + "The exporting is no longer running due to an error.", + "The exporting is skipped due to no valid scan result to export (usually caused by scan failed)." + ], + "type": "string" + } + }, + "type": "object" + }, "GoogleCloudDataplexV1DataScanExecutionSpec": { "description": "DataScan execution settings.", "id": "GoogleCloudDataplexV1DataScanExecutionSpec", diff --git a/dataplex/v1/dataplex-gen.go b/dataplex/v1/dataplex-gen.go index 852f3ee4608..367747b6865 100644 --- a/dataplex/v1/dataplex-gen.go +++ b/dataplex/v1/dataplex-gen.go @@ -2806,6 +2806,9 @@ type GoogleCloudDataplexV1DataScanEvent struct { // Message: The message describing the data scan job event. Message string `json:"message,omitempty"` + // PostScanActionsResult: The result of post scan actions. + PostScanActionsResult *GoogleCloudDataplexV1DataScanEventPostScanActionsResult `json:"postScanActionsResult,omitempty"` + // Scope: The scope of the data scan (e.g. full, incremental). // // Possible values: @@ -3042,6 +3045,76 @@ func (s *GoogleCloudDataplexV1DataScanEventDataQualityResult) MarshalJSON() ([]b return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// GoogleCloudDataplexV1DataScanEventPostScanActionsResult: Post scan +// actions result for data scan job. +type GoogleCloudDataplexV1DataScanEventPostScanActionsResult struct { + // BigqueryExportResult: The result of BigQuery export post scan action. + BigqueryExportResult *GoogleCloudDataplexV1DataScanEventPostScanActionsResultBigQueryExportResult `json:"bigqueryExportResult,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "BigqueryExportResult") 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. "BigqueryExportResult") 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 *GoogleCloudDataplexV1DataScanEventPostScanActionsResult) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDataplexV1DataScanEventPostScanActionsResult + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDataplexV1DataScanEventPostScanActionsResultBigQueryExportR +// esult: The result of BigQuery export post scan action. +type GoogleCloudDataplexV1DataScanEventPostScanActionsResultBigQueryExportResult struct { + // Message: Additional information about the BigQuery exporting. + Message string `json:"message,omitempty"` + + // State: Execution state for the BigQuery exporting. + // + // Possible values: + // "STATE_UNSPECIFIED" - The exporting state is unspecified. + // "SUCCEEDED" - The exporting completed successfully. + // "FAILED" - The exporting is no longer running due to an error. + // "SKIPPED" - The exporting is skipped due to no valid scan result to + // export (usually caused by scan failed). + State string `json:"state,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Message") 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. "Message") 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 *GoogleCloudDataplexV1DataScanEventPostScanActionsResultBigQueryExportResult) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDataplexV1DataScanEventPostScanActionsResultBigQueryExportResult + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // GoogleCloudDataplexV1DataScanExecutionSpec: DataScan execution // settings. type GoogleCloudDataplexV1DataScanExecutionSpec struct { diff --git a/dataproc/v1/dataproc-api.json b/dataproc/v1/dataproc-api.json index 02e7ab03e14..679fc02c292 100644 --- a/dataproc/v1/dataproc-api.json +++ b/dataproc/v1/dataproc-api.json @@ -2671,7 +2671,7 @@ } } }, - "revision": "20230508", + "revision": "20230622", "rootUrl": "https://dataproc.googleapis.com/", "schemas": { "AcceleratorConfig": { @@ -3548,7 +3548,7 @@ "id": "ExecutionConfig", "properties": { "idleTtl": { - "description": "Optional. The duration to keep the session alive while it's idling. Exceeding this threshold causes the session to terminate. This field cannot be set on a batch workload. Minimum value is 10 minutes; maximum value is 14 days (see JSON representation of Duration (https://developers.google.com/protocol-buffers/docs/proto3#json)). Defaults to 4 hours if not set. If both ttl and idle_ttl are specified, the conditions are treated as OR conditions: the workload will be terminated when it has been idle for idle_ttl or when ttl has been exceed, whichever occurs first.", + "description": "Optional. The duration to keep the session alive while it's idling. Exceeding this threshold causes the session to terminate. This field cannot be set on a batch workload. Minimum value is 10 minutes; maximum value is 14 days (see JSON representation of Duration (https://developers.google.com/protocol-buffers/docs/proto3#json)). Defaults to 4 hours if not set. If both ttl and idle_ttl are specified for an interactive session, the conditions are treated as OR conditions: the workload will be terminated when it has been idle for idle_ttl or when ttl has been exceeded, whichever occurs first.", "format": "google-duration", "type": "string" }, @@ -3580,7 +3580,7 @@ "type": "string" }, "ttl": { - "description": "Optional. The duration after which the workload will be terminated. When the workload exceeds this duration, it will be unconditionally terminated without waiting for ongoing work to finish. If ttl is not specified for a batch workload, the workload will be allowed to run until it exits naturally (or runs forever without exiting). If ttl is not specified for an interactive session, it defaults to 24h. Minimum value is 10 minutes; maximum value is 14 days (see JSON representation of Duration (https://developers.google.com/protocol-buffers/docs/proto3#json)). If both ttl and idle_ttl are specified (for an interactive session), the conditions are treated as OR conditions: the workload will be terminated when it has been idle for idle_ttl or when ttl has been exceeded, whichever occurs first.", + "description": "Optional. The duration after which the workload will be terminated. When the workload exceeds this duration, it will be unconditionally terminated without waiting for ongoing work to finish. If ttl is not specified for a batch workload, the workload will be allowed to run until it exits naturally (or runs forever without exiting). If ttl is not specified for an interactive session, it defaults to 24h. If ttl is not specified for a batch that uses 2.1+ runtime version, it defaults to 4h. Minimum value is 10 minutes; maximum value is 14 days (see JSON representation of Duration (https://developers.google.com/protocol-buffers/docs/proto3#json)). If both ttl and idle_ttl are specified (for an interactive session), the conditions are treated as OR conditions: the workload will be terminated when it has been idle for idle_ttl or when ttl has been exceeded, whichever occurs first.", "format": "google-duration", "type": "string" } @@ -4569,10 +4569,11 @@ "id": "ListBatchesResponse", "properties": { "batches": { - "description": "The batches from the specified collection.", + "description": "Output only. The batches from the specified collection.", "items": { "$ref": "Batch" }, + "readOnly": true, "type": "array" }, "nextPageToken": { diff --git a/dataproc/v1/dataproc-gen.go b/dataproc/v1/dataproc-gen.go index c8a8f627c72..3158504ca59 100644 --- a/dataproc/v1/dataproc-gen.go +++ b/dataproc/v1/dataproc-gen.go @@ -1692,9 +1692,9 @@ type ExecutionConfig struct { // Duration // (https://developers.google.com/protocol-buffers/docs/proto3#json)). // Defaults to 4 hours if not set. If both ttl and idle_ttl are - // specified, the conditions are treated as OR conditions: the workload - // will be terminated when it has been idle for idle_ttl or when ttl has - // been exceed, whichever occurs first. + // specified for an interactive session, the conditions are treated as + // OR conditions: the workload will be terminated when it has been idle + // for idle_ttl or when ttl has been exceeded, whichever occurs first. IdleTtl string `json:"idleTtl,omitempty"` // KmsKey: Optional. The Cloud KMS key to use for encryption. @@ -1729,8 +1729,9 @@ type ExecutionConfig struct { // finish. If ttl is not specified for a batch workload, the workload // will be allowed to run until it exits naturally (or runs forever // without exiting). If ttl is not specified for an interactive session, - // it defaults to 24h. Minimum value is 10 minutes; maximum value is 14 - // days (see JSON representation of Duration + // it defaults to 24h. If ttl is not specified for a batch that uses + // 2.1+ runtime version, it defaults to 4h. Minimum value is 10 minutes; + // maximum value is 14 days (see JSON representation of Duration // (https://developers.google.com/protocol-buffers/docs/proto3#json)). // If both ttl and idle_ttl are specified (for an interactive session), // the conditions are treated as OR conditions: the workload will be @@ -3409,7 +3410,7 @@ func (s *ListAutoscalingPoliciesResponse) MarshalJSON() ([]byte, error) { // ListBatchesResponse: A list of batch workloads. type ListBatchesResponse struct { - // Batches: The batches from the specified collection. + // Batches: Output only. The batches from the specified collection. Batches []*Batch `json:"batches,omitempty"` // NextPageToken: A token, which can be sent as page_token to retrieve diff --git a/datastream/v1alpha1/datastream-api.json b/datastream/v1alpha1/datastream-api.json index e4f8b30b129..edef3315d76 100644 --- a/datastream/v1alpha1/datastream-api.json +++ b/datastream/v1alpha1/datastream-api.json @@ -1224,7 +1224,7 @@ } } }, - "revision": "20230517", + "revision": "20230620", "rootUrl": "https://datastream.googleapis.com/", "schemas": { "AvroFileFormat": { @@ -1576,6 +1576,7 @@ "type": "integer" }, "gcsFileFormat": { + "deprecated": true, "description": "File format that data should be written in. Deprecated field (b/169501737) - use file_format instead.", "enum": [ "GCS_FILE_FORMAT_UNSPECIFIED", diff --git a/deploymentmanager/v0.alpha/deploymentmanager-api.json b/deploymentmanager/v0.alpha/deploymentmanager-api.json index 5e43cf49e26..91c6c2958c9 100644 --- a/deploymentmanager/v0.alpha/deploymentmanager-api.json +++ b/deploymentmanager/v0.alpha/deploymentmanager-api.json @@ -1588,7 +1588,7 @@ } } }, - "revision": "20230518", + "revision": "20230703", "rootUrl": "https://deploymentmanager.googleapis.com/", "schemas": { "AsyncOptions": { @@ -2416,6 +2416,36 @@ "INVALID_HEALTH_CHECK_FOR_DYNAMIC_WIEGHTED_LB", "LIST_OVERHEAD_QUOTA_EXCEED" ], + "enumDeprecated": [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + true, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], "enumDescriptions": [ "A link to a deprecated resource was created.", "No results are present on a particular list page.", @@ -2694,6 +2724,36 @@ "INVALID_HEALTH_CHECK_FOR_DYNAMIC_WIEGHTED_LB", "LIST_OVERHEAD_QUOTA_EXCEED" ], + "enumDeprecated": [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + true, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], "enumDescriptions": [ "A link to a deprecated resource was created.", "No results are present on a particular list page.", @@ -2909,6 +2969,36 @@ "INVALID_HEALTH_CHECK_FOR_DYNAMIC_WIEGHTED_LB", "LIST_OVERHEAD_QUOTA_EXCEED" ], + "enumDeprecated": [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + true, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], "enumDescriptions": [ "A link to a deprecated resource was created.", "No results are present on a particular list page.", diff --git a/dialogflow/v2beta1/dialogflow-api.json b/dialogflow/v2beta1/dialogflow-api.json index 5eaaaac2dd4..4a619421fd0 100644 --- a/dialogflow/v2beta1/dialogflow-api.json +++ b/dialogflow/v2beta1/dialogflow-api.json @@ -7579,7 +7579,7 @@ } } }, - "revision": "20230621", + "revision": "20230626", "rootUrl": "https://dialogflow.googleapis.com/", "schemas": { "GoogleCloudDialogflowCxV3AudioInput": { @@ -15428,7 +15428,7 @@ "description": "Configs for processing conversation." }, "enableEventBasedSuggestion": { - "description": "Automatically iterates all participants and tries to compile suggestions. Supported features: ARTICLE_SUGGESTION, FAQ, DIALOGFLOW_ASSIST.", + "description": "Automatically iterates all participants and tries to compile suggestions. Supported features: ARTICLE_SUGGESTION, FAQ, DIALOGFLOW_ASSIST, ENTITY_EXTRACTION.", "type": "boolean" }, "queryConfig": { @@ -15461,7 +15461,7 @@ }, "dialogflowQuerySource": { "$ref": "GoogleCloudDialogflowV2beta1HumanAgentAssistantConfigSuggestionQueryConfigDialogflowQuerySource", - "description": "Query from Dialogflow agent. It is used by DIALOGFLOW_ASSIST." + "description": "Query from Dialogflow agent. It is used by DIALOGFLOW_ASSIST, ENTITY_EXTRACTION." }, "documentQuerySource": { "$ref": "GoogleCloudDialogflowV2beta1HumanAgentAssistantConfigSuggestionQueryConfigDocumentQuerySource", @@ -15499,7 +15499,7 @@ "type": "object" }, "GoogleCloudDialogflowV2beta1HumanAgentAssistantConfigSuggestionQueryConfigDialogflowQuerySource": { - "description": "Dialogflow source setting. Supported feature: DIALOGFLOW_ASSIST.", + "description": "Dialogflow source setting. Supported feature: DIALOGFLOW_ASSIST, ENTITY_EXTRACTION.", "id": "GoogleCloudDialogflowV2beta1HumanAgentAssistantConfigSuggestionQueryConfigDialogflowQuerySource", "properties": { "agent": { diff --git a/dialogflow/v2beta1/dialogflow-gen.go b/dialogflow/v2beta1/dialogflow-gen.go index 42ef00b3091..0d82bb2b89a 100644 --- a/dialogflow/v2beta1/dialogflow-gen.go +++ b/dialogflow/v2beta1/dialogflow-gen.go @@ -14892,7 +14892,7 @@ type GoogleCloudDialogflowV2beta1HumanAgentAssistantConfigSuggestionFeatureConfi // EnableEventBasedSuggestion: Automatically iterates all participants // and tries to compile suggestions. Supported features: - // ARTICLE_SUGGESTION, FAQ, DIALOGFLOW_ASSIST. + // ARTICLE_SUGGESTION, FAQ, DIALOGFLOW_ASSIST, ENTITY_EXTRACTION. EnableEventBasedSuggestion bool `json:"enableEventBasedSuggestion,omitempty"` // QueryConfig: Configs of query. @@ -14955,7 +14955,7 @@ type GoogleCloudDialogflowV2beta1HumanAgentAssistantConfigSuggestionQueryConfig ContextFilterSettings *GoogleCloudDialogflowV2beta1HumanAgentAssistantConfigSuggestionQueryConfigContextFilterSettings `json:"contextFilterSettings,omitempty"` // DialogflowQuerySource: Query from Dialogflow agent. It is used by - // DIALOGFLOW_ASSIST. + // DIALOGFLOW_ASSIST, ENTITY_EXTRACTION. DialogflowQuerySource *GoogleCloudDialogflowV2beta1HumanAgentAssistantConfigSuggestionQueryConfigDialogflowQuerySource `json:"dialogflowQuerySource,omitempty"` // DocumentQuerySource: Query from knowledge base document. It is used @@ -15051,7 +15051,7 @@ func (s *GoogleCloudDialogflowV2beta1HumanAgentAssistantConfigSuggestionQueryCon // GoogleCloudDialogflowV2beta1HumanAgentAssistantConfigSuggestionQueryCo // nfigDialogflowQuerySource: Dialogflow source setting. Supported -// feature: DIALOGFLOW_ASSIST. +// feature: DIALOGFLOW_ASSIST, ENTITY_EXTRACTION. type GoogleCloudDialogflowV2beta1HumanAgentAssistantConfigSuggestionQueryConfigDialogflowQuerySource struct { // Agent: Required. The name of a dialogflow virtual agent used for end // user side intent detection and suggestion. Format: diff --git a/dialogflow/v3/dialogflow-api.json b/dialogflow/v3/dialogflow-api.json index 2b1b77e4a69..a60a9630322 100644 --- a/dialogflow/v3/dialogflow-api.json +++ b/dialogflow/v3/dialogflow-api.json @@ -3253,7 +3253,7 @@ ] }, "list": { - "description": "Fetches a list of results for a given test case.", + "description": "Fetches the list of run results for the given test case. A maximum of 100 results are kept for each test case.", "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/testCases/{testCasesId}/results", "httpMethod": "GET", "id": "dialogflow.projects.locations.agents.testCases.results.list", @@ -3820,7 +3820,7 @@ } } }, - "revision": "20230621", + "revision": "20230626", "rootUrl": "https://dialogflow.googleapis.com/", "schemas": { "GoogleCloudDialogflowCxV3AdvancedSettings": { diff --git a/dialogflow/v3/dialogflow-gen.go b/dialogflow/v3/dialogflow-gen.go index 62eec59cc22..be0a76c75e3 100644 --- a/dialogflow/v3/dialogflow-gen.go +++ b/dialogflow/v3/dialogflow-gen.go @@ -35815,7 +35815,8 @@ type ProjectsLocationsAgentsTestCasesResultsListCall struct { header_ http.Header } -// List: Fetches a list of results for a given test case. +// List: Fetches the list of run results for the given test case. A +// maximum of 100 results are kept for each test case. // // - parent: The test case to list results for. Format: // `projects//locations//agents// testCases/`. Specify a `-` as a @@ -35961,7 +35962,7 @@ func (c *ProjectsLocationsAgentsTestCasesResultsListCall) Do(opts ...googleapi.C } return ret, nil // { - // "description": "Fetches a list of results for a given test case.", + // "description": "Fetches the list of run results for the given test case. A maximum of 100 results are kept for each test case.", // "flatPath": "v3/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/testCases/{testCasesId}/results", // "httpMethod": "GET", // "id": "dialogflow.projects.locations.agents.testCases.results.list", diff --git a/dialogflow/v3beta1/dialogflow-api.json b/dialogflow/v3beta1/dialogflow-api.json index 85fd5dc1ee8..b9cd210bba5 100644 --- a/dialogflow/v3beta1/dialogflow-api.json +++ b/dialogflow/v3beta1/dialogflow-api.json @@ -3253,7 +3253,7 @@ ] }, "list": { - "description": "Fetches a list of results for a given test case.", + "description": "Fetches the list of run results for the given test case. A maximum of 100 results are kept for each test case.", "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/testCases/{testCasesId}/results", "httpMethod": "GET", "id": "dialogflow.projects.locations.agents.testCases.results.list", @@ -3820,7 +3820,7 @@ } } }, - "revision": "20230621", + "revision": "20230626", "rootUrl": "https://dialogflow.googleapis.com/", "schemas": { "GoogleCloudDialogflowCxV3AudioInput": { diff --git a/dialogflow/v3beta1/dialogflow-gen.go b/dialogflow/v3beta1/dialogflow-gen.go index 0065c949ddf..7cd3e62b0ae 100644 --- a/dialogflow/v3beta1/dialogflow-gen.go +++ b/dialogflow/v3beta1/dialogflow-gen.go @@ -35853,7 +35853,8 @@ type ProjectsLocationsAgentsTestCasesResultsListCall struct { header_ http.Header } -// List: Fetches a list of results for a given test case. +// List: Fetches the list of run results for the given test case. A +// maximum of 100 results are kept for each test case. // // - parent: The test case to list results for. Format: // `projects//locations//agents// testCases/`. Specify a `-` as a @@ -36000,7 +36001,7 @@ func (c *ProjectsLocationsAgentsTestCasesResultsListCall) Do(opts ...googleapi.C } return ret, nil // { - // "description": "Fetches a list of results for a given test case.", + // "description": "Fetches the list of run results for the given test case. A maximum of 100 results are kept for each test case.", // "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/testCases/{testCasesId}/results", // "httpMethod": "GET", // "id": "dialogflow.projects.locations.agents.testCases.results.list", diff --git a/discoveryengine/v1alpha/discoveryengine-api.json b/discoveryengine/v1alpha/discoveryengine-api.json index 8ab2db675ad..d128444dbbc 100644 --- a/discoveryengine/v1alpha/discoveryengine-api.json +++ b/discoveryengine/v1alpha/discoveryengine-api.json @@ -249,7 +249,7 @@ "type": "string" }, "parent": { - "description": "Required. The parent branch resource name, such as `projects/{project}/locations/{location}/collections/{collection}/dataStores/{data_store}/branches/{branch}`. Use `default_branch` as the branch ID, to list documents under the default branch. If the caller does not have permission to list Documentss under this branch, regardless of whether or not this branch exists, a `PERMISSION_DENIED` error is returned.", + "description": "Required. The parent branch resource name, such as `projects/{project}/locations/{location}/collections/{collection}/dataStores/{data_store}/branches/{branch}`. Use `default_branch` as the branch ID, to list documents under the default branch. If the caller does not have permission to list Documents under this branch, regardless of whether or not this branch exists, a `PERMISSION_DENIED` error is returned.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/collections/[^/]+/dataStores/[^/]+/branches/[^/]+$", "required": true, @@ -652,7 +652,7 @@ "userEvents": { "methods": { "collect": { - "description": "Writes a single user event from the browser. This uses a GET request to due to browser restriction of POST-ing to a 3rd party domain. This method is used only by the Discovery Engine API JavaScript pixel and Google Tag Manager. Users should not call this method directly.", + "description": "Writes a single user event from the browser. This uses a GET request to due to browser restriction of POST-ing to a third-party domain. This method is used only by the Discovery Engine API JavaScript pixel and Google Tag Manager. Users should not call this method directly.", "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/collections/{collectionsId}/dataStores/{dataStoresId}/userEvents:collect", "httpMethod": "GET", "id": "discoveryengine.projects.locations.collections.dataStores.userEvents.collect", @@ -674,7 +674,7 @@ "type": "string" }, "uri": { - "description": "The URL including cgi-parameters but excluding the hash fragment with a length limit of 5,000 characters. This is often more useful than the referer URL, because many browsers only send the domain for 3rd party requests.", + "description": "The URL including cgi-parameters but excluding the hash fragment with a length limit of 5,000 characters. This is often more useful than the referer URL, because many browsers only send the domain for third-party requests.", "location": "query", "type": "string" }, @@ -1064,7 +1064,7 @@ "type": "string" }, "parent": { - "description": "Required. The parent branch resource name, such as `projects/{project}/locations/{location}/collections/{collection}/dataStores/{data_store}/branches/{branch}`. Use `default_branch` as the branch ID, to list documents under the default branch. If the caller does not have permission to list Documentss under this branch, regardless of whether or not this branch exists, a `PERMISSION_DENIED` error is returned.", + "description": "Required. The parent branch resource name, such as `projects/{project}/locations/{location}/collections/{collection}/dataStores/{data_store}/branches/{branch}`. Use `default_branch` as the branch ID, to list documents under the default branch. If the caller does not have permission to list Documents under this branch, regardless of whether or not this branch exists, a `PERMISSION_DENIED` error is returned.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/dataStores/[^/]+/branches/[^/]+$", "required": true, @@ -1393,7 +1393,7 @@ "userEvents": { "methods": { "collect": { - "description": "Writes a single user event from the browser. This uses a GET request to due to browser restriction of POST-ing to a 3rd party domain. This method is used only by the Discovery Engine API JavaScript pixel and Google Tag Manager. Users should not call this method directly.", + "description": "Writes a single user event from the browser. This uses a GET request to due to browser restriction of POST-ing to a third-party domain. This method is used only by the Discovery Engine API JavaScript pixel and Google Tag Manager. Users should not call this method directly.", "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/dataStores/{dataStoresId}/userEvents:collect", "httpMethod": "GET", "id": "discoveryengine.projects.locations.dataStores.userEvents.collect", @@ -1415,7 +1415,7 @@ "type": "string" }, "uri": { - "description": "The URL including cgi-parameters but excluding the hash fragment with a length limit of 5,000 characters. This is often more useful than the referer URL, because many browsers only send the domain for 3rd party requests.", + "description": "The URL including cgi-parameters but excluding the hash fragment with a length limit of 5,000 characters. This is often more useful than the referer URL, because many browsers only send the domain for third-party requests.", "location": "query", "type": "string" }, @@ -1666,7 +1666,7 @@ } } }, - "revision": "20230620", + "revision": "20230623", "rootUrl": "https://discoveryengine.googleapis.com/", "schemas": { "GoogleApiHttpBody": { @@ -1816,7 +1816,7 @@ "type": "object" }, "GoogleCloudDiscoveryengineV1ImportDocumentsMetadata": { - "description": "Metadata related to the progress of the ImportDocuments operation. This will be returned by the google.longrunning.Operation.metadata field.", + "description": "Metadata related to the progress of the ImportDocuments operation. This is returned by the google.longrunning.Operation.metadata field.", "id": "GoogleCloudDiscoveryengineV1ImportDocumentsMetadata", "properties": { "createTime": { @@ -1865,14 +1865,14 @@ "id": "GoogleCloudDiscoveryengineV1ImportErrorConfig", "properties": { "gcsPrefix": { - "description": "Cloud Storage prefix for import errors. This must be an empty, existing Cloud Storage directory. Import errors will be written to sharded files in this directory, one per line, as a JSON-encoded `google.rpc.Status` message.", + "description": "Cloud Storage prefix for import errors. This must be an empty, existing Cloud Storage directory. Import errors are written to sharded files in this directory, one per line, as a JSON-encoded `google.rpc.Status` message.", "type": "string" } }, "type": "object" }, "GoogleCloudDiscoveryengineV1ImportUserEventsMetadata": { - "description": "Metadata related to the progress of the Import operation. This will be returned by the google.longrunning.Operation.metadata field.", + "description": "Metadata related to the progress of the Import operation. This is returned by the google.longrunning.Operation.metadata field.", "id": "GoogleCloudDiscoveryengineV1ImportUserEventsMetadata", "properties": { "createTime": { @@ -2014,7 +2014,7 @@ "id": "GoogleCloudDiscoveryengineV1alphaBigQuerySource", "properties": { "dataSchema": { - "description": "The schema to use when parsing the data from the source. Supported values for user event imports: * `user_event` (default): One UserEvent per row. Supported values for document imports: * `document` (default): One Document format per row. Each document must have a valid Document.id and one of Document.json_data or Document.struct_data. * `custom`: One custom data per row in arbitrary format that conforms the defined Schema of the data store. This can only be used by the GENERIC Data Store vertical.", + "description": "The schema to use when parsing the data from the source. Supported values for user event imports: * `user_event` (default): One UserEvent per row. Supported values for document imports: * `document` (default): One Document format per row. Each document must have a valid Document.id and one of Document.json_data or Document.struct_data. * `custom`: One custom data per row in arbitrary format that conforms to the defined Schema of the data store. This can only be used by the GENERIC Data Store vertical.", "type": "string" }, "datasetId": { @@ -2045,12 +2045,12 @@ "id": "GoogleCloudDiscoveryengineV1alphaCompletionInfo", "properties": { "selectedPosition": { - "description": "End user selected CompleteQueryResponse.CompletionResult.suggestion position, starting from 0.", + "description": "End user selected CompleteQueryResponse.QuerySuggestion.suggestion position, starting from 0.", "format": "int32", "type": "integer" }, "selectedSuggestion": { - "description": "End user selected CompleteQueryResponse.CompletionResult.suggestion.", + "description": "End user selected CompleteQueryResponse.QuerySuggestion.suggestion.", "type": "string" } }, @@ -2087,7 +2087,7 @@ "type": "string" }, "jsonData": { - "description": "The JSON string representation of the document. It should conform to the registered Schema.schema or an `INVALID_ARGUMENT` error is thrown.", + "description": "The JSON string representation of the document. It should conform to the registered Schema or an `INVALID_ARGUMENT` error is thrown.", "type": "string" }, "name": { @@ -2107,7 +2107,7 @@ "description": "Properties of the object.", "type": "any" }, - "description": "The structured JSON data for the document. It should conform to the registered Schema.schema or an `INVALID_ARGUMENT` error is thrown.", + "description": "The structured JSON data for the document. It should conform to the registered Schema or an `INVALID_ARGUMENT` error is thrown.", "type": "object" } }, @@ -2138,7 +2138,7 @@ "type": "integer" }, "uri": { - "description": "The Document url - only allowed for DataStores with content_config PUBLIC_WEBSITE.", + "description": "The Document URI - only allowed for website data stores.", "type": "string" } }, @@ -2149,7 +2149,7 @@ "id": "GoogleCloudDiscoveryengineV1alphaGcsSource", "properties": { "dataSchema": { - "description": "The schema to use when parsing the data from the source. Supported values for document imports: * `document` (default): One JSON Document per line. Each document must have a valid Document.id. * `content`: Unstructured data (e.g. PDF, HTML). Each file matched by `input_uris` will become a document, with the ID set to the first 128 bits of SHA256(URI) encoded as a hex string. * `custom`: One custom data JSON per row in arbitrary format that conforms the defined Schema of the data store. This can only be used by the GENERIC Data Store vertical. * `csv`: A CSV file with header conforming the defined Schema of the data store. Each entry after the header will be imported as a Document. This can only be used by the GENERIC Data Store vertical. Supported values for user even imports: * `user_event` (default): One JSON UserEvent per line.", + "description": "The schema to use when parsing the data from the source. Supported values for document imports: * `document` (default): One JSON Document per line. Each document must have a valid Document.id. * `content`: Unstructured data (e.g. PDF, HTML). Each file matched by `input_uris` becomes a document, with the ID set to the first 128 bits of SHA256(URI) encoded as a hex string. * `custom`: One custom data JSON per row in arbitrary format that conforms to the defined Schema of the data store. This can only be used by Gen App Builder. * `csv`: A CSV file with header conforming to the defined Schema of the data store. Each entry after the header is imported as a Document. This can only be used by Gen App Builder. Supported values for user even imports: * `user_event` (default): One JSON UserEvent per line.", "type": "string" }, "inputUris": { @@ -2163,7 +2163,7 @@ "type": "object" }, "GoogleCloudDiscoveryengineV1alphaImportDocumentsMetadata": { - "description": "Metadata related to the progress of the ImportDocuments operation. This will be returned by the google.longrunning.Operation.metadata field.", + "description": "Metadata related to the progress of the ImportDocuments operation. This is returned by the google.longrunning.Operation.metadata field.", "id": "GoogleCloudDiscoveryengineV1alphaImportDocumentsMetadata", "properties": { "createTime": { @@ -2194,7 +2194,7 @@ "id": "GoogleCloudDiscoveryengineV1alphaImportDocumentsRequest", "properties": { "autoGenerateIds": { - "description": "Whether to automatically generate IDs for the documents if absent. If set to `true`, Document.ids are automatically generated based on the hash of the payload, where IDs may not be consistent during multiple imports. In which case ReconciliationMode.FULL is highly recommended to avoid duplicate contents. If unset or set to `false`, Document.ids have to be specified using id_field, otherwises, documents without IDs will fail to be imported. Only set this field when using GcsSource or BigQuerySource, and when GcsSource.data_schema or BigQuerySource.data_schema is `custom` or `csv`. Otherwise, an INVALID_ARGUMENT error is thrown.", + "description": "Whether to automatically generate IDs for the documents if absent. If set to `true`, Document.ids are automatically generated based on the hash of the payload, where IDs may not be consistent during multiple imports. In which case ReconciliationMode.FULL is highly recommended to avoid duplicate contents. If unset or set to `false`, Document.ids have to be specified using id_field, otherwise, documents without IDs fail to be imported. Only set this field when using GcsSource or BigQuerySource, and when GcsSource.data_schema or BigQuerySource.data_schema is `custom` or `csv`. Otherwise, an INVALID_ARGUMENT error is thrown.", "type": "boolean" }, "bigquerySource": { @@ -2210,7 +2210,7 @@ "description": "Cloud Storage location for the input content." }, "idField": { - "description": "The field in the Cloud Storage and BigQuery sources that indicates the unique IDs of the documents. For GcsSource it is the key of the JSON field. For instance, `my_id` for JSON `{\"my_id\": \"some_uuid\"}`. For BigQuerySource it is the column name of the BigQuery table where the unique ids are stored. The values of the JSON field or the BigQuery column will be used as the Document.ids. The JSON field or the BigQuery column must be of string type, and the values must be set as valid strings conform to [RFC-1034](https://tools.ietf.org/html/rfc1034) with 1-63 characters. Otherwise, documents without valid IDs will fail to be imported. Only set this field when using GcsSource or BigQuerySource, and when GcsSource.data_schema or BigQuerySource.data_schema is `custom`. And only set this field when auto_generate_ids is unset or set as `false`. Otherwise, an INVALID_ARGUMENT error is thrown. If it is unset, a default value `_id` is used when importing from the allowed data sources.", + "description": "The field in the Cloud Storage and BigQuery sources that indicates the unique IDs of the documents. For GcsSource it is the key of the JSON field. For instance, `my_id` for JSON `{\"my_id\": \"some_uuid\"}`. For BigQuerySource it is the column name of the BigQuery table where the unique ids are stored. The values of the JSON field or the BigQuery column are used as the Document.ids. The JSON field or the BigQuery column must be of string type, and the values must be set as valid strings conform to [RFC-1034](https://tools.ietf.org/html/rfc1034) with 1-63 characters. Otherwise, documents without valid IDs fail to be imported. Only set this field when using GcsSource or BigQuerySource, and when GcsSource.data_schema or BigQuerySource.data_schema is `custom`. And only set this field when auto_generate_ids is unset or set as `false`. Otherwise, an INVALID_ARGUMENT error is thrown. If it is unset, a default value `_id` is used when importing from the allowed data sources.", "type": "string" }, "inlineSource": { @@ -2271,14 +2271,14 @@ "id": "GoogleCloudDiscoveryengineV1alphaImportErrorConfig", "properties": { "gcsPrefix": { - "description": "Cloud Storage prefix for import errors. This must be an empty, existing Cloud Storage directory. Import errors will be written to sharded files in this directory, one per line, as a JSON-encoded `google.rpc.Status` message.", + "description": "Cloud Storage prefix for import errors. This must be an empty, existing Cloud Storage directory. Import errors are written to sharded files in this directory, one per line, as a JSON-encoded `google.rpc.Status` message.", "type": "string" } }, "type": "object" }, "GoogleCloudDiscoveryengineV1alphaImportUserEventsMetadata": { - "description": "Metadata related to the progress of the Import operation. This will be returned by the google.longrunning.Operation.metadata field.", + "description": "Metadata related to the progress of the Import operation. This is returned by the google.longrunning.Operation.metadata field.", "id": "GoogleCloudDiscoveryengineV1alphaImportUserEventsMetadata", "properties": { "createTime": { @@ -2409,11 +2409,11 @@ "id": "GoogleCloudDiscoveryengineV1alphaPageInfo", "properties": { "pageCategory": { - "description": "The most specific category associated with a category page. To represent full path of category, use '\u003e' sign to separate different hierarchies. If '\u003e' is part of the category name, please replace it with other character(s). Category pages include special pages such as sales or promotions. For instance, a special sale page may have the category hierarchy: \"pageCategory\" : \"Sales \u003e 2017 Black Friday Deals\". Required for `view-category-page` events. Other event types should not set this field. Otherwise, an INVALID_ARGUMENT error is returned.", + "description": "The most specific category associated with a category page. To represent full path of category, use '\u003e' sign to separate different hierarchies. If '\u003e' is part of the category name, please replace it with other character(s). Category pages include special pages such as sales or promotions. For instance, a special sale page may have the category hierarchy: `\"pageCategory\" : \"Sales \u003e 2017 Black Friday Deals\"`. Required for `view-category-page` events. Other event types should not set this field. Otherwise, an `INVALID_ARGUMENT` error is returned.", "type": "string" }, "pageviewId": { - "description": "A unique ID of a web page view. This should be kept the same for all user events triggered from the same pageview. For example, an item detail page view could trigger multiple events as the user is browsing the page. The `pageViewId` property should be kept the same for all these events so that they can be grouped together properly. When using the client side event reporting with JavaScript pixel and Google Tag Manager, this value is filled in automatically.", + "description": "A unique ID of a web page view. This should be kept the same for all user events triggered from the same pageview. For example, an item detail page view could trigger multiple events as the user is browsing the page. The `pageview_id` property should be kept the same for all these events so that they can be grouped together properly. When using the client side event reporting with JavaScript pixel and Google Tag Manager, this value is filled in automatically.", "type": "string" }, "referrerUri": { @@ -2684,16 +2684,16 @@ "id": "GoogleCloudDiscoveryengineV1alphaSearchInfo", "properties": { "offset": { - "description": "An integer that specifies the current offset for pagination (the 0-indexed starting location, amongst the products deemed by the API as relevant). See SearchRequest.offset for definition. If this field is negative, an INVALID_ARGUMENT is returned. This can only be set for `search` events. Other event types should not set this field. Otherwise, an INVALID_ARGUMENT error is returned.", + "description": "An integer that specifies the current offset for pagination (the 0-indexed starting location, amongst the products deemed by the API as relevant). See SearchRequest.offset for definition. If this field is negative, an `INVALID_ARGUMENT` is returned. This can only be set for `search` events. Other event types should not set this field. Otherwise, an `INVALID_ARGUMENT` error is returned.", "format": "int32", "type": "integer" }, "orderBy": { - "description": "The order in which products are returned, if applicable. See SearchRequest.order_by for definition and syntax. The value must be a UTF-8 encoded string with a length limit of 1,000 characters. Otherwise, an INVALID_ARGUMENT error is returned. This can only be set for `search` events. Other event types should not set this field. Otherwise, an INVALID_ARGUMENT error is returned.", + "description": "The order in which products are returned, if applicable. See SearchRequest.order_by for definition and syntax. The value must be a UTF-8 encoded string with a length limit of 1,000 characters. Otherwise, an `INVALID_ARGUMENT` error is returned. This can only be set for `search` events. Other event types should not set this field. Otherwise, an `INVALID_ARGUMENT` error is returned.", "type": "string" }, "searchQuery": { - "description": "The user's search query. See SearchRequest.query for definition. The value must be a UTF-8 encoded string with a length limit of 5,000 characters. Otherwise, an INVALID_ARGUMENT error is returned. At least one of search_query or PageInfo.page_category is required for `search` events. Other event types should not set this field. Otherwise, an INVALID_ARGUMENT error is returned.", + "description": "The user's search query. See SearchRequest.query for definition. The value must be a UTF-8 encoded string with a length limit of 5,000 characters. Otherwise, an `INVALID_ARGUMENT` error is returned. At least one of search_query or PageInfo.page_category is required for `search` events. Other event types should not set this field. Otherwise, an `INVALID_ARGUMENT` error is returned.", "type": "string" } }, @@ -2704,7 +2704,7 @@ "id": "GoogleCloudDiscoveryengineV1alphaTargetSite", "properties": { "exactMatch": { - "description": "Input only. If set to false, an uri_pattern will be generated to include all pages whose address contains the provided_uri_pattern. If set to true, an uri_pattern will be generated to try to be an exact match of the provided_uri_pattern or just the specific page if the provided_uri_pattern is a specific one. provided_uri_pattern will always be normalized to generate the uri pattern to be used by the search engine.", + "description": "Input only. If set to false, a uri_pattern is generated to include all pages whose address contains the provided_uri_pattern. If set to true, an uri_pattern is generated to try to be an exact match of the provided_uri_pattern or just the specific page if the provided_uri_pattern is a specific one. provided_uri_pattern is always normalized to generate the URI pattern to be used by the search engine.", "type": "boolean" }, "generatedUriPattern": { @@ -2718,7 +2718,7 @@ "type": "string" }, "providedUriPattern": { - "description": "Required. Input only. The user provided uri pattern from which the `generated_uri_pattern` is generated.", + "description": "Required. Input only. The user provided URI pattern from which the `generated_uri_pattern` is generated.", "type": "string" }, "type": { @@ -2787,16 +2787,16 @@ "additionalProperties": { "$ref": "GoogleCloudDiscoveryengineV1alphaCustomAttribute" }, - "description": "Extra user event features to include in the recommendation model. These attributes must NOT contain data that needs to be parsed or processed further, e.g. JSON or other encodings. If you provide custom attributes for ingested user events, also include them in the user events that you associate with prediction requests. Custom attribute formatting must be consistent between imported events and events provided with prediction requests. This lets the Discovery Engine API use those custom attributes when training models and serving predictions, which helps improve recommendation quality. This field needs to pass all below criteria, otherwise an `INVALID_ARGUMENT` error is returned: * The key must be a UTF-8 encoded string with a length limit of 5,000 characters. * For text attributes, at most 400 values are allowed. Empty values are not allowed. Each value must be a UTF-8 encoded string with a length limit of 256 characters. * For number attributes, at most 400 values are allowed. For product recommendations, an example of extra user information is ` traffic_channel`, which is how a user arrives at the site. Users can arrive at the site by coming to the site directly, coming through Google search, or in other ways.", + "description": "Extra user event features to include in the recommendation model. These attributes must NOT contain data that needs to be parsed or processed further, e.g. JSON or other encodings. If you provide custom attributes for ingested user events, also include them in the user events that you associate with prediction requests. Custom attribute formatting must be consistent between imported events and events provided with prediction requests. This lets the Discovery Engine API use those custom attributes when training models and serving predictions, which helps improve recommendation quality. This field needs to pass all below criteria, otherwise an `INVALID_ARGUMENT` error is returned: * The key must be a UTF-8 encoded string with a length limit of 5,000 characters. * For text attributes, at most 400 values are allowed. Empty values are not allowed. Each value must be a UTF-8 encoded string with a length limit of 256 characters. * For number attributes, at most 400 values are allowed. For product recommendations, an example of extra user information is `traffic_channel`, which is how a user arrives at the site. Users can arrive at the site by coming to the site directly, coming through Google search, or in other ways.", "type": "object" }, "attributionToken": { - "description": "Token to attribute an API response to user action(s) to trigger the event. Highly recommended for user events that are the result of RecommendationService.Recommend. This field enables accurate attribution of recommendation model performance. The value must be one of: * PredictResponse.attribution_token for events that are the result of RecommendationService.Recommend. * SearchResponse.attribution_token for events that are the result of SearchService.Search. * CompleteQueryResponse.attribution_token for events that are the result of CompletionService.CompleteQuery. This token enables us to accurately attribute page view or conversion completion back to the event and the particular predict response containing this clicked/purchased product. If user clicks on product K in the recommendation results, pass PredictResponse.attribution_token as a URL parameter to product K's page. When recording events on product K's page, log the PredictResponse.attribution_token to this field.", + "description": "Token to attribute an API response to user action(s) to trigger the event. Highly recommended for user events that are the result of RecommendationService.Recommend. This field enables accurate attribution of recommendation model performance. The value must be one of: * RecommendResponse.attribution_token for events that are the result of RecommendationService.Recommend. * SearchResponse.attribution_token for events that are the result of SearchService.Search. This token enables us to accurately attribute page view or conversion completion back to the event and the particular predict response containing this clicked/purchased product. If user clicks on product K in the recommendation results, pass RecommendResponse.attribution_token as a URL parameter to product K's page. When recording events on product K's page, log the RecommendResponse.attribution_token to this field.", "type": "string" }, "completionInfo": { "$ref": "GoogleCloudDiscoveryengineV1alphaCompletionInfo", - "description": "CompleteQuery API details related to the event. This field should be set for `search` event when autocomplete function is enabled and the user clicks a suggestion for search." + "description": "CompletionService.CompleteQuery details related to the event. This field should be set for `search` event when autocomplete function is enabled and the user clicks a suggestion for search." }, "directUserRequest": { "description": "Should set to true if the request is made directly from the end user, in which case the UserEvent.user_info.user_agent can be populated from the HTTP request. This flag should be set only if the API request is made directly from the end user such as a mobile app (and not if a gateway or a server is processing and pushing the user events). This should not be set when using the JavaScript tag in UserEventService.CollectUserEvent.", @@ -2819,7 +2819,7 @@ "type": "string" }, "filter": { - "description": "The filter syntax consists of an expression language for constructing a predicate from one or more fields of the documents being filtered. One example is for `search` events, the associated SearchRequest may contain a filter expression in SearchRequest.filter conforming to https://google.aip.dev/160#filtering. Similarly, for `view-item-list` events that are generated from a RecommendationService.RecommendRequest, this field may be populated directly from RecommendationService.RecommendRequest.filter conforming to https://google.aip.dev/160#filtering. The value must be a UTF-8 encoded string with a length limit of 1,000 characters. Otherwise, an INVALID_ARGUMENT error is returned.", + "description": "The filter syntax consists of an expression language for constructing a predicate from one or more fields of the documents being filtered. One example is for `search` events, the associated SearchRequest may contain a filter expression in SearchRequest.filter conforming to https://google.aip.dev/160#filtering. Similarly, for `view-item-list` events that are generated from a RecommendationService.RecommendRequest, this field may be populated directly from RecommendationService.RecommendRequest.filter conforming to https://google.aip.dev/160#filtering. The value must be a UTF-8 encoded string with a length limit of 1,000 characters. Otherwise, an `INVALID_ARGUMENT` error is returned.", "type": "string" }, "mediaInfo": { @@ -2843,7 +2843,7 @@ }, "searchInfo": { "$ref": "GoogleCloudDiscoveryengineV1alphaSearchInfo", - "description": "Search API details related to the event. This field should be set for `search` event." + "description": "SearchService.Search details related to the event. This field should be set for `search` event." }, "sessionId": { "description": "A unique identifier for tracking a visitor session with a length limit of 128 bytes. A session is an aggregation of an end user behavior in a time span. A general guideline to populate the session_id: 1. If user has no activity for 30 min, a new session_id should be assigned. 2. The session_id should be unique across users, suggest use uuid or add UserEvent.user_pseudo_id as prefix.", @@ -2865,7 +2865,7 @@ "description": "Information about the end user." }, "userPseudoId": { - "description": "Required. A unique identifier for tracking visitors. For example, this could be implemented with an HTTP cookie, which should be able to uniquely identify a visitor on a single device. This unique identifier should not change if the visitor log in/out of the website. Do not set the field to the same fixed ID for different users. This mixes the event history of those users together, which results in degraded model quality. The field must be a UTF-8 encoded string with a length limit of 128 characters. Otherwise, an INVALID_ARGUMENT error is returned. The field should not contain PII or user-data. We recommend to use Google Analytics [Client ID](https://developers.google.com/analytics/devguides/collection/analyticsjs/field-reference#clientId) for this field.", + "description": "Required. A unique identifier for tracking visitors. For example, this could be implemented with an HTTP cookie, which should be able to uniquely identify a visitor on a single device. This unique identifier should not change if the visitor log in/out of the website. Do not set the field to the same fixed ID for different users. This mixes the event history of those users together, which results in degraded model quality. The field must be a UTF-8 encoded string with a length limit of 128 characters. Otherwise, an `INVALID_ARGUMENT` error is returned. The field should not contain PII or user-data. We recommend to use Google Analytics [Client ID](https://developers.google.com/analytics/devguides/collection/analyticsjs/field-reference#clientId) for this field.", "type": "string" } }, @@ -2876,7 +2876,7 @@ "id": "GoogleCloudDiscoveryengineV1alphaUserInfo", "properties": { "userAgent": { - "description": "User agent as included in the HTTP header. Required for getting SearchResponse.sponsored_results. The field must be a UTF-8 encoded string with a length limit of 1,000 characters. Otherwise, an `INVALID_ARGUMENT` error is returned. This should not be set when using the client side event reporting with GTM or JavaScript tag in UserEventService.CollectUserEvent or if UserEvent.direct_user_request is set.", + "description": "User agent as included in the HTTP header. The field must be a UTF-8 encoded string with a length limit of 1,000 characters. Otherwise, an `INVALID_ARGUMENT` error is returned. This should not be set when using the client side event reporting with GTM or JavaScript tag in UserEventService.CollectUserEvent or if UserEvent.direct_user_request is set.", "type": "string" }, "userId": { @@ -2887,7 +2887,7 @@ "type": "object" }, "GoogleCloudDiscoveryengineV1betaImportDocumentsMetadata": { - "description": "Metadata related to the progress of the ImportDocuments operation. This will be returned by the google.longrunning.Operation.metadata field.", + "description": "Metadata related to the progress of the ImportDocuments operation. This is returned by the google.longrunning.Operation.metadata field.", "id": "GoogleCloudDiscoveryengineV1betaImportDocumentsMetadata", "properties": { "createTime": { @@ -2936,14 +2936,14 @@ "id": "GoogleCloudDiscoveryengineV1betaImportErrorConfig", "properties": { "gcsPrefix": { - "description": "Cloud Storage prefix for import errors. This must be an empty, existing Cloud Storage directory. Import errors will be written to sharded files in this directory, one per line, as a JSON-encoded `google.rpc.Status` message.", + "description": "Cloud Storage prefix for import errors. This must be an empty, existing Cloud Storage directory. Import errors are written to sharded files in this directory, one per line, as a JSON-encoded `google.rpc.Status` message.", "type": "string" } }, "type": "object" }, "GoogleCloudDiscoveryengineV1betaImportUserEventsMetadata": { - "description": "Metadata related to the progress of the Import operation. This will be returned by the google.longrunning.Operation.metadata field.", + "description": "Metadata related to the progress of the Import operation. This is returned by the google.longrunning.Operation.metadata field.", "id": "GoogleCloudDiscoveryengineV1betaImportUserEventsMetadata", "properties": { "createTime": { diff --git a/discoveryengine/v1alpha/discoveryengine-gen.go b/discoveryengine/v1alpha/discoveryengine-gen.go index 21eee7cf7fb..fa65bbc05fa 100644 --- a/discoveryengine/v1alpha/discoveryengine-gen.go +++ b/discoveryengine/v1alpha/discoveryengine-gen.go @@ -770,8 +770,8 @@ func (s *GoogleCloudDiscoveryengineLoggingSourceLocation) MarshalJSON() ([]byte, } // GoogleCloudDiscoveryengineV1ImportDocumentsMetadata: Metadata related -// to the progress of the ImportDocuments operation. This will be -// returned by the google.longrunning.Operation.metadata field. +// to the progress of the ImportDocuments operation. This is returned by +// the google.longrunning.Operation.metadata field. type GoogleCloudDiscoveryengineV1ImportDocumentsMetadata struct { // CreateTime: Operation create time. CreateTime string `json:"createTime,omitempty"` @@ -851,9 +851,9 @@ func (s *GoogleCloudDiscoveryengineV1ImportDocumentsResponse) MarshalJSON() ([]b // destination for Import related errors. type GoogleCloudDiscoveryengineV1ImportErrorConfig struct { // GcsPrefix: Cloud Storage prefix for import errors. This must be an - // empty, existing Cloud Storage directory. Import errors will be - // written to sharded files in this directory, one per line, as a - // JSON-encoded `google.rpc.Status` message. + // empty, existing Cloud Storage directory. Import errors are written to + // sharded files in this directory, one per line, as a JSON-encoded + // `google.rpc.Status` message. GcsPrefix string `json:"gcsPrefix,omitempty"` // ForceSendFields is a list of field names (e.g. "GcsPrefix") to @@ -880,8 +880,8 @@ func (s *GoogleCloudDiscoveryengineV1ImportErrorConfig) MarshalJSON() ([]byte, e } // GoogleCloudDiscoveryengineV1ImportUserEventsMetadata: Metadata -// related to the progress of the Import operation. This will be -// returned by the google.longrunning.Operation.metadata field. +// related to the progress of the Import operation. This is returned by +// the google.longrunning.Operation.metadata field. type GoogleCloudDiscoveryengineV1ImportUserEventsMetadata struct { // CreateTime: Operation create time. CreateTime string `json:"createTime,omitempty"` @@ -1121,8 +1121,8 @@ type GoogleCloudDiscoveryengineV1alphaBigQuerySource struct { // `document` (default): One Document format per row. Each document must // have a valid Document.id and one of Document.json_data or // Document.struct_data. * `custom`: One custom data per row in - // arbitrary format that conforms the defined Schema of the data store. - // This can only be used by the GENERIC Data Store vertical. + // arbitrary format that conforms to the defined Schema of the data + // store. This can only be used by the GENERIC Data Store vertical. DataSchema string `json:"dataSchema,omitempty"` // DatasetId: Required. The BigQuery data set to copy the data from with @@ -1176,12 +1176,12 @@ func (s *GoogleCloudDiscoveryengineV1alphaBigQuerySource) MarshalJSON() ([]byte, // completion info. type GoogleCloudDiscoveryengineV1alphaCompletionInfo struct { // SelectedPosition: End user selected - // CompleteQueryResponse.CompletionResult.suggestion position, starting + // CompleteQueryResponse.QuerySuggestion.suggestion position, starting // from 0. SelectedPosition int64 `json:"selectedPosition,omitempty"` // SelectedSuggestion: End user selected - // CompleteQueryResponse.CompletionResult.suggestion. + // CompleteQueryResponse.QuerySuggestion.suggestion. SelectedSuggestion string `json:"selectedSuggestion,omitempty"` // ForceSendFields is a list of field names (e.g. "SelectedPosition") to @@ -1273,8 +1273,8 @@ type GoogleCloudDiscoveryengineV1alphaDocument struct { Id string `json:"id,omitempty"` // JsonData: The JSON string representation of the document. It should - // conform to the registered Schema.schema or an `INVALID_ARGUMENT` - // error is thrown. + // conform to the registered Schema or an `INVALID_ARGUMENT` error is + // thrown. JsonData string `json:"jsonData,omitempty"` // Name: Immutable. The full resource name of the document. Format: @@ -1295,8 +1295,8 @@ type GoogleCloudDiscoveryengineV1alphaDocument struct { SchemaId string `json:"schemaId,omitempty"` // StructData: The structured JSON data for the document. It should - // conform to the registered Schema.schema or an `INVALID_ARGUMENT` - // error is thrown. + // conform to the registered Schema or an `INVALID_ARGUMENT` error is + // thrown. StructData googleapi.RawMessage `json:"structData,omitempty"` // ServerResponse contains the HTTP response code and headers from the @@ -1348,8 +1348,7 @@ type GoogleCloudDiscoveryengineV1alphaDocumentInfo struct { // events of the following event types: * `add-to-cart` * `purchase` Quantity int64 `json:"quantity,omitempty"` - // Uri: The Document url - only allowed for DataStores with - // content_config PUBLIC_WEBSITE. + // Uri: The Document URI - only allowed for website data stores. Uri string `json:"uri,omitempty"` // ForceSendFields is a list of field names (e.g. "Id") to @@ -1382,15 +1381,14 @@ type GoogleCloudDiscoveryengineV1alphaGcsSource struct { // Supported values for document imports: * `document` (default): One // JSON Document per line. Each document must have a valid Document.id. // * `content`: Unstructured data (e.g. PDF, HTML). Each file matched by - // `input_uris` will become a document, with the ID set to the first 128 + // `input_uris` becomes a document, with the ID set to the first 128 // bits of SHA256(URI) encoded as a hex string. * `custom`: One custom - // data JSON per row in arbitrary format that conforms the defined - // Schema of the data store. This can only be used by the GENERIC Data - // Store vertical. * `csv`: A CSV file with header conforming the - // defined Schema of the data store. Each entry after the header will be - // imported as a Document. This can only be used by the GENERIC Data - // Store vertical. Supported values for user even imports: * - // `user_event` (default): One JSON UserEvent per line. + // data JSON per row in arbitrary format that conforms to the defined + // Schema of the data store. This can only be used by Gen App Builder. * + // `csv`: A CSV file with header conforming to the defined Schema of the + // data store. Each entry after the header is imported as a Document. + // This can only be used by Gen App Builder. Supported values for user + // even imports: * `user_event` (default): One JSON UserEvent per line. DataSchema string `json:"dataSchema,omitempty"` // InputUris: Required. Cloud Storage URIs to input files. URI can be up @@ -1426,8 +1424,8 @@ func (s *GoogleCloudDiscoveryengineV1alphaGcsSource) MarshalJSON() ([]byte, erro } // GoogleCloudDiscoveryengineV1alphaImportDocumentsMetadata: Metadata -// related to the progress of the ImportDocuments operation. This will -// be returned by the google.longrunning.Operation.metadata field. +// related to the progress of the ImportDocuments operation. This is +// returned by the google.longrunning.Operation.metadata field. type GoogleCloudDiscoveryengineV1alphaImportDocumentsMetadata struct { // CreateTime: Operation create time. CreateTime string `json:"createTime,omitempty"` @@ -1475,11 +1473,10 @@ type GoogleCloudDiscoveryengineV1alphaImportDocumentsRequest struct { // consistent during multiple imports. In which case // ReconciliationMode.FULL is highly recommended to avoid duplicate // contents. If unset or set to `false`, Document.ids have to be - // specified using id_field, otherwises, documents without IDs will fail - // to be imported. Only set this field when using GcsSource or - // BigQuerySource, and when GcsSource.data_schema or - // BigQuerySource.data_schema is `custom` or `csv`. Otherwise, an - // INVALID_ARGUMENT error is thrown. + // specified using id_field, otherwise, documents without IDs fail to be + // imported. Only set this field when using GcsSource or BigQuerySource, + // and when GcsSource.data_schema or BigQuerySource.data_schema is + // `custom` or `csv`. Otherwise, an INVALID_ARGUMENT error is thrown. AutoGenerateIds bool `json:"autoGenerateIds,omitempty"` // BigquerySource: BigQuery input source. @@ -1497,12 +1494,12 @@ type GoogleCloudDiscoveryengineV1alphaImportDocumentsRequest struct { // key of the JSON field. For instance, `my_id` for JSON `{"my_id": // "some_uuid"}`. For BigQuerySource it is the column name of the // BigQuery table where the unique ids are stored. The values of the - // JSON field or the BigQuery column will be used as the Document.ids. - // The JSON field or the BigQuery column must be of string type, and the + // JSON field or the BigQuery column are used as the Document.ids. The + // JSON field or the BigQuery column must be of string type, and the // values must be set as valid strings conform to RFC-1034 // (https://tools.ietf.org/html/rfc1034) with 1-63 characters. - // Otherwise, documents without valid IDs will fail to be imported. Only - // set this field when using GcsSource or BigQuerySource, and when + // Otherwise, documents without valid IDs fail to be imported. Only set + // this field when using GcsSource or BigQuerySource, and when // GcsSource.data_schema or BigQuerySource.data_schema is `custom`. And // only set this field when auto_generate_ids is unset or set as // `false`. Otherwise, an INVALID_ARGUMENT error is thrown. If it is @@ -1621,9 +1618,9 @@ func (s *GoogleCloudDiscoveryengineV1alphaImportDocumentsResponse) MarshalJSON() // destination for Import related errors. type GoogleCloudDiscoveryengineV1alphaImportErrorConfig struct { // GcsPrefix: Cloud Storage prefix for import errors. This must be an - // empty, existing Cloud Storage directory. Import errors will be - // written to sharded files in this directory, one per line, as a - // JSON-encoded `google.rpc.Status` message. + // empty, existing Cloud Storage directory. Import errors are written to + // sharded files in this directory, one per line, as a JSON-encoded + // `google.rpc.Status` message. GcsPrefix string `json:"gcsPrefix,omitempty"` // ForceSendFields is a list of field names (e.g. "GcsPrefix") to @@ -1650,8 +1647,8 @@ func (s *GoogleCloudDiscoveryengineV1alphaImportErrorConfig) MarshalJSON() ([]by } // GoogleCloudDiscoveryengineV1alphaImportUserEventsMetadata: Metadata -// related to the progress of the Import operation. This will be -// returned by the google.longrunning.Operation.metadata field. +// related to the progress of the Import operation. This is returned by +// the google.longrunning.Operation.metadata field. type GoogleCloudDiscoveryengineV1alphaImportUserEventsMetadata struct { // CreateTime: Operation create time. CreateTime string `json:"createTime,omitempty"` @@ -1905,16 +1902,16 @@ type GoogleCloudDiscoveryengineV1alphaPageInfo struct { // different hierarchies. If '>' is part of the category name, please // replace it with other character(s). Category pages include special // pages such as sales or promotions. For instance, a special sale page - // may have the category hierarchy: "pageCategory" : "Sales > 2017 Black - // Friday Deals". Required for `view-category-page` events. Other event - // types should not set this field. Otherwise, an INVALID_ARGUMENT error - // is returned. + // may have the category hierarchy: "pageCategory" : "Sales > 2017 + // Black Friday Deals". Required for `view-category-page` events. Other + // event types should not set this field. Otherwise, an + // `INVALID_ARGUMENT` error is returned. PageCategory string `json:"pageCategory,omitempty"` // PageviewId: A unique ID of a web page view. This should be kept the // same for all user events triggered from the same pageview. For // example, an item detail page view could trigger multiple events as - // the user is browsing the page. The `pageViewId` property should be + // the user is browsing the page. The `pageview_id` property should be // kept the same for all these events so that they can be grouped // together properly. When using the client side event reporting with // JavaScript pixel and Google Tag Manager, this value is filled in @@ -2457,25 +2454,25 @@ type GoogleCloudDiscoveryengineV1alphaSearchInfo struct { // Offset: An integer that specifies the current offset for pagination // (the 0-indexed starting location, amongst the products deemed by the // API as relevant). See SearchRequest.offset for definition. If this - // field is negative, an INVALID_ARGUMENT is returned. This can only be - // set for `search` events. Other event types should not set this field. - // Otherwise, an INVALID_ARGUMENT error is returned. + // field is negative, an `INVALID_ARGUMENT` is returned. This can only + // be set for `search` events. Other event types should not set this + // field. Otherwise, an `INVALID_ARGUMENT` error is returned. Offset int64 `json:"offset,omitempty"` // OrderBy: The order in which products are returned, if applicable. See // SearchRequest.order_by for definition and syntax. The value must be a // UTF-8 encoded string with a length limit of 1,000 characters. - // Otherwise, an INVALID_ARGUMENT error is returned. This can only be + // Otherwise, an `INVALID_ARGUMENT` error is returned. This can only be // set for `search` events. Other event types should not set this field. - // Otherwise, an INVALID_ARGUMENT error is returned. + // Otherwise, an `INVALID_ARGUMENT` error is returned. OrderBy string `json:"orderBy,omitempty"` // SearchQuery: The user's search query. See SearchRequest.query for // definition. The value must be a UTF-8 encoded string with a length - // limit of 5,000 characters. Otherwise, an INVALID_ARGUMENT error is + // limit of 5,000 characters. Otherwise, an `INVALID_ARGUMENT` error is // returned. At least one of search_query or PageInfo.page_category is // required for `search` events. Other event types should not set this - // field. Otherwise, an INVALID_ARGUMENT error is returned. + // field. Otherwise, an `INVALID_ARGUMENT` error is returned. SearchQuery string `json:"searchQuery,omitempty"` // ForceSendFields is a list of field names (e.g. "Offset") to @@ -2504,13 +2501,13 @@ func (s *GoogleCloudDiscoveryengineV1alphaSearchInfo) MarshalJSON() ([]byte, err // GoogleCloudDiscoveryengineV1alphaTargetSite: A target site for the // SiteSearchEngine. type GoogleCloudDiscoveryengineV1alphaTargetSite struct { - // ExactMatch: Input only. If set to false, an uri_pattern will be - // generated to include all pages whose address contains the - // provided_uri_pattern. If set to true, an uri_pattern will be - // generated to try to be an exact match of the provided_uri_pattern or - // just the specific page if the provided_uri_pattern is a specific one. - // provided_uri_pattern will always be normalized to generate the uri - // pattern to be used by the search engine. + // ExactMatch: Input only. If set to false, a uri_pattern is generated + // to include all pages whose address contains the provided_uri_pattern. + // If set to true, an uri_pattern is generated to try to be an exact + // match of the provided_uri_pattern or just the specific page if the + // provided_uri_pattern is a specific one. provided_uri_pattern is + // always normalized to generate the URI pattern to be used by the + // search engine. ExactMatch bool `json:"exactMatch,omitempty"` // GeneratedUriPattern: Output only. This is system-generated based on @@ -2524,7 +2521,7 @@ type GoogleCloudDiscoveryengineV1alphaTargetSite struct { // `target_site_id` is system-generated. Name string `json:"name,omitempty"` - // ProvidedUriPattern: Required. Input only. The user provided uri + // ProvidedUriPattern: Required. Input only. The user provided URI // pattern from which the `generated_uri_pattern` is generated. ProvidedUriPattern string `json:"providedUriPattern,omitempty"` @@ -2661,7 +2658,7 @@ type GoogleCloudDiscoveryengineV1alphaUserEvent struct { // allowed. Each value must be a UTF-8 encoded string with a length // limit of 256 characters. * For number attributes, at most 400 values // are allowed. For product recommendations, an example of extra user - // information is ` traffic_channel`, which is how a user arrives at the + // information is `traffic_channel`, which is how a user arrives at the // site. Users can arrive at the site by coming to the site directly, // coming through Google search, or in other ways. Attributes map[string]GoogleCloudDiscoveryengineV1alphaCustomAttribute `json:"attributes,omitempty"` @@ -2670,23 +2667,22 @@ type GoogleCloudDiscoveryengineV1alphaUserEvent struct { // action(s) to trigger the event. Highly recommended for user events // that are the result of RecommendationService.Recommend. This field // enables accurate attribution of recommendation model performance. The - // value must be one of: * PredictResponse.attribution_token for events - // that are the result of RecommendationService.Recommend. * + // value must be one of: * RecommendResponse.attribution_token for + // events that are the result of RecommendationService.Recommend. * // SearchResponse.attribution_token for events that are the result of - // SearchService.Search. * CompleteQueryResponse.attribution_token for - // events that are the result of CompletionService.CompleteQuery. This - // token enables us to accurately attribute page view or conversion - // completion back to the event and the particular predict response - // containing this clicked/purchased product. If user clicks on product - // K in the recommendation results, pass - // PredictResponse.attribution_token as a URL parameter to product K's - // page. When recording events on product K's page, log the - // PredictResponse.attribution_token to this field. + // SearchService.Search. This token enables us to accurately attribute + // page view or conversion completion back to the event and the + // particular predict response containing this clicked/purchased + // product. If user clicks on product K in the recommendation results, + // pass RecommendResponse.attribution_token as a URL parameter to + // product K's page. When recording events on product K's page, log the + // RecommendResponse.attribution_token to this field. AttributionToken string `json:"attributionToken,omitempty"` - // CompletionInfo: CompleteQuery API details related to the event. This - // field should be set for `search` event when autocomplete function is - // enabled and the user clicks a suggestion for search. + // CompletionInfo: CompletionService.CompleteQuery details related to + // the event. This field should be set for `search` event when + // autocomplete function is enabled and the user clicks a suggestion for + // search. CompletionInfo *GoogleCloudDiscoveryengineV1alphaCompletionInfo `json:"completionInfo,omitempty"` // DirectUserRequest: Should set to true if the request is made directly @@ -2734,7 +2730,7 @@ type GoogleCloudDiscoveryengineV1alphaUserEvent struct { // directly from RecommendationService.RecommendRequest.filter // conforming to https://google.aip.dev/160#filtering. The value must be // a UTF-8 encoded string with a length limit of 1,000 characters. - // Otherwise, an INVALID_ARGUMENT error is returned. + // Otherwise, an `INVALID_ARGUMENT` error is returned. Filter string `json:"filter,omitempty"` // MediaInfo: Media-specific info. @@ -2751,8 +2747,8 @@ type GoogleCloudDiscoveryengineV1alphaUserEvent struct { // promotions. Currently, this field is restricted to at most one ID. PromotionIds []string `json:"promotionIds,omitempty"` - // SearchInfo: Search API details related to the event. This field - // should be set for `search` event. + // SearchInfo: SearchService.Search details related to the event. This + // field should be set for `search` event. SearchInfo *GoogleCloudDiscoveryengineV1alphaSearchInfo `json:"searchInfo,omitempty"` // SessionId: A unique identifier for tracking a visitor session with a @@ -2784,8 +2780,8 @@ type GoogleCloudDiscoveryengineV1alphaUserEvent struct { // users. This mixes the event history of those users together, which // results in degraded model quality. The field must be a UTF-8 encoded // string with a length limit of 128 characters. Otherwise, an - // INVALID_ARGUMENT error is returned. The field should not contain PII - // or user-data. We recommend to use Google Analytics Client ID + // `INVALID_ARGUMENT` error is returned. The field should not contain + // PII or user-data. We recommend to use Google Analytics Client ID // (https://developers.google.com/analytics/devguides/collection/analyticsjs/field-reference#clientId) // for this field. UserPseudoId string `json:"userPseudoId,omitempty"` @@ -2820,13 +2816,12 @@ func (s *GoogleCloudDiscoveryengineV1alphaUserEvent) MarshalJSON() ([]byte, erro // GoogleCloudDiscoveryengineV1alphaUserInfo: Information of an end // user. type GoogleCloudDiscoveryengineV1alphaUserInfo struct { - // UserAgent: User agent as included in the HTTP header. Required for - // getting SearchResponse.sponsored_results. The field must be a UTF-8 - // encoded string with a length limit of 1,000 characters. Otherwise, an - // `INVALID_ARGUMENT` error is returned. This should not be set when - // using the client side event reporting with GTM or JavaScript tag in - // UserEventService.CollectUserEvent or if UserEvent.direct_user_request - // is set. + // UserAgent: User agent as included in the HTTP header. The field must + // be a UTF-8 encoded string with a length limit of 1,000 characters. + // Otherwise, an `INVALID_ARGUMENT` error is returned. This should not + // be set when using the client side event reporting with GTM or + // JavaScript tag in UserEventService.CollectUserEvent or if + // UserEvent.direct_user_request is set. UserAgent string `json:"userAgent,omitempty"` // UserId: Highly recommended for logged-in users. Unique identifier for @@ -2862,8 +2857,8 @@ func (s *GoogleCloudDiscoveryengineV1alphaUserInfo) MarshalJSON() ([]byte, error } // GoogleCloudDiscoveryengineV1betaImportDocumentsMetadata: Metadata -// related to the progress of the ImportDocuments operation. This will -// be returned by the google.longrunning.Operation.metadata field. +// related to the progress of the ImportDocuments operation. This is +// returned by the google.longrunning.Operation.metadata field. type GoogleCloudDiscoveryengineV1betaImportDocumentsMetadata struct { // CreateTime: Operation create time. CreateTime string `json:"createTime,omitempty"` @@ -2943,9 +2938,9 @@ func (s *GoogleCloudDiscoveryengineV1betaImportDocumentsResponse) MarshalJSON() // destination for Import related errors. type GoogleCloudDiscoveryengineV1betaImportErrorConfig struct { // GcsPrefix: Cloud Storage prefix for import errors. This must be an - // empty, existing Cloud Storage directory. Import errors will be - // written to sharded files in this directory, one per line, as a - // JSON-encoded `google.rpc.Status` message. + // empty, existing Cloud Storage directory. Import errors are written to + // sharded files in this directory, one per line, as a JSON-encoded + // `google.rpc.Status` message. GcsPrefix string `json:"gcsPrefix,omitempty"` // ForceSendFields is a list of field names (e.g. "GcsPrefix") to @@ -2972,8 +2967,8 @@ func (s *GoogleCloudDiscoveryengineV1betaImportErrorConfig) MarshalJSON() ([]byt } // GoogleCloudDiscoveryengineV1betaImportUserEventsMetadata: Metadata -// related to the progress of the Import operation. This will be -// returned by the google.longrunning.Operation.metadata field. +// related to the progress of the Import operation. This is returned by +// the google.longrunning.Operation.metadata field. type GoogleCloudDiscoveryengineV1betaImportUserEventsMetadata struct { // CreateTime: Operation create time. CreateTime string `json:"createTime,omitempty"` @@ -3997,7 +3992,7 @@ type ProjectsLocationsCollectionsDataStoresBranchesDocumentsListCall struct { // `projects/{project}/locations/{location}/collections/{collection}/da // taStores/{data_store}/branches/{branch}`. Use `default_branch` as // the branch ID, to list documents under the default branch. If the -// caller does not have permission to list Documentss under this +// caller does not have permission to list Documents under this // branch, regardless of whether or not this branch exists, a // `PERMISSION_DENIED` error is returned. func (r *ProjectsLocationsCollectionsDataStoresBranchesDocumentsService) List(parent string) *ProjectsLocationsCollectionsDataStoresBranchesDocumentsListCall { @@ -4148,7 +4143,7 @@ func (c *ProjectsLocationsCollectionsDataStoresBranchesDocumentsListCall) Do(opt // "type": "string" // }, // "parent": { - // "description": "Required. The parent branch resource name, such as `projects/{project}/locations/{location}/collections/{collection}/dataStores/{data_store}/branches/{branch}`. Use `default_branch` as the branch ID, to list documents under the default branch. If the caller does not have permission to list Documentss under this branch, regardless of whether or not this branch exists, a `PERMISSION_DENIED` error is returned.", + // "description": "Required. The parent branch resource name, such as `projects/{project}/locations/{location}/collections/{collection}/dataStores/{data_store}/branches/{branch}`. Use `default_branch` as the branch ID, to list documents under the default branch. If the caller does not have permission to list Documents under this branch, regardless of whether or not this branch exists, a `PERMISSION_DENIED` error is returned.", // "location": "path", // "pattern": "^projects/[^/]+/locations/[^/]+/collections/[^/]+/dataStores/[^/]+/branches/[^/]+$", // "required": true, @@ -6077,7 +6072,7 @@ type ProjectsLocationsCollectionsDataStoresUserEventsCollectCall struct { } // Collect: Writes a single user event from the browser. This uses a GET -// request to due to browser restriction of POST-ing to a 3rd party +// request to due to browser restriction of POST-ing to a third-party // domain. This method is used only by the Discovery Engine API // JavaScript pixel and Google Tag Manager. Users should not call this // method directly. @@ -6102,7 +6097,7 @@ func (c *ProjectsLocationsCollectionsDataStoresUserEventsCollectCall) Ets(ets in // Uri sets the optional parameter "uri": The URL including // cgi-parameters but excluding the hash fragment with a length limit of // 5,000 characters. This is often more useful than the referer URL, -// because many browsers only send the domain for 3rd party requests. +// because many browsers only send the domain for third-party requests. func (c *ProjectsLocationsCollectionsDataStoresUserEventsCollectCall) Uri(uri string) *ProjectsLocationsCollectionsDataStoresUserEventsCollectCall { c.urlParams_.Set("uri", uri) return c @@ -6214,7 +6209,7 @@ func (c *ProjectsLocationsCollectionsDataStoresUserEventsCollectCall) Do(opts .. } return ret, nil // { - // "description": "Writes a single user event from the browser. This uses a GET request to due to browser restriction of POST-ing to a 3rd party domain. This method is used only by the Discovery Engine API JavaScript pixel and Google Tag Manager. Users should not call this method directly.", + // "description": "Writes a single user event from the browser. This uses a GET request to due to browser restriction of POST-ing to a third-party domain. This method is used only by the Discovery Engine API JavaScript pixel and Google Tag Manager. Users should not call this method directly.", // "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/collections/{collectionsId}/dataStores/{dataStoresId}/userEvents:collect", // "httpMethod": "GET", // "id": "discoveryengine.projects.locations.collections.dataStores.userEvents.collect", @@ -6236,7 +6231,7 @@ func (c *ProjectsLocationsCollectionsDataStoresUserEventsCollectCall) Do(opts .. // "type": "string" // }, // "uri": { - // "description": "The URL including cgi-parameters but excluding the hash fragment with a length limit of 5,000 characters. This is often more useful than the referer URL, because many browsers only send the domain for 3rd party requests.", + // "description": "The URL including cgi-parameters but excluding the hash fragment with a length limit of 5,000 characters. This is often more useful than the referer URL, because many browsers only send the domain for third-party requests.", // "location": "query", // "type": "string" // }, @@ -8032,7 +8027,7 @@ type ProjectsLocationsDataStoresBranchesDocumentsListCall struct { // `projects/{project}/locations/{location}/collections/{collection}/da // taStores/{data_store}/branches/{branch}`. Use `default_branch` as // the branch ID, to list documents under the default branch. If the -// caller does not have permission to list Documentss under this +// caller does not have permission to list Documents under this // branch, regardless of whether or not this branch exists, a // `PERMISSION_DENIED` error is returned. func (r *ProjectsLocationsDataStoresBranchesDocumentsService) List(parent string) *ProjectsLocationsDataStoresBranchesDocumentsListCall { @@ -8183,7 +8178,7 @@ func (c *ProjectsLocationsDataStoresBranchesDocumentsListCall) Do(opts ...google // "type": "string" // }, // "parent": { - // "description": "Required. The parent branch resource name, such as `projects/{project}/locations/{location}/collections/{collection}/dataStores/{data_store}/branches/{branch}`. Use `default_branch` as the branch ID, to list documents under the default branch. If the caller does not have permission to list Documentss under this branch, regardless of whether or not this branch exists, a `PERMISSION_DENIED` error is returned.", + // "description": "Required. The parent branch resource name, such as `projects/{project}/locations/{location}/collections/{collection}/dataStores/{data_store}/branches/{branch}`. Use `default_branch` as the branch ID, to list documents under the default branch. If the caller does not have permission to list Documents under this branch, regardless of whether or not this branch exists, a `PERMISSION_DENIED` error is returned.", // "location": "path", // "pattern": "^projects/[^/]+/locations/[^/]+/dataStores/[^/]+/branches/[^/]+$", // "required": true, @@ -9757,7 +9752,7 @@ type ProjectsLocationsDataStoresUserEventsCollectCall struct { } // Collect: Writes a single user event from the browser. This uses a GET -// request to due to browser restriction of POST-ing to a 3rd party +// request to due to browser restriction of POST-ing to a third-party // domain. This method is used only by the Discovery Engine API // JavaScript pixel and Google Tag Manager. Users should not call this // method directly. @@ -9782,7 +9777,7 @@ func (c *ProjectsLocationsDataStoresUserEventsCollectCall) Ets(ets int64) *Proje // Uri sets the optional parameter "uri": The URL including // cgi-parameters but excluding the hash fragment with a length limit of // 5,000 characters. This is often more useful than the referer URL, -// because many browsers only send the domain for 3rd party requests. +// because many browsers only send the domain for third-party requests. func (c *ProjectsLocationsDataStoresUserEventsCollectCall) Uri(uri string) *ProjectsLocationsDataStoresUserEventsCollectCall { c.urlParams_.Set("uri", uri) return c @@ -9894,7 +9889,7 @@ func (c *ProjectsLocationsDataStoresUserEventsCollectCall) Do(opts ...googleapi. } return ret, nil // { - // "description": "Writes a single user event from the browser. This uses a GET request to due to browser restriction of POST-ing to a 3rd party domain. This method is used only by the Discovery Engine API JavaScript pixel and Google Tag Manager. Users should not call this method directly.", + // "description": "Writes a single user event from the browser. This uses a GET request to due to browser restriction of POST-ing to a third-party domain. This method is used only by the Discovery Engine API JavaScript pixel and Google Tag Manager. Users should not call this method directly.", // "flatPath": "v1alpha/projects/{projectsId}/locations/{locationsId}/dataStores/{dataStoresId}/userEvents:collect", // "httpMethod": "GET", // "id": "discoveryengine.projects.locations.dataStores.userEvents.collect", @@ -9916,7 +9911,7 @@ func (c *ProjectsLocationsDataStoresUserEventsCollectCall) Do(opts ...googleapi. // "type": "string" // }, // "uri": { - // "description": "The URL including cgi-parameters but excluding the hash fragment with a length limit of 5,000 characters. This is often more useful than the referer URL, because many browsers only send the domain for 3rd party requests.", + // "description": "The URL including cgi-parameters but excluding the hash fragment with a length limit of 5,000 characters. This is often more useful than the referer URL, because many browsers only send the domain for third-party requests.", // "location": "query", // "type": "string" // }, diff --git a/discoveryengine/v1beta/discoveryengine-api.json b/discoveryengine/v1beta/discoveryengine-api.json index 991b160c2e2..c592bfb2b7b 100644 --- a/discoveryengine/v1beta/discoveryengine-api.json +++ b/discoveryengine/v1beta/discoveryengine-api.json @@ -249,7 +249,7 @@ "type": "string" }, "parent": { - "description": "Required. The parent branch resource name, such as `projects/{project}/locations/{location}/collections/{collection}/dataStores/{data_store}/branches/{branch}`. Use `default_branch` as the branch ID, to list documents under the default branch. If the caller does not have permission to list Documentss under this branch, regardless of whether or not this branch exists, a `PERMISSION_DENIED` error is returned.", + "description": "Required. The parent branch resource name, such as `projects/{project}/locations/{location}/collections/{collection}/dataStores/{data_store}/branches/{branch}`. Use `default_branch` as the branch ID, to list documents under the default branch. If the caller does not have permission to list Documents under this branch, regardless of whether or not this branch exists, a `PERMISSION_DENIED` error is returned.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/collections/[^/]+/dataStores/[^/]+/branches/[^/]+$", "required": true, @@ -652,7 +652,7 @@ "userEvents": { "methods": { "collect": { - "description": "Writes a single user event from the browser. This uses a GET request to due to browser restriction of POST-ing to a 3rd party domain. This method is used only by the Discovery Engine API JavaScript pixel and Google Tag Manager. Users should not call this method directly.", + "description": "Writes a single user event from the browser. This uses a GET request to due to browser restriction of POST-ing to a third-party domain. This method is used only by the Discovery Engine API JavaScript pixel and Google Tag Manager. Users should not call this method directly.", "flatPath": "v1beta/projects/{projectsId}/locations/{locationsId}/collections/{collectionsId}/dataStores/{dataStoresId}/userEvents:collect", "httpMethod": "GET", "id": "discoveryengine.projects.locations.collections.dataStores.userEvents.collect", @@ -674,7 +674,7 @@ "type": "string" }, "uri": { - "description": "The URL including cgi-parameters but excluding the hash fragment with a length limit of 5,000 characters. This is often more useful than the referer URL, because many browsers only send the domain for 3rd party requests.", + "description": "The URL including cgi-parameters but excluding the hash fragment with a length limit of 5,000 characters. This is often more useful than the referer URL, because many browsers only send the domain for third-party requests.", "location": "query", "type": "string" }, @@ -1036,7 +1036,7 @@ "type": "string" }, "parent": { - "description": "Required. The parent branch resource name, such as `projects/{project}/locations/{location}/collections/{collection}/dataStores/{data_store}/branches/{branch}`. Use `default_branch` as the branch ID, to list documents under the default branch. If the caller does not have permission to list Documentss under this branch, regardless of whether or not this branch exists, a `PERMISSION_DENIED` error is returned.", + "description": "Required. The parent branch resource name, such as `projects/{project}/locations/{location}/collections/{collection}/dataStores/{data_store}/branches/{branch}`. Use `default_branch` as the branch ID, to list documents under the default branch. If the caller does not have permission to list Documents under this branch, regardless of whether or not this branch exists, a `PERMISSION_DENIED` error is returned.", "location": "path", "pattern": "^projects/[^/]+/locations/[^/]+/dataStores/[^/]+/branches/[^/]+$", "required": true, @@ -1365,7 +1365,7 @@ "userEvents": { "methods": { "collect": { - "description": "Writes a single user event from the browser. This uses a GET request to due to browser restriction of POST-ing to a 3rd party domain. This method is used only by the Discovery Engine API JavaScript pixel and Google Tag Manager. Users should not call this method directly.", + "description": "Writes a single user event from the browser. This uses a GET request to due to browser restriction of POST-ing to a third-party domain. This method is used only by the Discovery Engine API JavaScript pixel and Google Tag Manager. Users should not call this method directly.", "flatPath": "v1beta/projects/{projectsId}/locations/{locationsId}/dataStores/{dataStoresId}/userEvents:collect", "httpMethod": "GET", "id": "discoveryengine.projects.locations.dataStores.userEvents.collect", @@ -1387,7 +1387,7 @@ "type": "string" }, "uri": { - "description": "The URL including cgi-parameters but excluding the hash fragment with a length limit of 5,000 characters. This is often more useful than the referer URL, because many browsers only send the domain for 3rd party requests.", + "description": "The URL including cgi-parameters but excluding the hash fragment with a length limit of 5,000 characters. This is often more useful than the referer URL, because many browsers only send the domain for third-party requests.", "location": "query", "type": "string" }, @@ -1610,7 +1610,7 @@ } } }, - "revision": "20230620", + "revision": "20230623", "rootUrl": "https://discoveryengine.googleapis.com/", "schemas": { "GoogleApiHttpBody": { @@ -1760,7 +1760,7 @@ "type": "object" }, "GoogleCloudDiscoveryengineV1ImportDocumentsMetadata": { - "description": "Metadata related to the progress of the ImportDocuments operation. This will be returned by the google.longrunning.Operation.metadata field.", + "description": "Metadata related to the progress of the ImportDocuments operation. This is returned by the google.longrunning.Operation.metadata field.", "id": "GoogleCloudDiscoveryengineV1ImportDocumentsMetadata", "properties": { "createTime": { @@ -1809,14 +1809,14 @@ "id": "GoogleCloudDiscoveryengineV1ImportErrorConfig", "properties": { "gcsPrefix": { - "description": "Cloud Storage prefix for import errors. This must be an empty, existing Cloud Storage directory. Import errors will be written to sharded files in this directory, one per line, as a JSON-encoded `google.rpc.Status` message.", + "description": "Cloud Storage prefix for import errors. This must be an empty, existing Cloud Storage directory. Import errors are written to sharded files in this directory, one per line, as a JSON-encoded `google.rpc.Status` message.", "type": "string" } }, "type": "object" }, "GoogleCloudDiscoveryengineV1ImportUserEventsMetadata": { - "description": "Metadata related to the progress of the Import operation. This will be returned by the google.longrunning.Operation.metadata field.", + "description": "Metadata related to the progress of the Import operation. This is returned by the google.longrunning.Operation.metadata field.", "id": "GoogleCloudDiscoveryengineV1ImportUserEventsMetadata", "properties": { "createTime": { @@ -1954,7 +1954,7 @@ "type": "object" }, "GoogleCloudDiscoveryengineV1alphaImportDocumentsMetadata": { - "description": "Metadata related to the progress of the ImportDocuments operation. This will be returned by the google.longrunning.Operation.metadata field.", + "description": "Metadata related to the progress of the ImportDocuments operation. This is returned by the google.longrunning.Operation.metadata field.", "id": "GoogleCloudDiscoveryengineV1alphaImportDocumentsMetadata", "properties": { "createTime": { @@ -2003,14 +2003,14 @@ "id": "GoogleCloudDiscoveryengineV1alphaImportErrorConfig", "properties": { "gcsPrefix": { - "description": "Cloud Storage prefix for import errors. This must be an empty, existing Cloud Storage directory. Import errors will be written to sharded files in this directory, one per line, as a JSON-encoded `google.rpc.Status` message.", + "description": "Cloud Storage prefix for import errors. This must be an empty, existing Cloud Storage directory. Import errors are written to sharded files in this directory, one per line, as a JSON-encoded `google.rpc.Status` message.", "type": "string" } }, "type": "object" }, "GoogleCloudDiscoveryengineV1alphaImportUserEventsMetadata": { - "description": "Metadata related to the progress of the Import operation. This will be returned by the google.longrunning.Operation.metadata field.", + "description": "Metadata related to the progress of the Import operation. This is returned by the google.longrunning.Operation.metadata field.", "id": "GoogleCloudDiscoveryengineV1alphaImportUserEventsMetadata", "properties": { "createTime": { @@ -2177,7 +2177,7 @@ "id": "GoogleCloudDiscoveryengineV1alphaTargetSite", "properties": { "exactMatch": { - "description": "Input only. If set to false, an uri_pattern will be generated to include all pages whose address contains the provided_uri_pattern. If set to true, an uri_pattern will be generated to try to be an exact match of the provided_uri_pattern or just the specific page if the provided_uri_pattern is a specific one. provided_uri_pattern will always be normalized to generate the uri pattern to be used by the search engine.", + "description": "Input only. If set to false, a uri_pattern is generated to include all pages whose address contains the provided_uri_pattern. If set to true, an uri_pattern is generated to try to be an exact match of the provided_uri_pattern or just the specific page if the provided_uri_pattern is a specific one. provided_uri_pattern is always normalized to generate the URI pattern to be used by the search engine.", "type": "boolean" }, "generatedUriPattern": { @@ -2191,7 +2191,7 @@ "type": "string" }, "providedUriPattern": { - "description": "Required. Input only. The user provided uri pattern from which the `generated_uri_pattern` is generated.", + "description": "Required. Input only. The user provided URI pattern from which the `generated_uri_pattern` is generated.", "type": "string" }, "type": { @@ -2222,7 +2222,7 @@ "id": "GoogleCloudDiscoveryengineV1betaBigQuerySource", "properties": { "dataSchema": { - "description": "The schema to use when parsing the data from the source. Supported values for user event imports: * `user_event` (default): One UserEvent per row. Supported values for document imports: * `document` (default): One Document format per row. Each document must have a valid Document.id and one of Document.json_data or Document.struct_data. * `custom`: One custom data per row in arbitrary format that conforms the defined Schema of the data store. This can only be used by the GENERIC Data Store vertical.", + "description": "The schema to use when parsing the data from the source. Supported values for user event imports: * `user_event` (default): One UserEvent per row. Supported values for document imports: * `document` (default): One Document format per row. Each document must have a valid Document.id and one of Document.json_data or Document.struct_data. * `custom`: One custom data per row in arbitrary format that conforms to the defined Schema of the data store. This can only be used by the GENERIC Data Store vertical.", "type": "string" }, "datasetId": { @@ -2253,12 +2253,12 @@ "id": "GoogleCloudDiscoveryengineV1betaCompletionInfo", "properties": { "selectedPosition": { - "description": "End user selected CompleteQueryResponse.CompletionResult.suggestion position, starting from 0.", + "description": "End user selected CompleteQueryResponse.QuerySuggestion.suggestion position, starting from 0.", "format": "int32", "type": "integer" }, "selectedSuggestion": { - "description": "End user selected CompleteQueryResponse.CompletionResult.suggestion.", + "description": "End user selected CompleteQueryResponse.QuerySuggestion.suggestion.", "type": "string" } }, @@ -2295,7 +2295,7 @@ "type": "string" }, "jsonData": { - "description": "The JSON string representation of the document. It should conform to the registered Schema.schema or an `INVALID_ARGUMENT` error is thrown.", + "description": "The JSON string representation of the document. It should conform to the registered Schema or an `INVALID_ARGUMENT` error is thrown.", "type": "string" }, "name": { @@ -2315,7 +2315,7 @@ "description": "Properties of the object.", "type": "any" }, - "description": "The structured JSON data for the document. It should conform to the registered Schema.schema or an `INVALID_ARGUMENT` error is thrown.", + "description": "The structured JSON data for the document. It should conform to the registered Schema or an `INVALID_ARGUMENT` error is thrown.", "type": "object" } }, @@ -2346,7 +2346,7 @@ "type": "integer" }, "uri": { - "description": "The Document url - only allowed for DataStores with content_config PUBLIC_WEBSITE.", + "description": "The Document URI - only allowed for website data stores.", "type": "string" } }, @@ -2357,7 +2357,7 @@ "id": "GoogleCloudDiscoveryengineV1betaGcsSource", "properties": { "dataSchema": { - "description": "The schema to use when parsing the data from the source. Supported values for document imports: * `document` (default): One JSON Document per line. Each document must have a valid Document.id. * `content`: Unstructured data (e.g. PDF, HTML). Each file matched by `input_uris` will become a document, with the ID set to the first 128 bits of SHA256(URI) encoded as a hex string. * `custom`: One custom data JSON per row in arbitrary format that conforms the defined Schema of the data store. This can only be used by the GENERIC Data Store vertical. * `csv`: A CSV file with header conforming the defined Schema of the data store. Each entry after the header will be imported as a Document. This can only be used by the GENERIC Data Store vertical. Supported values for user even imports: * `user_event` (default): One JSON UserEvent per line.", + "description": "The schema to use when parsing the data from the source. Supported values for document imports: * `document` (default): One JSON Document per line. Each document must have a valid Document.id. * `content`: Unstructured data (e.g. PDF, HTML). Each file matched by `input_uris` becomes a document, with the ID set to the first 128 bits of SHA256(URI) encoded as a hex string. * `custom`: One custom data JSON per row in arbitrary format that conforms to the defined Schema of the data store. This can only be used by Gen App Builder. * `csv`: A CSV file with header conforming to the defined Schema of the data store. Each entry after the header is imported as a Document. This can only be used by Gen App Builder. Supported values for user even imports: * `user_event` (default): One JSON UserEvent per line.", "type": "string" }, "inputUris": { @@ -2371,7 +2371,7 @@ "type": "object" }, "GoogleCloudDiscoveryengineV1betaImportDocumentsMetadata": { - "description": "Metadata related to the progress of the ImportDocuments operation. This will be returned by the google.longrunning.Operation.metadata field.", + "description": "Metadata related to the progress of the ImportDocuments operation. This is returned by the google.longrunning.Operation.metadata field.", "id": "GoogleCloudDiscoveryengineV1betaImportDocumentsMetadata", "properties": { "createTime": { @@ -2402,7 +2402,7 @@ "id": "GoogleCloudDiscoveryengineV1betaImportDocumentsRequest", "properties": { "autoGenerateIds": { - "description": "Whether to automatically generate IDs for the documents if absent. If set to `true`, Document.ids are automatically generated based on the hash of the payload, where IDs may not be consistent during multiple imports. In which case ReconciliationMode.FULL is highly recommended to avoid duplicate contents. If unset or set to `false`, Document.ids have to be specified using id_field, otherwises, documents without IDs will fail to be imported. Only set this field when using GcsSource or BigQuerySource, and when GcsSource.data_schema or BigQuerySource.data_schema is `custom` or `csv`. Otherwise, an INVALID_ARGUMENT error is thrown.", + "description": "Whether to automatically generate IDs for the documents if absent. If set to `true`, Document.ids are automatically generated based on the hash of the payload, where IDs may not be consistent during multiple imports. In which case ReconciliationMode.FULL is highly recommended to avoid duplicate contents. If unset or set to `false`, Document.ids have to be specified using id_field, otherwise, documents without IDs fail to be imported. Only set this field when using GcsSource or BigQuerySource, and when GcsSource.data_schema or BigQuerySource.data_schema is `custom` or `csv`. Otherwise, an INVALID_ARGUMENT error is thrown.", "type": "boolean" }, "bigquerySource": { @@ -2418,7 +2418,7 @@ "description": "Cloud Storage location for the input content." }, "idField": { - "description": "The field in the Cloud Storage and BigQuery sources that indicates the unique IDs of the documents. For GcsSource it is the key of the JSON field. For instance, `my_id` for JSON `{\"my_id\": \"some_uuid\"}`. For BigQuerySource it is the column name of the BigQuery table where the unique ids are stored. The values of the JSON field or the BigQuery column will be used as the Document.ids. The JSON field or the BigQuery column must be of string type, and the values must be set as valid strings conform to [RFC-1034](https://tools.ietf.org/html/rfc1034) with 1-63 characters. Otherwise, documents without valid IDs will fail to be imported. Only set this field when using GcsSource or BigQuerySource, and when GcsSource.data_schema or BigQuerySource.data_schema is `custom`. And only set this field when auto_generate_ids is unset or set as `false`. Otherwise, an INVALID_ARGUMENT error is thrown. If it is unset, a default value `_id` is used when importing from the allowed data sources.", + "description": "The field in the Cloud Storage and BigQuery sources that indicates the unique IDs of the documents. For GcsSource it is the key of the JSON field. For instance, `my_id` for JSON `{\"my_id\": \"some_uuid\"}`. For BigQuerySource it is the column name of the BigQuery table where the unique ids are stored. The values of the JSON field or the BigQuery column are used as the Document.ids. The JSON field or the BigQuery column must be of string type, and the values must be set as valid strings conform to [RFC-1034](https://tools.ietf.org/html/rfc1034) with 1-63 characters. Otherwise, documents without valid IDs fail to be imported. Only set this field when using GcsSource or BigQuerySource, and when GcsSource.data_schema or BigQuerySource.data_schema is `custom`. And only set this field when auto_generate_ids is unset or set as `false`. Otherwise, an INVALID_ARGUMENT error is thrown. If it is unset, a default value `_id` is used when importing from the allowed data sources.", "type": "string" }, "inlineSource": { @@ -2479,14 +2479,14 @@ "id": "GoogleCloudDiscoveryengineV1betaImportErrorConfig", "properties": { "gcsPrefix": { - "description": "Cloud Storage prefix for import errors. This must be an empty, existing Cloud Storage directory. Import errors will be written to sharded files in this directory, one per line, as a JSON-encoded `google.rpc.Status` message.", + "description": "Cloud Storage prefix for import errors. This must be an empty, existing Cloud Storage directory. Import errors are written to sharded files in this directory, one per line, as a JSON-encoded `google.rpc.Status` message.", "type": "string" } }, "type": "object" }, "GoogleCloudDiscoveryengineV1betaImportUserEventsMetadata": { - "description": "Metadata related to the progress of the Import operation. This will be returned by the google.longrunning.Operation.metadata field.", + "description": "Metadata related to the progress of the Import operation. This is returned by the google.longrunning.Operation.metadata field.", "id": "GoogleCloudDiscoveryengineV1betaImportUserEventsMetadata", "properties": { "createTime": { @@ -2617,11 +2617,11 @@ "id": "GoogleCloudDiscoveryengineV1betaPageInfo", "properties": { "pageCategory": { - "description": "The most specific category associated with a category page. To represent full path of category, use '\u003e' sign to separate different hierarchies. If '\u003e' is part of the category name, please replace it with other character(s). Category pages include special pages such as sales or promotions. For instance, a special sale page may have the category hierarchy: \"pageCategory\" : \"Sales \u003e 2017 Black Friday Deals\". Required for `view-category-page` events. Other event types should not set this field. Otherwise, an INVALID_ARGUMENT error is returned.", + "description": "The most specific category associated with a category page. To represent full path of category, use '\u003e' sign to separate different hierarchies. If '\u003e' is part of the category name, please replace it with other character(s). Category pages include special pages such as sales or promotions. For instance, a special sale page may have the category hierarchy: `\"pageCategory\" : \"Sales \u003e 2017 Black Friday Deals\"`. Required for `view-category-page` events. Other event types should not set this field. Otherwise, an `INVALID_ARGUMENT` error is returned.", "type": "string" }, "pageviewId": { - "description": "A unique ID of a web page view. This should be kept the same for all user events triggered from the same pageview. For example, an item detail page view could trigger multiple events as the user is browsing the page. The `pageViewId` property should be kept the same for all these events so that they can be grouped together properly. When using the client side event reporting with JavaScript pixel and Google Tag Manager, this value is filled in automatically.", + "description": "A unique ID of a web page view. This should be kept the same for all user events triggered from the same pageview. For example, an item detail page view could trigger multiple events as the user is browsing the page. The `pageview_id` property should be kept the same for all these events so that they can be grouped together properly. When using the client side event reporting with JavaScript pixel and Google Tag Manager, this value is filled in automatically.", "type": "string" }, "referrerUri": { @@ -2838,16 +2838,16 @@ "id": "GoogleCloudDiscoveryengineV1betaSearchInfo", "properties": { "offset": { - "description": "An integer that specifies the current offset for pagination (the 0-indexed starting location, amongst the products deemed by the API as relevant). See SearchRequest.offset for definition. If this field is negative, an INVALID_ARGUMENT is returned. This can only be set for `search` events. Other event types should not set this field. Otherwise, an INVALID_ARGUMENT error is returned.", + "description": "An integer that specifies the current offset for pagination (the 0-indexed starting location, amongst the products deemed by the API as relevant). See SearchRequest.offset for definition. If this field is negative, an `INVALID_ARGUMENT` is returned. This can only be set for `search` events. Other event types should not set this field. Otherwise, an `INVALID_ARGUMENT` error is returned.", "format": "int32", "type": "integer" }, "orderBy": { - "description": "The order in which products are returned, if applicable. See SearchRequest.order_by for definition and syntax. The value must be a UTF-8 encoded string with a length limit of 1,000 characters. Otherwise, an INVALID_ARGUMENT error is returned. This can only be set for `search` events. Other event types should not set this field. Otherwise, an INVALID_ARGUMENT error is returned.", + "description": "The order in which products are returned, if applicable. See SearchRequest.order_by for definition and syntax. The value must be a UTF-8 encoded string with a length limit of 1,000 characters. Otherwise, an `INVALID_ARGUMENT` error is returned. This can only be set for `search` events. Other event types should not set this field. Otherwise, an `INVALID_ARGUMENT` error is returned.", "type": "string" }, "searchQuery": { - "description": "The user's search query. See SearchRequest.query for definition. The value must be a UTF-8 encoded string with a length limit of 5,000 characters. Otherwise, an INVALID_ARGUMENT error is returned. At least one of search_query or PageInfo.page_category is required for `search` events. Other event types should not set this field. Otherwise, an INVALID_ARGUMENT error is returned.", + "description": "The user's search query. See SearchRequest.query for definition. The value must be a UTF-8 encoded string with a length limit of 5,000 characters. Otherwise, an `INVALID_ARGUMENT` error is returned. At least one of search_query or PageInfo.page_category is required for `search` events. Other event types should not set this field. Otherwise, an `INVALID_ARGUMENT` error is returned.", "type": "string" } }, @@ -2896,16 +2896,16 @@ "additionalProperties": { "$ref": "GoogleCloudDiscoveryengineV1betaCustomAttribute" }, - "description": "Extra user event features to include in the recommendation model. These attributes must NOT contain data that needs to be parsed or processed further, e.g. JSON or other encodings. If you provide custom attributes for ingested user events, also include them in the user events that you associate with prediction requests. Custom attribute formatting must be consistent between imported events and events provided with prediction requests. This lets the Discovery Engine API use those custom attributes when training models and serving predictions, which helps improve recommendation quality. This field needs to pass all below criteria, otherwise an `INVALID_ARGUMENT` error is returned: * The key must be a UTF-8 encoded string with a length limit of 5,000 characters. * For text attributes, at most 400 values are allowed. Empty values are not allowed. Each value must be a UTF-8 encoded string with a length limit of 256 characters. * For number attributes, at most 400 values are allowed. For product recommendations, an example of extra user information is ` traffic_channel`, which is how a user arrives at the site. Users can arrive at the site by coming to the site directly, coming through Google search, or in other ways.", + "description": "Extra user event features to include in the recommendation model. These attributes must NOT contain data that needs to be parsed or processed further, e.g. JSON or other encodings. If you provide custom attributes for ingested user events, also include them in the user events that you associate with prediction requests. Custom attribute formatting must be consistent between imported events and events provided with prediction requests. This lets the Discovery Engine API use those custom attributes when training models and serving predictions, which helps improve recommendation quality. This field needs to pass all below criteria, otherwise an `INVALID_ARGUMENT` error is returned: * The key must be a UTF-8 encoded string with a length limit of 5,000 characters. * For text attributes, at most 400 values are allowed. Empty values are not allowed. Each value must be a UTF-8 encoded string with a length limit of 256 characters. * For number attributes, at most 400 values are allowed. For product recommendations, an example of extra user information is `traffic_channel`, which is how a user arrives at the site. Users can arrive at the site by coming to the site directly, coming through Google search, or in other ways.", "type": "object" }, "attributionToken": { - "description": "Token to attribute an API response to user action(s) to trigger the event. Highly recommended for user events that are the result of RecommendationService.Recommend. This field enables accurate attribution of recommendation model performance. The value must be one of: * PredictResponse.attribution_token for events that are the result of RecommendationService.Recommend. * SearchResponse.attribution_token for events that are the result of SearchService.Search. * CompleteQueryResponse.attribution_token for events that are the result of CompletionService.CompleteQuery. This token enables us to accurately attribute page view or conversion completion back to the event and the particular predict response containing this clicked/purchased product. If user clicks on product K in the recommendation results, pass PredictResponse.attribution_token as a URL parameter to product K's page. When recording events on product K's page, log the PredictResponse.attribution_token to this field.", + "description": "Token to attribute an API response to user action(s) to trigger the event. Highly recommended for user events that are the result of RecommendationService.Recommend. This field enables accurate attribution of recommendation model performance. The value must be one of: * RecommendResponse.attribution_token for events that are the result of RecommendationService.Recommend. * SearchResponse.attribution_token for events that are the result of SearchService.Search. This token enables us to accurately attribute page view or conversion completion back to the event and the particular predict response containing this clicked/purchased product. If user clicks on product K in the recommendation results, pass RecommendResponse.attribution_token as a URL parameter to product K's page. When recording events on product K's page, log the RecommendResponse.attribution_token to this field.", "type": "string" }, "completionInfo": { "$ref": "GoogleCloudDiscoveryengineV1betaCompletionInfo", - "description": "CompleteQuery API details related to the event. This field should be set for `search` event when autocomplete function is enabled and the user clicks a suggestion for search." + "description": "CompletionService.CompleteQuery details related to the event. This field should be set for `search` event when autocomplete function is enabled and the user clicks a suggestion for search." }, "directUserRequest": { "description": "Should set to true if the request is made directly from the end user, in which case the UserEvent.user_info.user_agent can be populated from the HTTP request. This flag should be set only if the API request is made directly from the end user such as a mobile app (and not if a gateway or a server is processing and pushing the user events). This should not be set when using the JavaScript tag in UserEventService.CollectUserEvent.", @@ -2928,7 +2928,7 @@ "type": "string" }, "filter": { - "description": "The filter syntax consists of an expression language for constructing a predicate from one or more fields of the documents being filtered. One example is for `search` events, the associated SearchRequest may contain a filter expression in SearchRequest.filter conforming to https://google.aip.dev/160#filtering. Similarly, for `view-item-list` events that are generated from a RecommendationService.RecommendRequest, this field may be populated directly from RecommendationService.RecommendRequest.filter conforming to https://google.aip.dev/160#filtering. The value must be a UTF-8 encoded string with a length limit of 1,000 characters. Otherwise, an INVALID_ARGUMENT error is returned.", + "description": "The filter syntax consists of an expression language for constructing a predicate from one or more fields of the documents being filtered. One example is for `search` events, the associated SearchRequest may contain a filter expression in SearchRequest.filter conforming to https://google.aip.dev/160#filtering. Similarly, for `view-item-list` events that are generated from a RecommendationService.RecommendRequest, this field may be populated directly from RecommendationService.RecommendRequest.filter conforming to https://google.aip.dev/160#filtering. The value must be a UTF-8 encoded string with a length limit of 1,000 characters. Otherwise, an `INVALID_ARGUMENT` error is returned.", "type": "string" }, "mediaInfo": { @@ -2952,7 +2952,7 @@ }, "searchInfo": { "$ref": "GoogleCloudDiscoveryengineV1betaSearchInfo", - "description": "Search API details related to the event. This field should be set for `search` event." + "description": "SearchService.Search details related to the event. This field should be set for `search` event." }, "sessionId": { "description": "A unique identifier for tracking a visitor session with a length limit of 128 bytes. A session is an aggregation of an end user behavior in a time span. A general guideline to populate the session_id: 1. If user has no activity for 30 min, a new session_id should be assigned. 2. The session_id should be unique across users, suggest use uuid or add UserEvent.user_pseudo_id as prefix.", @@ -2974,7 +2974,7 @@ "description": "Information about the end user." }, "userPseudoId": { - "description": "Required. A unique identifier for tracking visitors. For example, this could be implemented with an HTTP cookie, which should be able to uniquely identify a visitor on a single device. This unique identifier should not change if the visitor log in/out of the website. Do not set the field to the same fixed ID for different users. This mixes the event history of those users together, which results in degraded model quality. The field must be a UTF-8 encoded string with a length limit of 128 characters. Otherwise, an INVALID_ARGUMENT error is returned. The field should not contain PII or user-data. We recommend to use Google Analytics [Client ID](https://developers.google.com/analytics/devguides/collection/analyticsjs/field-reference#clientId) for this field.", + "description": "Required. A unique identifier for tracking visitors. For example, this could be implemented with an HTTP cookie, which should be able to uniquely identify a visitor on a single device. This unique identifier should not change if the visitor log in/out of the website. Do not set the field to the same fixed ID for different users. This mixes the event history of those users together, which results in degraded model quality. The field must be a UTF-8 encoded string with a length limit of 128 characters. Otherwise, an `INVALID_ARGUMENT` error is returned. The field should not contain PII or user-data. We recommend to use Google Analytics [Client ID](https://developers.google.com/analytics/devguides/collection/analyticsjs/field-reference#clientId) for this field.", "type": "string" } }, @@ -2985,7 +2985,7 @@ "id": "GoogleCloudDiscoveryengineV1betaUserInfo", "properties": { "userAgent": { - "description": "User agent as included in the HTTP header. Required for getting SearchResponse.sponsored_results. The field must be a UTF-8 encoded string with a length limit of 1,000 characters. Otherwise, an `INVALID_ARGUMENT` error is returned. This should not be set when using the client side event reporting with GTM or JavaScript tag in UserEventService.CollectUserEvent or if UserEvent.direct_user_request is set.", + "description": "User agent as included in the HTTP header. The field must be a UTF-8 encoded string with a length limit of 1,000 characters. Otherwise, an `INVALID_ARGUMENT` error is returned. This should not be set when using the client side event reporting with GTM or JavaScript tag in UserEventService.CollectUserEvent or if UserEvent.direct_user_request is set.", "type": "string" }, "userId": { diff --git a/discoveryengine/v1beta/discoveryengine-gen.go b/discoveryengine/v1beta/discoveryengine-gen.go index 2158962a057..b00344d464e 100644 --- a/discoveryengine/v1beta/discoveryengine-gen.go +++ b/discoveryengine/v1beta/discoveryengine-gen.go @@ -770,8 +770,8 @@ func (s *GoogleCloudDiscoveryengineLoggingSourceLocation) MarshalJSON() ([]byte, } // GoogleCloudDiscoveryengineV1ImportDocumentsMetadata: Metadata related -// to the progress of the ImportDocuments operation. This will be -// returned by the google.longrunning.Operation.metadata field. +// to the progress of the ImportDocuments operation. This is returned by +// the google.longrunning.Operation.metadata field. type GoogleCloudDiscoveryengineV1ImportDocumentsMetadata struct { // CreateTime: Operation create time. CreateTime string `json:"createTime,omitempty"` @@ -851,9 +851,9 @@ func (s *GoogleCloudDiscoveryengineV1ImportDocumentsResponse) MarshalJSON() ([]b // destination for Import related errors. type GoogleCloudDiscoveryengineV1ImportErrorConfig struct { // GcsPrefix: Cloud Storage prefix for import errors. This must be an - // empty, existing Cloud Storage directory. Import errors will be - // written to sharded files in this directory, one per line, as a - // JSON-encoded `google.rpc.Status` message. + // empty, existing Cloud Storage directory. Import errors are written to + // sharded files in this directory, one per line, as a JSON-encoded + // `google.rpc.Status` message. GcsPrefix string `json:"gcsPrefix,omitempty"` // ForceSendFields is a list of field names (e.g. "GcsPrefix") to @@ -880,8 +880,8 @@ func (s *GoogleCloudDiscoveryengineV1ImportErrorConfig) MarshalJSON() ([]byte, e } // GoogleCloudDiscoveryengineV1ImportUserEventsMetadata: Metadata -// related to the progress of the Import operation. This will be -// returned by the google.longrunning.Operation.metadata field. +// related to the progress of the Import operation. This is returned by +// the google.longrunning.Operation.metadata field. type GoogleCloudDiscoveryengineV1ImportUserEventsMetadata struct { // CreateTime: Operation create time. CreateTime string `json:"createTime,omitempty"` @@ -1113,8 +1113,8 @@ func (s *GoogleCloudDiscoveryengineV1alphaBatchCreateTargetSitesResponse) Marsha } // GoogleCloudDiscoveryengineV1alphaImportDocumentsMetadata: Metadata -// related to the progress of the ImportDocuments operation. This will -// be returned by the google.longrunning.Operation.metadata field. +// related to the progress of the ImportDocuments operation. This is +// returned by the google.longrunning.Operation.metadata field. type GoogleCloudDiscoveryengineV1alphaImportDocumentsMetadata struct { // CreateTime: Operation create time. CreateTime string `json:"createTime,omitempty"` @@ -1194,9 +1194,9 @@ func (s *GoogleCloudDiscoveryengineV1alphaImportDocumentsResponse) MarshalJSON() // destination for Import related errors. type GoogleCloudDiscoveryengineV1alphaImportErrorConfig struct { // GcsPrefix: Cloud Storage prefix for import errors. This must be an - // empty, existing Cloud Storage directory. Import errors will be - // written to sharded files in this directory, one per line, as a - // JSON-encoded `google.rpc.Status` message. + // empty, existing Cloud Storage directory. Import errors are written to + // sharded files in this directory, one per line, as a JSON-encoded + // `google.rpc.Status` message. GcsPrefix string `json:"gcsPrefix,omitempty"` // ForceSendFields is a list of field names (e.g. "GcsPrefix") to @@ -1223,8 +1223,8 @@ func (s *GoogleCloudDiscoveryengineV1alphaImportErrorConfig) MarshalJSON() ([]by } // GoogleCloudDiscoveryengineV1alphaImportUserEventsMetadata: Metadata -// related to the progress of the Import operation. This will be -// returned by the google.longrunning.Operation.metadata field. +// related to the progress of the Import operation. This is returned by +// the google.longrunning.Operation.metadata field. type GoogleCloudDiscoveryengineV1alphaImportUserEventsMetadata struct { // CreateTime: Operation create time. CreateTime string `json:"createTime,omitempty"` @@ -1501,13 +1501,13 @@ func (s *GoogleCloudDiscoveryengineV1alphaSchema) MarshalJSON() ([]byte, error) // GoogleCloudDiscoveryengineV1alphaTargetSite: A target site for the // SiteSearchEngine. type GoogleCloudDiscoveryengineV1alphaTargetSite struct { - // ExactMatch: Input only. If set to false, an uri_pattern will be - // generated to include all pages whose address contains the - // provided_uri_pattern. If set to true, an uri_pattern will be - // generated to try to be an exact match of the provided_uri_pattern or - // just the specific page if the provided_uri_pattern is a specific one. - // provided_uri_pattern will always be normalized to generate the uri - // pattern to be used by the search engine. + // ExactMatch: Input only. If set to false, a uri_pattern is generated + // to include all pages whose address contains the provided_uri_pattern. + // If set to true, an uri_pattern is generated to try to be an exact + // match of the provided_uri_pattern or just the specific page if the + // provided_uri_pattern is a specific one. provided_uri_pattern is + // always normalized to generate the URI pattern to be used by the + // search engine. ExactMatch bool `json:"exactMatch,omitempty"` // GeneratedUriPattern: Output only. This is system-generated based on @@ -1521,7 +1521,7 @@ type GoogleCloudDiscoveryengineV1alphaTargetSite struct { // `target_site_id` is system-generated. Name string `json:"name,omitempty"` - // ProvidedUriPattern: Required. Input only. The user provided uri + // ProvidedUriPattern: Required. Input only. The user provided URI // pattern from which the `generated_uri_pattern` is generated. ProvidedUriPattern string `json:"providedUriPattern,omitempty"` @@ -1570,8 +1570,8 @@ type GoogleCloudDiscoveryengineV1betaBigQuerySource struct { // `document` (default): One Document format per row. Each document must // have a valid Document.id and one of Document.json_data or // Document.struct_data. * `custom`: One custom data per row in - // arbitrary format that conforms the defined Schema of the data store. - // This can only be used by the GENERIC Data Store vertical. + // arbitrary format that conforms to the defined Schema of the data + // store. This can only be used by the GENERIC Data Store vertical. DataSchema string `json:"dataSchema,omitempty"` // DatasetId: Required. The BigQuery data set to copy the data from with @@ -1625,12 +1625,12 @@ func (s *GoogleCloudDiscoveryengineV1betaBigQuerySource) MarshalJSON() ([]byte, // completion info. type GoogleCloudDiscoveryengineV1betaCompletionInfo struct { // SelectedPosition: End user selected - // CompleteQueryResponse.CompletionResult.suggestion position, starting + // CompleteQueryResponse.QuerySuggestion.suggestion position, starting // from 0. SelectedPosition int64 `json:"selectedPosition,omitempty"` // SelectedSuggestion: End user selected - // CompleteQueryResponse.CompletionResult.suggestion. + // CompleteQueryResponse.QuerySuggestion.suggestion. SelectedSuggestion string `json:"selectedSuggestion,omitempty"` // ForceSendFields is a list of field names (e.g. "SelectedPosition") to @@ -1722,8 +1722,8 @@ type GoogleCloudDiscoveryengineV1betaDocument struct { Id string `json:"id,omitempty"` // JsonData: The JSON string representation of the document. It should - // conform to the registered Schema.schema or an `INVALID_ARGUMENT` - // error is thrown. + // conform to the registered Schema or an `INVALID_ARGUMENT` error is + // thrown. JsonData string `json:"jsonData,omitempty"` // Name: Immutable. The full resource name of the document. Format: @@ -1744,8 +1744,8 @@ type GoogleCloudDiscoveryengineV1betaDocument struct { SchemaId string `json:"schemaId,omitempty"` // StructData: The structured JSON data for the document. It should - // conform to the registered Schema.schema or an `INVALID_ARGUMENT` - // error is thrown. + // conform to the registered Schema or an `INVALID_ARGUMENT` error is + // thrown. StructData googleapi.RawMessage `json:"structData,omitempty"` // ServerResponse contains the HTTP response code and headers from the @@ -1797,8 +1797,7 @@ type GoogleCloudDiscoveryengineV1betaDocumentInfo struct { // events of the following event types: * `add-to-cart` * `purchase` Quantity int64 `json:"quantity,omitempty"` - // Uri: The Document url - only allowed for DataStores with - // content_config PUBLIC_WEBSITE. + // Uri: The Document URI - only allowed for website data stores. Uri string `json:"uri,omitempty"` // ForceSendFields is a list of field names (e.g. "Id") to @@ -1831,15 +1830,14 @@ type GoogleCloudDiscoveryengineV1betaGcsSource struct { // Supported values for document imports: * `document` (default): One // JSON Document per line. Each document must have a valid Document.id. // * `content`: Unstructured data (e.g. PDF, HTML). Each file matched by - // `input_uris` will become a document, with the ID set to the first 128 + // `input_uris` becomes a document, with the ID set to the first 128 // bits of SHA256(URI) encoded as a hex string. * `custom`: One custom - // data JSON per row in arbitrary format that conforms the defined - // Schema of the data store. This can only be used by the GENERIC Data - // Store vertical. * `csv`: A CSV file with header conforming the - // defined Schema of the data store. Each entry after the header will be - // imported as a Document. This can only be used by the GENERIC Data - // Store vertical. Supported values for user even imports: * - // `user_event` (default): One JSON UserEvent per line. + // data JSON per row in arbitrary format that conforms to the defined + // Schema of the data store. This can only be used by Gen App Builder. * + // `csv`: A CSV file with header conforming to the defined Schema of the + // data store. Each entry after the header is imported as a Document. + // This can only be used by Gen App Builder. Supported values for user + // even imports: * `user_event` (default): One JSON UserEvent per line. DataSchema string `json:"dataSchema,omitempty"` // InputUris: Required. Cloud Storage URIs to input files. URI can be up @@ -1875,8 +1873,8 @@ func (s *GoogleCloudDiscoveryengineV1betaGcsSource) MarshalJSON() ([]byte, error } // GoogleCloudDiscoveryengineV1betaImportDocumentsMetadata: Metadata -// related to the progress of the ImportDocuments operation. This will -// be returned by the google.longrunning.Operation.metadata field. +// related to the progress of the ImportDocuments operation. This is +// returned by the google.longrunning.Operation.metadata field. type GoogleCloudDiscoveryengineV1betaImportDocumentsMetadata struct { // CreateTime: Operation create time. CreateTime string `json:"createTime,omitempty"` @@ -1924,11 +1922,10 @@ type GoogleCloudDiscoveryengineV1betaImportDocumentsRequest struct { // consistent during multiple imports. In which case // ReconciliationMode.FULL is highly recommended to avoid duplicate // contents. If unset or set to `false`, Document.ids have to be - // specified using id_field, otherwises, documents without IDs will fail - // to be imported. Only set this field when using GcsSource or - // BigQuerySource, and when GcsSource.data_schema or - // BigQuerySource.data_schema is `custom` or `csv`. Otherwise, an - // INVALID_ARGUMENT error is thrown. + // specified using id_field, otherwise, documents without IDs fail to be + // imported. Only set this field when using GcsSource or BigQuerySource, + // and when GcsSource.data_schema or BigQuerySource.data_schema is + // `custom` or `csv`. Otherwise, an INVALID_ARGUMENT error is thrown. AutoGenerateIds bool `json:"autoGenerateIds,omitempty"` // BigquerySource: BigQuery input source. @@ -1946,12 +1943,12 @@ type GoogleCloudDiscoveryengineV1betaImportDocumentsRequest struct { // key of the JSON field. For instance, `my_id` for JSON `{"my_id": // "some_uuid"}`. For BigQuerySource it is the column name of the // BigQuery table where the unique ids are stored. The values of the - // JSON field or the BigQuery column will be used as the Document.ids. - // The JSON field or the BigQuery column must be of string type, and the + // JSON field or the BigQuery column are used as the Document.ids. The + // JSON field or the BigQuery column must be of string type, and the // values must be set as valid strings conform to RFC-1034 // (https://tools.ietf.org/html/rfc1034) with 1-63 characters. - // Otherwise, documents without valid IDs will fail to be imported. Only - // set this field when using GcsSource or BigQuerySource, and when + // Otherwise, documents without valid IDs fail to be imported. Only set + // this field when using GcsSource or BigQuerySource, and when // GcsSource.data_schema or BigQuerySource.data_schema is `custom`. And // only set this field when auto_generate_ids is unset or set as // `false`. Otherwise, an INVALID_ARGUMENT error is thrown. If it is @@ -2070,9 +2067,9 @@ func (s *GoogleCloudDiscoveryengineV1betaImportDocumentsResponse) MarshalJSON() // destination for Import related errors. type GoogleCloudDiscoveryengineV1betaImportErrorConfig struct { // GcsPrefix: Cloud Storage prefix for import errors. This must be an - // empty, existing Cloud Storage directory. Import errors will be - // written to sharded files in this directory, one per line, as a - // JSON-encoded `google.rpc.Status` message. + // empty, existing Cloud Storage directory. Import errors are written to + // sharded files in this directory, one per line, as a JSON-encoded + // `google.rpc.Status` message. GcsPrefix string `json:"gcsPrefix,omitempty"` // ForceSendFields is a list of field names (e.g. "GcsPrefix") to @@ -2099,8 +2096,8 @@ func (s *GoogleCloudDiscoveryengineV1betaImportErrorConfig) MarshalJSON() ([]byt } // GoogleCloudDiscoveryengineV1betaImportUserEventsMetadata: Metadata -// related to the progress of the Import operation. This will be -// returned by the google.longrunning.Operation.metadata field. +// related to the progress of the Import operation. This is returned by +// the google.longrunning.Operation.metadata field. type GoogleCloudDiscoveryengineV1betaImportUserEventsMetadata struct { // CreateTime: Operation create time. CreateTime string `json:"createTime,omitempty"` @@ -2354,16 +2351,16 @@ type GoogleCloudDiscoveryengineV1betaPageInfo struct { // different hierarchies. If '>' is part of the category name, please // replace it with other character(s). Category pages include special // pages such as sales or promotions. For instance, a special sale page - // may have the category hierarchy: "pageCategory" : "Sales > 2017 Black - // Friday Deals". Required for `view-category-page` events. Other event - // types should not set this field. Otherwise, an INVALID_ARGUMENT error - // is returned. + // may have the category hierarchy: "pageCategory" : "Sales > 2017 + // Black Friday Deals". Required for `view-category-page` events. Other + // event types should not set this field. Otherwise, an + // `INVALID_ARGUMENT` error is returned. PageCategory string `json:"pageCategory,omitempty"` // PageviewId: A unique ID of a web page view. This should be kept the // same for all user events triggered from the same pageview. For // example, an item detail page view could trigger multiple events as - // the user is browsing the page. The `pageViewId` property should be + // the user is browsing the page. The `pageview_id` property should be // kept the same for all these events so that they can be grouped // together properly. When using the client side event reporting with // JavaScript pixel and Google Tag Manager, this value is filled in @@ -2787,25 +2784,25 @@ type GoogleCloudDiscoveryengineV1betaSearchInfo struct { // Offset: An integer that specifies the current offset for pagination // (the 0-indexed starting location, amongst the products deemed by the // API as relevant). See SearchRequest.offset for definition. If this - // field is negative, an INVALID_ARGUMENT is returned. This can only be - // set for `search` events. Other event types should not set this field. - // Otherwise, an INVALID_ARGUMENT error is returned. + // field is negative, an `INVALID_ARGUMENT` is returned. This can only + // be set for `search` events. Other event types should not set this + // field. Otherwise, an `INVALID_ARGUMENT` error is returned. Offset int64 `json:"offset,omitempty"` // OrderBy: The order in which products are returned, if applicable. See // SearchRequest.order_by for definition and syntax. The value must be a // UTF-8 encoded string with a length limit of 1,000 characters. - // Otherwise, an INVALID_ARGUMENT error is returned. This can only be + // Otherwise, an `INVALID_ARGUMENT` error is returned. This can only be // set for `search` events. Other event types should not set this field. - // Otherwise, an INVALID_ARGUMENT error is returned. + // Otherwise, an `INVALID_ARGUMENT` error is returned. OrderBy string `json:"orderBy,omitempty"` // SearchQuery: The user's search query. See SearchRequest.query for // definition. The value must be a UTF-8 encoded string with a length - // limit of 5,000 characters. Otherwise, an INVALID_ARGUMENT error is + // limit of 5,000 characters. Otherwise, an `INVALID_ARGUMENT` error is // returned. At least one of search_query or PageInfo.page_category is // required for `search` events. Other event types should not set this - // field. Otherwise, an INVALID_ARGUMENT error is returned. + // field. Otherwise, an `INVALID_ARGUMENT` error is returned. SearchQuery string `json:"searchQuery,omitempty"` // ForceSendFields is a list of field names (e.g. "Offset") to @@ -2928,7 +2925,7 @@ type GoogleCloudDiscoveryengineV1betaUserEvent struct { // allowed. Each value must be a UTF-8 encoded string with a length // limit of 256 characters. * For number attributes, at most 400 values // are allowed. For product recommendations, an example of extra user - // information is ` traffic_channel`, which is how a user arrives at the + // information is `traffic_channel`, which is how a user arrives at the // site. Users can arrive at the site by coming to the site directly, // coming through Google search, or in other ways. Attributes map[string]GoogleCloudDiscoveryengineV1betaCustomAttribute `json:"attributes,omitempty"` @@ -2937,23 +2934,22 @@ type GoogleCloudDiscoveryengineV1betaUserEvent struct { // action(s) to trigger the event. Highly recommended for user events // that are the result of RecommendationService.Recommend. This field // enables accurate attribution of recommendation model performance. The - // value must be one of: * PredictResponse.attribution_token for events - // that are the result of RecommendationService.Recommend. * + // value must be one of: * RecommendResponse.attribution_token for + // events that are the result of RecommendationService.Recommend. * // SearchResponse.attribution_token for events that are the result of - // SearchService.Search. * CompleteQueryResponse.attribution_token for - // events that are the result of CompletionService.CompleteQuery. This - // token enables us to accurately attribute page view or conversion - // completion back to the event and the particular predict response - // containing this clicked/purchased product. If user clicks on product - // K in the recommendation results, pass - // PredictResponse.attribution_token as a URL parameter to product K's - // page. When recording events on product K's page, log the - // PredictResponse.attribution_token to this field. + // SearchService.Search. This token enables us to accurately attribute + // page view or conversion completion back to the event and the + // particular predict response containing this clicked/purchased + // product. If user clicks on product K in the recommendation results, + // pass RecommendResponse.attribution_token as a URL parameter to + // product K's page. When recording events on product K's page, log the + // RecommendResponse.attribution_token to this field. AttributionToken string `json:"attributionToken,omitempty"` - // CompletionInfo: CompleteQuery API details related to the event. This - // field should be set for `search` event when autocomplete function is - // enabled and the user clicks a suggestion for search. + // CompletionInfo: CompletionService.CompleteQuery details related to + // the event. This field should be set for `search` event when + // autocomplete function is enabled and the user clicks a suggestion for + // search. CompletionInfo *GoogleCloudDiscoveryengineV1betaCompletionInfo `json:"completionInfo,omitempty"` // DirectUserRequest: Should set to true if the request is made directly @@ -3001,7 +2997,7 @@ type GoogleCloudDiscoveryengineV1betaUserEvent struct { // directly from RecommendationService.RecommendRequest.filter // conforming to https://google.aip.dev/160#filtering. The value must be // a UTF-8 encoded string with a length limit of 1,000 characters. - // Otherwise, an INVALID_ARGUMENT error is returned. + // Otherwise, an `INVALID_ARGUMENT` error is returned. Filter string `json:"filter,omitempty"` // MediaInfo: Media-specific info. @@ -3018,8 +3014,8 @@ type GoogleCloudDiscoveryengineV1betaUserEvent struct { // promotions. Currently, this field is restricted to at most one ID. PromotionIds []string `json:"promotionIds,omitempty"` - // SearchInfo: Search API details related to the event. This field - // should be set for `search` event. + // SearchInfo: SearchService.Search details related to the event. This + // field should be set for `search` event. SearchInfo *GoogleCloudDiscoveryengineV1betaSearchInfo `json:"searchInfo,omitempty"` // SessionId: A unique identifier for tracking a visitor session with a @@ -3051,8 +3047,8 @@ type GoogleCloudDiscoveryengineV1betaUserEvent struct { // users. This mixes the event history of those users together, which // results in degraded model quality. The field must be a UTF-8 encoded // string with a length limit of 128 characters. Otherwise, an - // INVALID_ARGUMENT error is returned. The field should not contain PII - // or user-data. We recommend to use Google Analytics Client ID + // `INVALID_ARGUMENT` error is returned. The field should not contain + // PII or user-data. We recommend to use Google Analytics Client ID // (https://developers.google.com/analytics/devguides/collection/analyticsjs/field-reference#clientId) // for this field. UserPseudoId string `json:"userPseudoId,omitempty"` @@ -3086,13 +3082,12 @@ func (s *GoogleCloudDiscoveryengineV1betaUserEvent) MarshalJSON() ([]byte, error // GoogleCloudDiscoveryengineV1betaUserInfo: Information of an end user. type GoogleCloudDiscoveryengineV1betaUserInfo struct { - // UserAgent: User agent as included in the HTTP header. Required for - // getting SearchResponse.sponsored_results. The field must be a UTF-8 - // encoded string with a length limit of 1,000 characters. Otherwise, an - // `INVALID_ARGUMENT` error is returned. This should not be set when - // using the client side event reporting with GTM or JavaScript tag in - // UserEventService.CollectUserEvent or if UserEvent.direct_user_request - // is set. + // UserAgent: User agent as included in the HTTP header. The field must + // be a UTF-8 encoded string with a length limit of 1,000 characters. + // Otherwise, an `INVALID_ARGUMENT` error is returned. This should not + // be set when using the client side event reporting with GTM or + // JavaScript tag in UserEventService.CollectUserEvent or if + // UserEvent.direct_user_request is set. UserAgent string `json:"userAgent,omitempty"` // UserId: Highly recommended for logged-in users. Unique identifier for @@ -3950,7 +3945,7 @@ type ProjectsLocationsCollectionsDataStoresBranchesDocumentsListCall struct { // `projects/{project}/locations/{location}/collections/{collection}/da // taStores/{data_store}/branches/{branch}`. Use `default_branch` as // the branch ID, to list documents under the default branch. If the -// caller does not have permission to list Documentss under this +// caller does not have permission to list Documents under this // branch, regardless of whether or not this branch exists, a // `PERMISSION_DENIED` error is returned. func (r *ProjectsLocationsCollectionsDataStoresBranchesDocumentsService) List(parent string) *ProjectsLocationsCollectionsDataStoresBranchesDocumentsListCall { @@ -4100,7 +4095,7 @@ func (c *ProjectsLocationsCollectionsDataStoresBranchesDocumentsListCall) Do(opt // "type": "string" // }, // "parent": { - // "description": "Required. The parent branch resource name, such as `projects/{project}/locations/{location}/collections/{collection}/dataStores/{data_store}/branches/{branch}`. Use `default_branch` as the branch ID, to list documents under the default branch. If the caller does not have permission to list Documentss under this branch, regardless of whether or not this branch exists, a `PERMISSION_DENIED` error is returned.", + // "description": "Required. The parent branch resource name, such as `projects/{project}/locations/{location}/collections/{collection}/dataStores/{data_store}/branches/{branch}`. Use `default_branch` as the branch ID, to list documents under the default branch. If the caller does not have permission to list Documents under this branch, regardless of whether or not this branch exists, a `PERMISSION_DENIED` error is returned.", // "location": "path", // "pattern": "^projects/[^/]+/locations/[^/]+/collections/[^/]+/dataStores/[^/]+/branches/[^/]+$", // "required": true, @@ -6029,7 +6024,7 @@ type ProjectsLocationsCollectionsDataStoresUserEventsCollectCall struct { } // Collect: Writes a single user event from the browser. This uses a GET -// request to due to browser restriction of POST-ing to a 3rd party +// request to due to browser restriction of POST-ing to a third-party // domain. This method is used only by the Discovery Engine API // JavaScript pixel and Google Tag Manager. Users should not call this // method directly. @@ -6054,7 +6049,7 @@ func (c *ProjectsLocationsCollectionsDataStoresUserEventsCollectCall) Ets(ets in // Uri sets the optional parameter "uri": The URL including // cgi-parameters but excluding the hash fragment with a length limit of // 5,000 characters. This is often more useful than the referer URL, -// because many browsers only send the domain for 3rd party requests. +// because many browsers only send the domain for third-party requests. func (c *ProjectsLocationsCollectionsDataStoresUserEventsCollectCall) Uri(uri string) *ProjectsLocationsCollectionsDataStoresUserEventsCollectCall { c.urlParams_.Set("uri", uri) return c @@ -6166,7 +6161,7 @@ func (c *ProjectsLocationsCollectionsDataStoresUserEventsCollectCall) Do(opts .. } return ret, nil // { - // "description": "Writes a single user event from the browser. This uses a GET request to due to browser restriction of POST-ing to a 3rd party domain. This method is used only by the Discovery Engine API JavaScript pixel and Google Tag Manager. Users should not call this method directly.", + // "description": "Writes a single user event from the browser. This uses a GET request to due to browser restriction of POST-ing to a third-party domain. This method is used only by the Discovery Engine API JavaScript pixel and Google Tag Manager. Users should not call this method directly.", // "flatPath": "v1beta/projects/{projectsId}/locations/{locationsId}/collections/{collectionsId}/dataStores/{dataStoresId}/userEvents:collect", // "httpMethod": "GET", // "id": "discoveryengine.projects.locations.collections.dataStores.userEvents.collect", @@ -6188,7 +6183,7 @@ func (c *ProjectsLocationsCollectionsDataStoresUserEventsCollectCall) Do(opts .. // "type": "string" // }, // "uri": { - // "description": "The URL including cgi-parameters but excluding the hash fragment with a length limit of 5,000 characters. This is often more useful than the referer URL, because many browsers only send the domain for 3rd party requests.", + // "description": "The URL including cgi-parameters but excluding the hash fragment with a length limit of 5,000 characters. This is often more useful than the referer URL, because many browsers only send the domain for third-party requests.", // "location": "query", // "type": "string" // }, @@ -7836,7 +7831,7 @@ type ProjectsLocationsDataStoresBranchesDocumentsListCall struct { // `projects/{project}/locations/{location}/collections/{collection}/da // taStores/{data_store}/branches/{branch}`. Use `default_branch` as // the branch ID, to list documents under the default branch. If the -// caller does not have permission to list Documentss under this +// caller does not have permission to list Documents under this // branch, regardless of whether or not this branch exists, a // `PERMISSION_DENIED` error is returned. func (r *ProjectsLocationsDataStoresBranchesDocumentsService) List(parent string) *ProjectsLocationsDataStoresBranchesDocumentsListCall { @@ -7986,7 +7981,7 @@ func (c *ProjectsLocationsDataStoresBranchesDocumentsListCall) Do(opts ...google // "type": "string" // }, // "parent": { - // "description": "Required. The parent branch resource name, such as `projects/{project}/locations/{location}/collections/{collection}/dataStores/{data_store}/branches/{branch}`. Use `default_branch` as the branch ID, to list documents under the default branch. If the caller does not have permission to list Documentss under this branch, regardless of whether or not this branch exists, a `PERMISSION_DENIED` error is returned.", + // "description": "Required. The parent branch resource name, such as `projects/{project}/locations/{location}/collections/{collection}/dataStores/{data_store}/branches/{branch}`. Use `default_branch` as the branch ID, to list documents under the default branch. If the caller does not have permission to list Documents under this branch, regardless of whether or not this branch exists, a `PERMISSION_DENIED` error is returned.", // "location": "path", // "pattern": "^projects/[^/]+/locations/[^/]+/dataStores/[^/]+/branches/[^/]+$", // "required": true, @@ -9560,7 +9555,7 @@ type ProjectsLocationsDataStoresUserEventsCollectCall struct { } // Collect: Writes a single user event from the browser. This uses a GET -// request to due to browser restriction of POST-ing to a 3rd party +// request to due to browser restriction of POST-ing to a third-party // domain. This method is used only by the Discovery Engine API // JavaScript pixel and Google Tag Manager. Users should not call this // method directly. @@ -9585,7 +9580,7 @@ func (c *ProjectsLocationsDataStoresUserEventsCollectCall) Ets(ets int64) *Proje // Uri sets the optional parameter "uri": The URL including // cgi-parameters but excluding the hash fragment with a length limit of // 5,000 characters. This is often more useful than the referer URL, -// because many browsers only send the domain for 3rd party requests. +// because many browsers only send the domain for third-party requests. func (c *ProjectsLocationsDataStoresUserEventsCollectCall) Uri(uri string) *ProjectsLocationsDataStoresUserEventsCollectCall { c.urlParams_.Set("uri", uri) return c @@ -9697,7 +9692,7 @@ func (c *ProjectsLocationsDataStoresUserEventsCollectCall) Do(opts ...googleapi. } return ret, nil // { - // "description": "Writes a single user event from the browser. This uses a GET request to due to browser restriction of POST-ing to a 3rd party domain. This method is used only by the Discovery Engine API JavaScript pixel and Google Tag Manager. Users should not call this method directly.", + // "description": "Writes a single user event from the browser. This uses a GET request to due to browser restriction of POST-ing to a third-party domain. This method is used only by the Discovery Engine API JavaScript pixel and Google Tag Manager. Users should not call this method directly.", // "flatPath": "v1beta/projects/{projectsId}/locations/{locationsId}/dataStores/{dataStoresId}/userEvents:collect", // "httpMethod": "GET", // "id": "discoveryengine.projects.locations.dataStores.userEvents.collect", @@ -9719,7 +9714,7 @@ func (c *ProjectsLocationsDataStoresUserEventsCollectCall) Do(opts ...googleapi. // "type": "string" // }, // "uri": { - // "description": "The URL including cgi-parameters but excluding the hash fragment with a length limit of 5,000 characters. This is often more useful than the referer URL, because many browsers only send the domain for 3rd party requests.", + // "description": "The URL including cgi-parameters but excluding the hash fragment with a length limit of 5,000 characters. This is often more useful than the referer URL, because many browsers only send the domain for third-party requests.", // "location": "query", // "type": "string" // }, diff --git a/displayvideo/v1/displayvideo-api.json b/displayvideo/v1/displayvideo-api.json index 0dfbb356132..31d6ae99346 100644 --- a/displayvideo/v1/displayvideo-api.json +++ b/displayvideo/v1/displayvideo-api.json @@ -1775,7 +1775,7 @@ "type": "string" }, "filter": { - "description": "Allows filtering by insertion order fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by `AND` or `OR` logical operators. A sequence of restrictions implicitly uses `AND`. * A restriction has the form of `{field} {operator} {value}`. * The `budget.budget_segments.date_range.end_date` field must use the `LESS THAN (\u003c)` operator. * The `updateTime` field must use the `GREATER THAN OR EQUAL TO (\u003e=)` or `LESS THAN OR EQUAL TO (\u003c=)` operators. * All other fields must use the `EQUALS (=)` operator. Supported fields: * `campaignId` * `displayName` * `entityStatus` * `budget.budget_segments.date_range.end_date` (input in the form of `YYYY-MM-DD`) * **Deprecated. Not available after June 21, 2023** * `updateTime` (input in ISO 8601 format, or `YYYY-MM-DDTHH:MM:SSZ`) Examples: * All insertion orders under a campaign: `campaignId=\"1234\"` * All `ENTITY_STATUS_ACTIVE` or `ENTITY_STATUS_PAUSED` insertion orders under an advertiser: `(entityStatus=\"ENTITY_STATUS_ACTIVE\" OR entityStatus=\"ENTITY_STATUS_PAUSED\")` * All insertion orders with an update time less than or equal to 2020-11-04T18:54:47Z (format of ISO 8601): `updateTime\u003c=\"2020-11-04T18:54:47Z\"` * All insertion orders with an update time greater than or equal to 2020-11-04T18:54:47Z (format of ISO 8601): `updateTime\u003e=\"2020-11-04T18:54:47Z\"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information.", + "description": "Allows filtering by insertion order fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by `AND` or `OR` logical operators. A sequence of restrictions implicitly uses `AND`. * A restriction has the form of `{field} {operator} {value}`. * The `updateTime` field must use the `GREATER THAN OR EQUAL TO (\u003e=)` or `LESS THAN OR EQUAL TO (\u003c=)` operators. * All other fields must use the `EQUALS (=)` operator. Supported fields: * `campaignId` * `displayName` * `entityStatus` * `updateTime` (input in ISO 8601 format, or `YYYY-MM-DDTHH:MM:SSZ`) Examples: * All insertion orders under a campaign: `campaignId=\"1234\"` * All `ENTITY_STATUS_ACTIVE` or `ENTITY_STATUS_PAUSED` insertion orders under an advertiser: `(entityStatus=\"ENTITY_STATUS_ACTIVE\" OR entityStatus=\"ENTITY_STATUS_PAUSED\")` * All insertion orders with an update time less than or equal to 2020-11-04T18:54:47Z (format of ISO 8601): `updateTime\u003c=\"2020-11-04T18:54:47Z\"` * All insertion orders with an update time greater than or equal to 2020-11-04T18:54:47Z (format of ISO 8601): `updateTime\u003e=\"2020-11-04T18:54:47Z\"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information.", "location": "query", "type": "string" }, @@ -2503,12 +2503,12 @@ "type": "string" }, "filter": { - "description": "Allows filtering by line item fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by `AND` or `OR` logical operators. A sequence of restrictions implicitly uses `AND`. * A restriction has the form of `{field} {operator} {value}`. * The `flight.dateRange.endDate` field must use the `LESS THAN (\u003c)` operator. * The `updateTime` field must use the `GREATER THAN OR EQUAL TO (\u003e=)` or `LESS THAN OR EQUAL TO (\u003c=)` operators. * The `warningMessages` field must use the `HAS (:)` operator. * All other fields must use the `EQUALS (=)` operator. Supported fields: * `campaignId` * `displayName` * `entityStatus` * `flight.dateRange.endDate` (input formatted as `YYYY-MM-DD`) * **Deprecated. Not available after June 21, 2023** * `flight.triggerId` * **Deprecated. Not available after June 21, 2023** * `insertionOrderId` * `lineItemId` * `lineItemType` * `targetedChannelId` * **Deprecated. Not available after June 21, 2023** * `targetedNegativeKeywordListId` * **Deprecated. Not available after June 21, 2023** * `updateTime` (input in ISO 8601 format, or `YYYY-MM-DDTHH:MM:SSZ`) * `warningMessages` * **Deprecated. Not available after June 21, 2023** Examples: * All line items under an insertion order: `insertionOrderId=\"1234\"` * All `ENTITY_STATUS_ACTIVE` or `ENTITY_STATUS_PAUSED` and `LINE_ITEM_TYPE_DISPLAY_DEFAULT` line items under an advertiser: `(entityStatus=\"ENTITY_STATUS_ACTIVE\" OR entityStatus=\"ENTITY_STATUS_PAUSED\") AND lineItemType=\"LINE_ITEM_TYPE_DISPLAY_DEFAULT\"` * All line items with an update time less than or equal to 2020-11-04T18:54:47Z (format of ISO 8601): `updateTime\u003c=\"2020-11-04T18:54:47Z\"` * All line items with an update time greater than or equal to 2020-11-04T18:54:47Z (format of ISO 8601): `updateTime\u003e=\"2020-11-04T18:54:47Z\"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information.", + "description": "Allows filtering by line item fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by `AND` or `OR` logical operators. A sequence of restrictions implicitly uses `AND`. * A restriction has the form of `{field} {operator} {value}`. * The `updateTime` field must use the `GREATER THAN OR EQUAL TO (\u003e=)` or `LESS THAN OR EQUAL TO (\u003c=)` operators. * All other fields must use the `EQUALS (=)` operator. Supported fields: * `campaignId` * `displayName` * `entityStatus` * `insertionOrderId` * `lineItemId` * `lineItemType` * `updateTime` (input in ISO 8601 format, or `YYYY-MM-DDTHH:MM:SSZ`) Examples: * All line items under an insertion order: `insertionOrderId=\"1234\"` * All `ENTITY_STATUS_ACTIVE` or `ENTITY_STATUS_PAUSED` and `LINE_ITEM_TYPE_DISPLAY_DEFAULT` line items under an advertiser: `(entityStatus=\"ENTITY_STATUS_ACTIVE\" OR entityStatus=\"ENTITY_STATUS_PAUSED\") AND lineItemType=\"LINE_ITEM_TYPE_DISPLAY_DEFAULT\"` * All line items with an update time less than or equal to 2020-11-04T18:54:47Z (format of ISO 8601): `updateTime\u003c=\"2020-11-04T18:54:47Z\"` * All line items with an update time greater than or equal to 2020-11-04T18:54:47Z (format of ISO 8601): `updateTime\u003e=\"2020-11-04T18:54:47Z\"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information.", "location": "query", "type": "string" }, "orderBy": { - "description": "Field by which to sort the list. Acceptable values are: * `displayName` (default) * `entityStatus` * `flight.dateRange.endDate` * **Deprecated. Not available after June 21, 2023** * `updateTime` The default sorting order is ascending. To specify descending order for a field, a suffix \"desc\" should be added to the field name. Example: `displayName desc`.", + "description": "Field by which to sort the list. Acceptable values are: * `displayName` (default) * `entityStatus` * `updateTime` The default sorting order is ascending. To specify descending order for a field, a suffix \"desc\" should be added to the field name. Example: `displayName desc`.", "location": "query", "type": "string" }, @@ -6227,6 +6227,12 @@ "inventorySourceId" ], "parameters": { + "advertiserId": { + "description": "Optional. The advertiser_id is optional, when it is provided, the advertiser access is used.", + "format": "int64", + "location": "query", + "type": "string" + }, "inventorySourceId": { "description": "Required. The ID of the inventory source to fetch.", "format": "int64", @@ -8146,7 +8152,7 @@ } } }, - "revision": "20230615", + "revision": "20230627", "rootUrl": "https://displayvideo.googleapis.com/", "schemas": { "ActivateManualTriggerRequest": { @@ -10890,6 +10896,20 @@ "SDF_VERSION_5_5", "SDF_VERSION_6" ], + "enumDeprecated": [ + false, + true, + true, + true, + true, + true, + true, + true, + true, + false, + false, + false + ], "enumDescriptions": [ "SDF version value is not specified or is unknown in this version.", "SDF version 3.1", @@ -13114,6 +13134,17 @@ "YOUTUBE_USERS", "LICENSED" ], + "enumDeprecated": [ + false, + false, + false, + false, + true, + true, + false, + false, + false + ], "enumDescriptions": [ "Default value when type is not specified or is unknown.", "Audience was generated through matching customers to known contact information.", @@ -13715,6 +13746,15 @@ "GOOGLE_AUDIENCE_TYPE_LIFE_EVENT", "GOOGLE_AUDIENCE_TYPE_EXTENDED_DEMOGRAPHIC" ], + "enumDeprecated": [ + false, + false, + false, + true, + true, + false, + false + ], "enumDescriptions": [ "Default value when type is not specified or is unknown.", "Affinity type Google audience.", @@ -17094,6 +17134,12 @@ "PARTNER_REVENUE_MODEL_MARKUP_TYPE_MEDIA_COST_MARKUP", "PARTNER_REVENUE_MODEL_MARKUP_TYPE_TOTAL_MEDIA_COST_MARKUP" ], + "enumDeprecated": [ + false, + false, + true, + false + ], "enumDescriptions": [ "Type value is not specified or is unknown in this version.", "Calculate the partner revenue based on a fixed CPM.", @@ -17656,6 +17702,20 @@ "SDF_VERSION_5_5", "SDF_VERSION_6" ], + "enumDeprecated": [ + false, + true, + true, + true, + true, + true, + true, + true, + true, + false, + false, + false + ], "enumDescriptions": [ "SDF version value is not specified or is unknown in this version.", "SDF version 3.1", @@ -17716,6 +17776,20 @@ "SDF_VERSION_5_5", "SDF_VERSION_6" ], + "enumDeprecated": [ + false, + true, + true, + true, + true, + true, + true, + true, + true, + false, + false, + false + ], "enumDescriptions": [ "SDF version value is not specified or is unknown in this version.", "SDF version 3.1", @@ -17965,6 +18039,7 @@ "id": "TargetingExpansionConfig", "properties": { "excludeFirstPartyAudience": { + "deprecated": true, "description": "Whether to exclude first-party audiences from use in targeting expansion. This field was deprecated with the launch of [optimized targeting](//support.google.com/displayvideo/answer/12060859). This field will be set to `false`. If this field is set to `true` when deprecated, all positive first-party audience targeting assigned to this line item will be replaced with negative targeting of the same first-party audiences to ensure the continued exclusion of those audiences.", "type": "boolean" }, @@ -17979,6 +18054,15 @@ "MORE_EXPANSION", "MOST_EXPANSION" ], + "enumDeprecated": [ + false, + false, + false, + true, + true, + true, + true + ], "enumDescriptions": [ "The optimized targeting setting is not specified or is unknown in this version.", "Optimized targeting is off.", diff --git a/displayvideo/v1/displayvideo-gen.go b/displayvideo/v1/displayvideo-gen.go index 26b20abbc36..10d799babff 100644 --- a/displayvideo/v1/displayvideo-gen.go +++ b/displayvideo/v1/displayvideo-gen.go @@ -22936,14 +22936,10 @@ func (r *AdvertisersInsertionOrdersService) List(advertiserId int64) *Advertiser // made up of one or more restrictions. * Restrictions can be combined // by `AND` or `OR` logical operators. A sequence of restrictions // implicitly uses `AND`. * A restriction has the form of `{field} -// {operator} {value}`. * The -// `budget.budget_segments.date_range.end_date` field must use the `LESS -// THAN (<)` operator. * The `updateTime` field must use the `GREATER +// {operator} {value}`. * The `updateTime` field must use the `GREATER // THAN OR EQUAL TO (>=)` or `LESS THAN OR EQUAL TO (<=)` operators. * // All other fields must use the `EQUALS (=)` operator. Supported // fields: * `campaignId` * `displayName` * `entityStatus` * -// `budget.budget_segments.date_range.end_date` (input in the form of -// `YYYY-MM-DD`) * **Deprecated. Not available after June 21, 2023** * // `updateTime` (input in ISO 8601 format, or `YYYY-MM-DDTHH:MM:SSZ`) // Examples: * All insertion orders under a campaign: // `campaignId="1234" * All `ENTITY_STATUS_ACTIVE` or @@ -23107,7 +23103,7 @@ func (c *AdvertisersInsertionOrdersListCall) Do(opts ...googleapi.CallOption) (* // "type": "string" // }, // "filter": { - // "description": "Allows filtering by insertion order fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by `AND` or `OR` logical operators. A sequence of restrictions implicitly uses `AND`. * A restriction has the form of `{field} {operator} {value}`. * The `budget.budget_segments.date_range.end_date` field must use the `LESS THAN (\u003c)` operator. * The `updateTime` field must use the `GREATER THAN OR EQUAL TO (\u003e=)` or `LESS THAN OR EQUAL TO (\u003c=)` operators. * All other fields must use the `EQUALS (=)` operator. Supported fields: * `campaignId` * `displayName` * `entityStatus` * `budget.budget_segments.date_range.end_date` (input in the form of `YYYY-MM-DD`) * **Deprecated. Not available after June 21, 2023** * `updateTime` (input in ISO 8601 format, or `YYYY-MM-DDTHH:MM:SSZ`) Examples: * All insertion orders under a campaign: `campaignId=\"1234\"` * All `ENTITY_STATUS_ACTIVE` or `ENTITY_STATUS_PAUSED` insertion orders under an advertiser: `(entityStatus=\"ENTITY_STATUS_ACTIVE\" OR entityStatus=\"ENTITY_STATUS_PAUSED\")` * All insertion orders with an update time less than or equal to 2020-11-04T18:54:47Z (format of ISO 8601): `updateTime\u003c=\"2020-11-04T18:54:47Z\"` * All insertion orders with an update time greater than or equal to 2020-11-04T18:54:47Z (format of ISO 8601): `updateTime\u003e=\"2020-11-04T18:54:47Z\"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information.", + // "description": "Allows filtering by insertion order fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by `AND` or `OR` logical operators. A sequence of restrictions implicitly uses `AND`. * A restriction has the form of `{field} {operator} {value}`. * The `updateTime` field must use the `GREATER THAN OR EQUAL TO (\u003e=)` or `LESS THAN OR EQUAL TO (\u003c=)` operators. * All other fields must use the `EQUALS (=)` operator. Supported fields: * `campaignId` * `displayName` * `entityStatus` * `updateTime` (input in ISO 8601 format, or `YYYY-MM-DDTHH:MM:SSZ`) Examples: * All insertion orders under a campaign: `campaignId=\"1234\"` * All `ENTITY_STATUS_ACTIVE` or `ENTITY_STATUS_PAUSED` insertion orders under an advertiser: `(entityStatus=\"ENTITY_STATUS_ACTIVE\" OR entityStatus=\"ENTITY_STATUS_PAUSED\")` * All insertion orders with an update time less than or equal to 2020-11-04T18:54:47Z (format of ISO 8601): `updateTime\u003c=\"2020-11-04T18:54:47Z\"` * All insertion orders with an update time greater than or equal to 2020-11-04T18:54:47Z (format of ISO 8601): `updateTime\u003e=\"2020-11-04T18:54:47Z\"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information.", // "location": "query", // "type": "string" // }, @@ -25508,25 +25504,15 @@ func (r *AdvertisersLineItemsService) List(advertiserId int64) *AdvertisersLineI // one or more restrictions. * Restrictions can be combined by `AND` or // `OR` logical operators. A sequence of restrictions implicitly uses // `AND`. * A restriction has the form of `{field} {operator} {value}`. -// * The `flight.dateRange.endDate` field must use the `LESS THAN (<)` -// operator. * The `updateTime` field must use the `GREATER THAN OR -// EQUAL TO (>=)` or `LESS THAN OR EQUAL TO (<=)` operators. * The -// `warningMessages` field must use the `HAS (:)` operator. * All other -// fields must use the `EQUALS (=)` operator. Supported fields: * -// `campaignId` * `displayName` * `entityStatus` * -// `flight.dateRange.endDate` (input formatted as `YYYY-MM-DD`) * -// **Deprecated. Not available after June 21, 2023** * -// `flight.triggerId` * **Deprecated. Not available after June 21, -// 2023** * `insertionOrderId` * `lineItemId` * `lineItemType` * -// `targetedChannelId` * **Deprecated. Not available after June 21, -// 2023** * `targetedNegativeKeywordListId` * **Deprecated. Not -// available after June 21, 2023** * `updateTime` (input in ISO 8601 -// format, or `YYYY-MM-DDTHH:MM:SSZ`) * `warningMessages` * -// **Deprecated. Not available after June 21, 2023** Examples: * All -// line items under an insertion order: `insertionOrderId="1234" * All -// `ENTITY_STATUS_ACTIVE` or `ENTITY_STATUS_PAUSED` and -// `LINE_ITEM_TYPE_DISPLAY_DEFAULT` line items under an advertiser: -// `(entityStatus="ENTITY_STATUS_ACTIVE" OR +// * The `updateTime` field must use the `GREATER THAN OR EQUAL TO (>=)` +// or `LESS THAN OR EQUAL TO (<=)` operators. * All other fields must +// use the `EQUALS (=)` operator. Supported fields: * `campaignId` * +// `displayName` * `entityStatus` * `insertionOrderId` * `lineItemId` * +// `lineItemType` * `updateTime` (input in ISO 8601 format, or +// `YYYY-MM-DDTHH:MM:SSZ`) Examples: * All line items under an insertion +// order: `insertionOrderId="1234" * All `ENTITY_STATUS_ACTIVE` or +// `ENTITY_STATUS_PAUSED` and `LINE_ITEM_TYPE_DISPLAY_DEFAULT` line +// items under an advertiser: `(entityStatus="ENTITY_STATUS_ACTIVE" OR // entityStatus="ENTITY_STATUS_PAUSED") AND // lineItemType="LINE_ITEM_TYPE_DISPLAY_DEFAULT" * All line items with // an update time less than or equal to 2020-11-04T18:54:47Z (format of @@ -25543,11 +25529,9 @@ func (c *AdvertisersLineItemsListCall) Filter(filter string) *AdvertisersLineIte // OrderBy sets the optional parameter "orderBy": Field by which to sort // the list. Acceptable values are: * `displayName` (default) * -// `entityStatus` * `flight.dateRange.endDate` * **Deprecated. Not -// available after June 21, 2023** * `updateTime` The default sorting -// order is ascending. To specify descending order for a field, a suffix -// "desc" should be added to the field name. Example: `displayName -// desc`. +// `entityStatus` * `updateTime` The default sorting order is ascending. +// To specify descending order for a field, a suffix "desc" should be +// added to the field name. Example: `displayName desc`. func (c *AdvertisersLineItemsListCall) OrderBy(orderBy string) *AdvertisersLineItemsListCall { c.urlParams_.Set("orderBy", orderBy) return c @@ -25688,12 +25672,12 @@ func (c *AdvertisersLineItemsListCall) Do(opts ...googleapi.CallOption) (*ListLi // "type": "string" // }, // "filter": { - // "description": "Allows filtering by line item fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by `AND` or `OR` logical operators. A sequence of restrictions implicitly uses `AND`. * A restriction has the form of `{field} {operator} {value}`. * The `flight.dateRange.endDate` field must use the `LESS THAN (\u003c)` operator. * The `updateTime` field must use the `GREATER THAN OR EQUAL TO (\u003e=)` or `LESS THAN OR EQUAL TO (\u003c=)` operators. * The `warningMessages` field must use the `HAS (:)` operator. * All other fields must use the `EQUALS (=)` operator. Supported fields: * `campaignId` * `displayName` * `entityStatus` * `flight.dateRange.endDate` (input formatted as `YYYY-MM-DD`) * **Deprecated. Not available after June 21, 2023** * `flight.triggerId` * **Deprecated. Not available after June 21, 2023** * `insertionOrderId` * `lineItemId` * `lineItemType` * `targetedChannelId` * **Deprecated. Not available after June 21, 2023** * `targetedNegativeKeywordListId` * **Deprecated. Not available after June 21, 2023** * `updateTime` (input in ISO 8601 format, or `YYYY-MM-DDTHH:MM:SSZ`) * `warningMessages` * **Deprecated. Not available after June 21, 2023** Examples: * All line items under an insertion order: `insertionOrderId=\"1234\"` * All `ENTITY_STATUS_ACTIVE` or `ENTITY_STATUS_PAUSED` and `LINE_ITEM_TYPE_DISPLAY_DEFAULT` line items under an advertiser: `(entityStatus=\"ENTITY_STATUS_ACTIVE\" OR entityStatus=\"ENTITY_STATUS_PAUSED\") AND lineItemType=\"LINE_ITEM_TYPE_DISPLAY_DEFAULT\"` * All line items with an update time less than or equal to 2020-11-04T18:54:47Z (format of ISO 8601): `updateTime\u003c=\"2020-11-04T18:54:47Z\"` * All line items with an update time greater than or equal to 2020-11-04T18:54:47Z (format of ISO 8601): `updateTime\u003e=\"2020-11-04T18:54:47Z\"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information.", + // "description": "Allows filtering by line item fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by `AND` or `OR` logical operators. A sequence of restrictions implicitly uses `AND`. * A restriction has the form of `{field} {operator} {value}`. * The `updateTime` field must use the `GREATER THAN OR EQUAL TO (\u003e=)` or `LESS THAN OR EQUAL TO (\u003c=)` operators. * All other fields must use the `EQUALS (=)` operator. Supported fields: * `campaignId` * `displayName` * `entityStatus` * `insertionOrderId` * `lineItemId` * `lineItemType` * `updateTime` (input in ISO 8601 format, or `YYYY-MM-DDTHH:MM:SSZ`) Examples: * All line items under an insertion order: `insertionOrderId=\"1234\"` * All `ENTITY_STATUS_ACTIVE` or `ENTITY_STATUS_PAUSED` and `LINE_ITEM_TYPE_DISPLAY_DEFAULT` line items under an advertiser: `(entityStatus=\"ENTITY_STATUS_ACTIVE\" OR entityStatus=\"ENTITY_STATUS_PAUSED\") AND lineItemType=\"LINE_ITEM_TYPE_DISPLAY_DEFAULT\"` * All line items with an update time less than or equal to 2020-11-04T18:54:47Z (format of ISO 8601): `updateTime\u003c=\"2020-11-04T18:54:47Z\"` * All line items with an update time greater than or equal to 2020-11-04T18:54:47Z (format of ISO 8601): `updateTime\u003e=\"2020-11-04T18:54:47Z\"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information.", // "location": "query", // "type": "string" // }, // "orderBy": { - // "description": "Field by which to sort the list. Acceptable values are: * `displayName` (default) * `entityStatus` * `flight.dateRange.endDate` * **Deprecated. Not available after June 21, 2023** * `updateTime` The default sorting order is ascending. To specify descending order for a field, a suffix \"desc\" should be added to the field name. Example: `displayName desc`.", + // "description": "Field by which to sort the list. Acceptable values are: * `displayName` (default) * `entityStatus` * `updateTime` The default sorting order is ascending. To specify descending order for a field, a suffix \"desc\" should be added to the field name. Example: `displayName desc`.", // "location": "query", // "type": "string" // }, @@ -39430,6 +39414,14 @@ func (r *InventorySourcesService) Get(inventorySourceId int64) *InventorySources return c } +// AdvertiserId sets the optional parameter "advertiserId": The +// advertiser_id is optional, when it is provided, the advertiser access +// is used. +func (c *InventorySourcesGetCall) AdvertiserId(advertiserId int64) *InventorySourcesGetCall { + c.urlParams_.Set("advertiserId", fmt.Sprint(advertiserId)) + return c +} + // PartnerId sets the optional parameter "partnerId": Required. The ID // of the DV360 partner to which the fetched inventory source is // permissioned. @@ -39545,6 +39537,12 @@ func (c *InventorySourcesGetCall) Do(opts ...googleapi.CallOption) (*InventorySo // "inventorySourceId" // ], // "parameters": { + // "advertiserId": { + // "description": "Optional. The advertiser_id is optional, when it is provided, the advertiser access is used.", + // "format": "int64", + // "location": "query", + // "type": "string" + // }, // "inventorySourceId": { // "description": "Required. The ID of the inventory source to fetch.", // "format": "int64", diff --git a/displayvideo/v2/displayvideo-api.json b/displayvideo/v2/displayvideo-api.json index ba121919d69..3e8575badd3 100644 --- a/displayvideo/v2/displayvideo-api.json +++ b/displayvideo/v2/displayvideo-api.json @@ -1731,7 +1731,7 @@ "type": "string" }, "filter": { - "description": "Allows filtering by insertion order fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by `AND` or `OR` logical operators. A sequence of restrictions implicitly uses `AND`. * A restriction has the form of `{field} {operator} {value}`. * The `budget.budget_segments.date_range.end_date` field must use the `LESS THAN (\u003c)` operator. * The `updateTime` field must use the `GREATER THAN OR EQUAL TO (\u003e=)` or `LESS THAN OR EQUAL TO (\u003c=)` operators. * All other fields must use the `EQUALS (=)` operator. Supported fields: * `campaignId` * `displayName` * `entityStatus` * `budget.budget_segments.date_range.end_date` (input in the form of `YYYY-MM-DD`) * **Deprecated. Not available after June 21, 2023** * `updateTime` (input in ISO 8601 format, or `YYYY-MM-DDTHH:MM:SSZ`) Examples: * All insertion orders under a campaign: `campaignId=\"1234\"` * All `ENTITY_STATUS_ACTIVE` or `ENTITY_STATUS_PAUSED` insertion orders under an advertiser: `(entityStatus=\"ENTITY_STATUS_ACTIVE\" OR entityStatus=\"ENTITY_STATUS_PAUSED\")` * All insertion orders with an update time less than or equal to 2020-11-04T18:54:47Z (format of ISO 8601): `updateTime\u003c=\"2020-11-04T18:54:47Z\"` * All insertion orders with an update time greater than or equal to 2020-11-04T18:54:47Z (format of ISO 8601): `updateTime\u003e=\"2020-11-04T18:54:47Z\"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information.", + "description": "Allows filtering by insertion order fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by `AND` or `OR` logical operators. A sequence of restrictions implicitly uses `AND`. * A restriction has the form of `{field} {operator} {value}`. * The `updateTime` field must use the `GREATER THAN OR EQUAL TO (\u003e=)` or `LESS THAN OR EQUAL TO (\u003c=)` operators. * All other fields must use the `EQUALS (=)` operator. Supported fields: * `campaignId` * `displayName` * `entityStatus` * `updateTime` (input in ISO 8601 format, or `YYYY-MM-DDTHH:MM:SSZ`) Examples: * All insertion orders under a campaign: `campaignId=\"1234\"` * All `ENTITY_STATUS_ACTIVE` or `ENTITY_STATUS_PAUSED` insertion orders under an advertiser: `(entityStatus=\"ENTITY_STATUS_ACTIVE\" OR entityStatus=\"ENTITY_STATUS_PAUSED\")` * All insertion orders with an update time less than or equal to 2020-11-04T18:54:47Z (format of ISO 8601): `updateTime\u003c=\"2020-11-04T18:54:47Z\"` * All insertion orders with an update time greater than or equal to 2020-11-04T18:54:47Z (format of ISO 8601): `updateTime\u003e=\"2020-11-04T18:54:47Z\"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information.", "location": "query", "type": "string" }, @@ -2884,12 +2884,12 @@ "type": "string" }, "filter": { - "description": "Allows filtering by line item fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by `AND` or `OR` logical operators. A sequence of restrictions implicitly uses `AND`. * A restriction has the form of `{field} {operator} {value}`. * The `flight.dateRange.endDate` field must use the `LESS THAN (\u003c)` operator. * The `updateTime` field must use the `GREATER THAN OR EQUAL TO (\u003e=)` or `LESS THAN OR EQUAL TO (\u003c=)` operators. * The `warningMessages` field must use the `HAS (:)` operator. * All other fields must use the `EQUALS (=)` operator. Supported fields: * `campaignId` * `displayName` * `entityStatus` * `flight.dateRange.endDate` (input formatted as `YYYY-MM-DD`) * **Deprecated. Not available after June 21, 2023** * `flight.triggerId` * **Deprecated. Not available after June 21, 2023** * `insertionOrderId` * `lineItemId` * `lineItemType` * `targetedChannelId` * **Deprecated. Not available after June 21, 2023** * `targetedNegativeKeywordListId` * **Deprecated. Not available after June 21, 2023** * `updateTime` (input in ISO 8601 format, or `YYYY-MM-DDTHH:MM:SSZ`) * `warningMessages` * **Deprecated. Not available after June 21, 2023** Examples: * All line items under an insertion order: `insertionOrderId=\"1234\"` * All `ENTITY_STATUS_ACTIVE` or `ENTITY_STATUS_PAUSED` and `LINE_ITEM_TYPE_DISPLAY_DEFAULT` line items under an advertiser: `(entityStatus=\"ENTITY_STATUS_ACTIVE\" OR entityStatus=\"ENTITY_STATUS_PAUSED\") AND lineItemType=\"LINE_ITEM_TYPE_DISPLAY_DEFAULT\"` * All line items with an update time less than or equal to 2020-11-04T18:54:47Z (format of ISO 8601): `updateTime\u003c=\"2020-11-04T18:54:47Z\"` * All line items with an update time greater than or equal to 2020-11-04T18:54:47Z (format of ISO 8601): `updateTime\u003e=\"2020-11-04T18:54:47Z\"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information.", + "description": "Allows filtering by line item fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by `AND` or `OR` logical operators. A sequence of restrictions implicitly uses `AND`. * A restriction has the form of `{field} {operator} {value}`. * The `updateTime` field must use the `GREATER THAN OR EQUAL TO (\u003e=)` or `LESS THAN OR EQUAL TO (\u003c=)` operators. * All other fields must use the `EQUALS (=)` operator. Supported fields: * `campaignId` * `displayName` * `entityStatus` * `insertionOrderId` * `lineItemId` * `lineItemType` * `updateTime` (input in ISO 8601 format, or `YYYY-MM-DDTHH:MM:SSZ`) Examples: * All line items under an insertion order: `insertionOrderId=\"1234\"` * All `ENTITY_STATUS_ACTIVE` or `ENTITY_STATUS_PAUSED` and `LINE_ITEM_TYPE_DISPLAY_DEFAULT` line items under an advertiser: `(entityStatus=\"ENTITY_STATUS_ACTIVE\" OR entityStatus=\"ENTITY_STATUS_PAUSED\") AND lineItemType=\"LINE_ITEM_TYPE_DISPLAY_DEFAULT\"` * All line items with an update time less than or equal to 2020-11-04T18:54:47Z (format of ISO 8601): `updateTime\u003c=\"2020-11-04T18:54:47Z\"` * All line items with an update time greater than or equal to 2020-11-04T18:54:47Z (format of ISO 8601): `updateTime\u003e=\"2020-11-04T18:54:47Z\"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information.", "location": "query", "type": "string" }, "orderBy": { - "description": "Field by which to sort the list. Acceptable values are: * `displayName` (default) * `entityStatus` * `flight.dateRange.endDate` * **Deprecated. Not available after June 21, 2023** * `updateTime` The default sorting order is ascending. To specify descending order for a field, a suffix \"desc\" should be added to the field name. Example: `displayName desc`.", + "description": "Field by which to sort the list. Acceptable values are: * `displayName` (default) * `entityStatus` * `updateTime` The default sorting order is ascending. To specify descending order for a field, a suffix \"desc\" should be added to the field name. Example: `displayName desc`.", "location": "query", "type": "string" }, @@ -7211,6 +7211,12 @@ "inventorySourceId" ], "parameters": { + "advertiserId": { + "description": "Optional. The advertiser_id is optional, when it is provided, the advertiser access is used.", + "format": "int64", + "location": "query", + "type": "string" + }, "inventorySourceId": { "description": "Required. The ID of the inventory source to fetch.", "format": "int64", @@ -9172,7 +9178,7 @@ } } }, - "revision": "20230615", + "revision": "20230627", "rootUrl": "https://displayvideo.googleapis.com/", "schemas": { "ActivateManualTriggerRequest": { @@ -12188,6 +12194,20 @@ "SDF_VERSION_5_5", "SDF_VERSION_6" ], + "enumDeprecated": [ + false, + true, + true, + true, + true, + true, + true, + true, + true, + false, + false, + false + ], "enumDescriptions": [ "SDF version value is not specified or is unknown in this version.", "SDF version 3.1", @@ -14634,6 +14654,17 @@ "YOUTUBE_USERS", "LICENSED" ], + "enumDeprecated": [ + false, + false, + false, + false, + true, + true, + false, + false, + false + ], "enumDescriptions": [ "Default value when type is not specified or is unknown.", "Audience was generated through matching customers to known contact information.", @@ -15256,6 +15287,15 @@ "GOOGLE_AUDIENCE_TYPE_LIFE_EVENT", "GOOGLE_AUDIENCE_TYPE_EXTENDED_DEMOGRAPHIC" ], + "enumDeprecated": [ + false, + false, + false, + true, + true, + false, + false + ], "enumDescriptions": [ "Default value when type is not specified or is unknown.", "Affinity type Google audience.", @@ -18813,6 +18853,12 @@ "PARTNER_REVENUE_MODEL_MARKUP_TYPE_MEDIA_COST_MARKUP", "PARTNER_REVENUE_MODEL_MARKUP_TYPE_TOTAL_MEDIA_COST_MARKUP" ], + "enumDeprecated": [ + false, + false, + true, + false + ], "enumDescriptions": [ "Type value is not specified or is unknown in this version.", "Calculate the partner revenue based on a fixed CPM.", @@ -19427,6 +19473,20 @@ "SDF_VERSION_5_5", "SDF_VERSION_6" ], + "enumDeprecated": [ + false, + true, + true, + true, + true, + true, + true, + true, + true, + false, + false, + false + ], "enumDescriptions": [ "SDF version value is not specified or is unknown in this version.", "SDF version 3.1", @@ -19487,6 +19547,20 @@ "SDF_VERSION_5_5", "SDF_VERSION_6" ], + "enumDeprecated": [ + false, + true, + true, + true, + true, + true, + true, + true, + true, + false, + false, + false + ], "enumDescriptions": [ "SDF version value is not specified or is unknown in this version.", "SDF version 3.1", @@ -19797,6 +19871,7 @@ "id": "TargetingExpansionConfig", "properties": { "excludeFirstPartyAudience": { + "deprecated": true, "description": "Whether to exclude first-party audiences from use in targeting expansion. This field was deprecated with the launch of [optimized targeting](//support.google.com/displayvideo/answer/12060859). This field will be set to `false`. If this field is set to `true` when deprecated, all positive first-party audience targeting assigned to this line item will be replaced with negative targeting of the same first-party audiences to ensure the continued exclusion of those audiences.", "type": "boolean" }, @@ -19811,6 +19886,15 @@ "MORE_EXPANSION", "MOST_EXPANSION" ], + "enumDeprecated": [ + false, + false, + false, + true, + true, + true, + true + ], "enumDescriptions": [ "The optimized targeting setting is not specified or is unknown in this version.", "Optimized targeting is off.", diff --git a/displayvideo/v2/displayvideo-gen.go b/displayvideo/v2/displayvideo-gen.go index d1434ca532a..f9e4c849f02 100644 --- a/displayvideo/v2/displayvideo-gen.go +++ b/displayvideo/v2/displayvideo-gen.go @@ -24879,14 +24879,10 @@ func (r *AdvertisersInsertionOrdersService) List(advertiserId int64) *Advertiser // made up of one or more restrictions. * Restrictions can be combined // by `AND` or `OR` logical operators. A sequence of restrictions // implicitly uses `AND`. * A restriction has the form of `{field} -// {operator} {value}`. * The -// `budget.budget_segments.date_range.end_date` field must use the `LESS -// THAN (<)` operator. * The `updateTime` field must use the `GREATER +// {operator} {value}`. * The `updateTime` field must use the `GREATER // THAN OR EQUAL TO (>=)` or `LESS THAN OR EQUAL TO (<=)` operators. * // All other fields must use the `EQUALS (=)` operator. Supported // fields: * `campaignId` * `displayName` * `entityStatus` * -// `budget.budget_segments.date_range.end_date` (input in the form of -// `YYYY-MM-DD`) * **Deprecated. Not available after June 21, 2023** * // `updateTime` (input in ISO 8601 format, or `YYYY-MM-DDTHH:MM:SSZ`) // Examples: * All insertion orders under a campaign: // `campaignId="1234" * All `ENTITY_STATUS_ACTIVE` or @@ -25050,7 +25046,7 @@ func (c *AdvertisersInsertionOrdersListCall) Do(opts ...googleapi.CallOption) (* // "type": "string" // }, // "filter": { - // "description": "Allows filtering by insertion order fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by `AND` or `OR` logical operators. A sequence of restrictions implicitly uses `AND`. * A restriction has the form of `{field} {operator} {value}`. * The `budget.budget_segments.date_range.end_date` field must use the `LESS THAN (\u003c)` operator. * The `updateTime` field must use the `GREATER THAN OR EQUAL TO (\u003e=)` or `LESS THAN OR EQUAL TO (\u003c=)` operators. * All other fields must use the `EQUALS (=)` operator. Supported fields: * `campaignId` * `displayName` * `entityStatus` * `budget.budget_segments.date_range.end_date` (input in the form of `YYYY-MM-DD`) * **Deprecated. Not available after June 21, 2023** * `updateTime` (input in ISO 8601 format, or `YYYY-MM-DDTHH:MM:SSZ`) Examples: * All insertion orders under a campaign: `campaignId=\"1234\"` * All `ENTITY_STATUS_ACTIVE` or `ENTITY_STATUS_PAUSED` insertion orders under an advertiser: `(entityStatus=\"ENTITY_STATUS_ACTIVE\" OR entityStatus=\"ENTITY_STATUS_PAUSED\")` * All insertion orders with an update time less than or equal to 2020-11-04T18:54:47Z (format of ISO 8601): `updateTime\u003c=\"2020-11-04T18:54:47Z\"` * All insertion orders with an update time greater than or equal to 2020-11-04T18:54:47Z (format of ISO 8601): `updateTime\u003e=\"2020-11-04T18:54:47Z\"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information.", + // "description": "Allows filtering by insertion order fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by `AND` or `OR` logical operators. A sequence of restrictions implicitly uses `AND`. * A restriction has the form of `{field} {operator} {value}`. * The `updateTime` field must use the `GREATER THAN OR EQUAL TO (\u003e=)` or `LESS THAN OR EQUAL TO (\u003c=)` operators. * All other fields must use the `EQUALS (=)` operator. Supported fields: * `campaignId` * `displayName` * `entityStatus` * `updateTime` (input in ISO 8601 format, or `YYYY-MM-DDTHH:MM:SSZ`) Examples: * All insertion orders under a campaign: `campaignId=\"1234\"` * All `ENTITY_STATUS_ACTIVE` or `ENTITY_STATUS_PAUSED` insertion orders under an advertiser: `(entityStatus=\"ENTITY_STATUS_ACTIVE\" OR entityStatus=\"ENTITY_STATUS_PAUSED\")` * All insertion orders with an update time less than or equal to 2020-11-04T18:54:47Z (format of ISO 8601): `updateTime\u003c=\"2020-11-04T18:54:47Z\"` * All insertion orders with an update time greater than or equal to 2020-11-04T18:54:47Z (format of ISO 8601): `updateTime\u003e=\"2020-11-04T18:54:47Z\"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information.", // "location": "query", // "type": "string" // }, @@ -28606,25 +28602,15 @@ func (r *AdvertisersLineItemsService) List(advertiserId int64) *AdvertisersLineI // one or more restrictions. * Restrictions can be combined by `AND` or // `OR` logical operators. A sequence of restrictions implicitly uses // `AND`. * A restriction has the form of `{field} {operator} {value}`. -// * The `flight.dateRange.endDate` field must use the `LESS THAN (<)` -// operator. * The `updateTime` field must use the `GREATER THAN OR -// EQUAL TO (>=)` or `LESS THAN OR EQUAL TO (<=)` operators. * The -// `warningMessages` field must use the `HAS (:)` operator. * All other -// fields must use the `EQUALS (=)` operator. Supported fields: * -// `campaignId` * `displayName` * `entityStatus` * -// `flight.dateRange.endDate` (input formatted as `YYYY-MM-DD`) * -// **Deprecated. Not available after June 21, 2023** * -// `flight.triggerId` * **Deprecated. Not available after June 21, -// 2023** * `insertionOrderId` * `lineItemId` * `lineItemType` * -// `targetedChannelId` * **Deprecated. Not available after June 21, -// 2023** * `targetedNegativeKeywordListId` * **Deprecated. Not -// available after June 21, 2023** * `updateTime` (input in ISO 8601 -// format, or `YYYY-MM-DDTHH:MM:SSZ`) * `warningMessages` * -// **Deprecated. Not available after June 21, 2023** Examples: * All -// line items under an insertion order: `insertionOrderId="1234" * All -// `ENTITY_STATUS_ACTIVE` or `ENTITY_STATUS_PAUSED` and -// `LINE_ITEM_TYPE_DISPLAY_DEFAULT` line items under an advertiser: -// `(entityStatus="ENTITY_STATUS_ACTIVE" OR +// * The `updateTime` field must use the `GREATER THAN OR EQUAL TO (>=)` +// or `LESS THAN OR EQUAL TO (<=)` operators. * All other fields must +// use the `EQUALS (=)` operator. Supported fields: * `campaignId` * +// `displayName` * `entityStatus` * `insertionOrderId` * `lineItemId` * +// `lineItemType` * `updateTime` (input in ISO 8601 format, or +// `YYYY-MM-DDTHH:MM:SSZ`) Examples: * All line items under an insertion +// order: `insertionOrderId="1234" * All `ENTITY_STATUS_ACTIVE` or +// `ENTITY_STATUS_PAUSED` and `LINE_ITEM_TYPE_DISPLAY_DEFAULT` line +// items under an advertiser: `(entityStatus="ENTITY_STATUS_ACTIVE" OR // entityStatus="ENTITY_STATUS_PAUSED") AND // lineItemType="LINE_ITEM_TYPE_DISPLAY_DEFAULT" * All line items with // an update time less than or equal to 2020-11-04T18:54:47Z (format of @@ -28641,11 +28627,9 @@ func (c *AdvertisersLineItemsListCall) Filter(filter string) *AdvertisersLineIte // OrderBy sets the optional parameter "orderBy": Field by which to sort // the list. Acceptable values are: * `displayName` (default) * -// `entityStatus` * `flight.dateRange.endDate` * **Deprecated. Not -// available after June 21, 2023** * `updateTime` The default sorting -// order is ascending. To specify descending order for a field, a suffix -// "desc" should be added to the field name. Example: `displayName -// desc`. +// `entityStatus` * `updateTime` The default sorting order is ascending. +// To specify descending order for a field, a suffix "desc" should be +// added to the field name. Example: `displayName desc`. func (c *AdvertisersLineItemsListCall) OrderBy(orderBy string) *AdvertisersLineItemsListCall { c.urlParams_.Set("orderBy", orderBy) return c @@ -28786,12 +28770,12 @@ func (c *AdvertisersLineItemsListCall) Do(opts ...googleapi.CallOption) (*ListLi // "type": "string" // }, // "filter": { - // "description": "Allows filtering by line item fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by `AND` or `OR` logical operators. A sequence of restrictions implicitly uses `AND`. * A restriction has the form of `{field} {operator} {value}`. * The `flight.dateRange.endDate` field must use the `LESS THAN (\u003c)` operator. * The `updateTime` field must use the `GREATER THAN OR EQUAL TO (\u003e=)` or `LESS THAN OR EQUAL TO (\u003c=)` operators. * The `warningMessages` field must use the `HAS (:)` operator. * All other fields must use the `EQUALS (=)` operator. Supported fields: * `campaignId` * `displayName` * `entityStatus` * `flight.dateRange.endDate` (input formatted as `YYYY-MM-DD`) * **Deprecated. Not available after June 21, 2023** * `flight.triggerId` * **Deprecated. Not available after June 21, 2023** * `insertionOrderId` * `lineItemId` * `lineItemType` * `targetedChannelId` * **Deprecated. Not available after June 21, 2023** * `targetedNegativeKeywordListId` * **Deprecated. Not available after June 21, 2023** * `updateTime` (input in ISO 8601 format, or `YYYY-MM-DDTHH:MM:SSZ`) * `warningMessages` * **Deprecated. Not available after June 21, 2023** Examples: * All line items under an insertion order: `insertionOrderId=\"1234\"` * All `ENTITY_STATUS_ACTIVE` or `ENTITY_STATUS_PAUSED` and `LINE_ITEM_TYPE_DISPLAY_DEFAULT` line items under an advertiser: `(entityStatus=\"ENTITY_STATUS_ACTIVE\" OR entityStatus=\"ENTITY_STATUS_PAUSED\") AND lineItemType=\"LINE_ITEM_TYPE_DISPLAY_DEFAULT\"` * All line items with an update time less than or equal to 2020-11-04T18:54:47Z (format of ISO 8601): `updateTime\u003c=\"2020-11-04T18:54:47Z\"` * All line items with an update time greater than or equal to 2020-11-04T18:54:47Z (format of ISO 8601): `updateTime\u003e=\"2020-11-04T18:54:47Z\"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information.", + // "description": "Allows filtering by line item fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by `AND` or `OR` logical operators. A sequence of restrictions implicitly uses `AND`. * A restriction has the form of `{field} {operator} {value}`. * The `updateTime` field must use the `GREATER THAN OR EQUAL TO (\u003e=)` or `LESS THAN OR EQUAL TO (\u003c=)` operators. * All other fields must use the `EQUALS (=)` operator. Supported fields: * `campaignId` * `displayName` * `entityStatus` * `insertionOrderId` * `lineItemId` * `lineItemType` * `updateTime` (input in ISO 8601 format, or `YYYY-MM-DDTHH:MM:SSZ`) Examples: * All line items under an insertion order: `insertionOrderId=\"1234\"` * All `ENTITY_STATUS_ACTIVE` or `ENTITY_STATUS_PAUSED` and `LINE_ITEM_TYPE_DISPLAY_DEFAULT` line items under an advertiser: `(entityStatus=\"ENTITY_STATUS_ACTIVE\" OR entityStatus=\"ENTITY_STATUS_PAUSED\") AND lineItemType=\"LINE_ITEM_TYPE_DISPLAY_DEFAULT\"` * All line items with an update time less than or equal to 2020-11-04T18:54:47Z (format of ISO 8601): `updateTime\u003c=\"2020-11-04T18:54:47Z\"` * All line items with an update time greater than or equal to 2020-11-04T18:54:47Z (format of ISO 8601): `updateTime\u003e=\"2020-11-04T18:54:47Z\"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information.", // "location": "query", // "type": "string" // }, // "orderBy": { - // "description": "Field by which to sort the list. Acceptable values are: * `displayName` (default) * `entityStatus` * `flight.dateRange.endDate` * **Deprecated. Not available after June 21, 2023** * `updateTime` The default sorting order is ascending. To specify descending order for a field, a suffix \"desc\" should be added to the field name. Example: `displayName desc`.", + // "description": "Field by which to sort the list. Acceptable values are: * `displayName` (default) * `entityStatus` * `updateTime` The default sorting order is ascending. To specify descending order for a field, a suffix \"desc\" should be added to the field name. Example: `displayName desc`.", // "location": "query", // "type": "string" // }, @@ -44309,6 +44293,14 @@ func (r *InventorySourcesService) Get(inventorySourceId int64) *InventorySources return c } +// AdvertiserId sets the optional parameter "advertiserId": The +// advertiser_id is optional, when it is provided, the advertiser access +// is used. +func (c *InventorySourcesGetCall) AdvertiserId(advertiserId int64) *InventorySourcesGetCall { + c.urlParams_.Set("advertiserId", fmt.Sprint(advertiserId)) + return c +} + // PartnerId sets the optional parameter "partnerId": Required. The ID // of the DV360 partner to which the fetched inventory source is // permissioned. @@ -44424,6 +44416,12 @@ func (c *InventorySourcesGetCall) Do(opts ...googleapi.CallOption) (*InventorySo // "inventorySourceId" // ], // "parameters": { + // "advertiserId": { + // "description": "Optional. The advertiser_id is optional, when it is provided, the advertiser access is used.", + // "format": "int64", + // "location": "query", + // "type": "string" + // }, // "inventorySourceId": { // "description": "Required. The ID of the inventory source to fetch.", // "format": "int64", diff --git a/dlp/v2/dlp-api.json b/dlp/v2/dlp-api.json index ee692699121..5dd3b2eedde 100644 --- a/dlp/v2/dlp-api.json +++ b/dlp/v2/dlp-api.json @@ -3412,7 +3412,7 @@ } } }, - "revision": "20230618", + "revision": "20230625", "rootUrl": "https://dlp.googleapis.com/", "schemas": { "GooglePrivacyDlpV2Action": { @@ -3896,12 +3896,12 @@ "id": "GooglePrivacyDlpV2CloudStorageOptions", "properties": { "bytesLimitPerFile": { - "description": "Max number of bytes to scan from a file. If a scanned file's size is bigger than this value then the rest of the bytes are omitted. Only one of bytes_limit_per_file and bytes_limit_per_file_percent can be specified. Cannot be set if de-identification is requested.", + "description": "Max number of bytes to scan from a file. If a scanned file's size is bigger than this value then the rest of the bytes are omitted. Only one of `bytes_limit_per_file` and `bytes_limit_per_file_percent` can be specified. This field can't be set if de-identification is requested. For certain file types, setting this field has no effect. For more information, see [Limits on bytes scanned per file](https://cloud.google.com/dlp/docs/supported-file-types#max-byte-size-per-file).", "format": "int64", "type": "string" }, "bytesLimitPerFilePercent": { - "description": "Max percentage of bytes to scan from a file. The rest are omitted. The number of bytes scanned is rounded down. Must be between 0 and 100, inclusively. Both 0 and 100 means no limit. Defaults to 0. Only one of bytes_limit_per_file and bytes_limit_per_file_percent can be specified. Cannot be set if de-identification is requested.", + "description": "Max percentage of bytes to scan from a file. The rest are omitted. The number of bytes scanned is rounded down. Must be between 0 and 100, inclusively. Both 0 and 100 means no limit. Defaults to 0. Only one of bytes_limit_per_file and bytes_limit_per_file_percent can be specified. This field can't be set if de-identification is requested. For certain file types, setting this field has no effect. For more information, see [Limits on bytes scanned per file](https://cloud.google.com/dlp/docs/supported-file-types#max-byte-size-per-file).", "format": "int32", "type": "integer" }, @@ -3927,16 +3927,16 @@ ], "enumDescriptions": [ "Includes all files.", - "Includes all file extensions not covered by another entry. Binary scanning attempts to convert the content of the file to utf_8 to scan the file. If you wish to avoid this fall back, specify one or more of the other FileType's in your storage scan.", + "Includes all file extensions not covered by another entry. Binary scanning attempts to convert the content of the file to utf_8 to scan the file. If you wish to avoid this fall back, specify one or more of the other file types in your storage scan.", "Included file extensions: asc,asp, aspx, brf, c, cc,cfm, cgi, cpp, csv, cxx, c++, cs, css, dart, dat, dot, eml,, epbub, ged, go, h, hh, hpp, hxx, h++, hs, html, htm, mkd, markdown, m, ml, mli, perl, pl, plist, pm, php, phtml, pht, properties, py, pyw, rb, rbw, rs, rss, rc, scala, sh, sql, swift, tex, shtml, shtm, xhtml, lhs, ics, ini, java, js, json, kix, kml, ocaml, md, txt, text, tsv, vb, vcard, vcs, wml, xcodeproj, xml, xsl, xsd, yml, yaml.", - "Included file extensions: bmp, gif, jpg, jpeg, jpe, png. bytes_limit_per_file has no effect on image files. Image inspection is restricted to 'global', 'us', 'asia', and 'europe'.", - "Word files \u003e30 MB will be scanned as binary files. Included file extensions: docx, dotx, docm, dotm", - "PDF files \u003e30 MB will be scanned as binary files. Included file extensions: pdf", + "Included file extensions: bmp, gif, jpg, jpeg, jpe, png. Setting bytes_limit_per_file or bytes_limit_per_file_percent has no effect on image files. Image inspection is restricted to the `global`, `us`, `asia`, and `europe` regions.", + "Microsoft Word files larger than 30 MB will be scanned as binary files. Included file extensions: docx, dotx, docm, dotm. Setting `bytes_limit_per_file` or `bytes_limit_per_file_percent` has no effect on Word files.", + "PDF files larger than 30 MB will be scanned as binary files. Included file extensions: pdf. Setting `bytes_limit_per_file` or `bytes_limit_per_file_percent` has no effect on PDF files.", "Included file extensions: avro", "Included file extensions: csv", "Included file extensions: tsv", - "Powerpoint files \u003e30 MB will be scanned as binary files. Included file extensions: pptx, pptm, potx, potm, pot", - "Excel files \u003e30 MB will be scanned as binary files. Included file extensions: xlsx, xlsm, xltx, xltm" + "Microsoft PowerPoint files larger than 30 MB will be scanned as binary files. Included file extensions: pptx, pptm, potx, potm, pot. Setting `bytes_limit_per_file` or `bytes_limit_per_file_percent` has no effect on PowerPoint files.", + "Microsoft Excel files larger than 30 MB will be scanned as binary files. Included file extensions: xlsx, xlsm, xltx, xltm. Setting `bytes_limit_per_file` or `bytes_limit_per_file_percent` has no effect on Excel files." ], "type": "string" }, @@ -4872,16 +4872,16 @@ ], "enumDescriptions": [ "Includes all files.", - "Includes all file extensions not covered by another entry. Binary scanning attempts to convert the content of the file to utf_8 to scan the file. If you wish to avoid this fall back, specify one or more of the other FileType's in your storage scan.", + "Includes all file extensions not covered by another entry. Binary scanning attempts to convert the content of the file to utf_8 to scan the file. If you wish to avoid this fall back, specify one or more of the other file types in your storage scan.", "Included file extensions: asc,asp, aspx, brf, c, cc,cfm, cgi, cpp, csv, cxx, c++, cs, css, dart, dat, dot, eml,, epbub, ged, go, h, hh, hpp, hxx, h++, hs, html, htm, mkd, markdown, m, ml, mli, perl, pl, plist, pm, php, phtml, pht, properties, py, pyw, rb, rbw, rs, rss, rc, scala, sh, sql, swift, tex, shtml, shtm, xhtml, lhs, ics, ini, java, js, json, kix, kml, ocaml, md, txt, text, tsv, vb, vcard, vcs, wml, xcodeproj, xml, xsl, xsd, yml, yaml.", - "Included file extensions: bmp, gif, jpg, jpeg, jpe, png. bytes_limit_per_file has no effect on image files. Image inspection is restricted to 'global', 'us', 'asia', and 'europe'.", - "Word files \u003e30 MB will be scanned as binary files. Included file extensions: docx, dotx, docm, dotm", - "PDF files \u003e30 MB will be scanned as binary files. Included file extensions: pdf", + "Included file extensions: bmp, gif, jpg, jpeg, jpe, png. Setting bytes_limit_per_file or bytes_limit_per_file_percent has no effect on image files. Image inspection is restricted to the `global`, `us`, `asia`, and `europe` regions.", + "Microsoft Word files larger than 30 MB will be scanned as binary files. Included file extensions: docx, dotx, docm, dotm. Setting `bytes_limit_per_file` or `bytes_limit_per_file_percent` has no effect on Word files.", + "PDF files larger than 30 MB will be scanned as binary files. Included file extensions: pdf. Setting `bytes_limit_per_file` or `bytes_limit_per_file_percent` has no effect on PDF files.", "Included file extensions: avro", "Included file extensions: csv", "Included file extensions: tsv", - "Powerpoint files \u003e30 MB will be scanned as binary files. Included file extensions: pptx, pptm, potx, potm, pot", - "Excel files \u003e30 MB will be scanned as binary files. Included file extensions: xlsx, xlsm, xltx, xltm" + "Microsoft PowerPoint files larger than 30 MB will be scanned as binary files. Included file extensions: pptx, pptm, potx, potm, pot. Setting `bytes_limit_per_file` or `bytes_limit_per_file_percent` has no effect on PowerPoint files.", + "Microsoft Excel files larger than 30 MB will be scanned as binary files. Included file extensions: xlsx, xlsm, xltx, xltm. Setting `bytes_limit_per_file` or `bytes_limit_per_file_percent` has no effect on Excel files." ], "type": "string" }, diff --git a/dlp/v2/dlp-gen.go b/dlp/v2/dlp-gen.go index b605afe263d..1eccc5adc27 100644 --- a/dlp/v2/dlp-gen.go +++ b/dlp/v2/dlp-gen.go @@ -1269,17 +1269,23 @@ func (s *GooglePrivacyDlpV2CloudStorageFileSet) MarshalJSON() ([]byte, error) { type GooglePrivacyDlpV2CloudStorageOptions struct { // BytesLimitPerFile: Max number of bytes to scan from a file. If a // scanned file's size is bigger than this value then the rest of the - // bytes are omitted. Only one of bytes_limit_per_file and - // bytes_limit_per_file_percent can be specified. Cannot be set if - // de-identification is requested. + // bytes are omitted. Only one of `bytes_limit_per_file` and + // `bytes_limit_per_file_percent` can be specified. This field can't be + // set if de-identification is requested. For certain file types, + // setting this field has no effect. For more information, see Limits on + // bytes scanned per file + // (https://cloud.google.com/dlp/docs/supported-file-types#max-byte-size-per-file). BytesLimitPerFile int64 `json:"bytesLimitPerFile,omitempty,string"` // BytesLimitPerFilePercent: Max percentage of bytes to scan from a // file. The rest are omitted. The number of bytes scanned is rounded // down. Must be between 0 and 100, inclusively. Both 0 and 100 means no // limit. Defaults to 0. Only one of bytes_limit_per_file and - // bytes_limit_per_file_percent can be specified. Cannot be set if - // de-identification is requested. + // bytes_limit_per_file_percent can be specified. This field can't be + // set if de-identification is requested. For certain file types, + // setting this field has no effect. For more information, see Limits on + // bytes scanned per file + // (https://cloud.google.com/dlp/docs/supported-file-types#max-byte-size-per-file). BytesLimitPerFilePercent int64 `json:"bytesLimitPerFilePercent,omitempty"` // FileSet: The set of one or more files to scan. @@ -1298,7 +1304,7 @@ type GooglePrivacyDlpV2CloudStorageOptions struct { // "BINARY_FILE" - Includes all file extensions not covered by another // entry. Binary scanning attempts to convert the content of the file to // utf_8 to scan the file. If you wish to avoid this fall back, specify - // one or more of the other FileType's in your storage scan. + // one or more of the other file types in your storage scan. // "TEXT_FILE" - Included file extensions: asc,asp, aspx, brf, c, // cc,cfm, cgi, cpp, csv, cxx, c++, cs, css, dart, dat, dot, eml,, // epbub, ged, go, h, hh, hpp, hxx, h++, hs, html, htm, mkd, markdown, @@ -1307,19 +1313,27 @@ type GooglePrivacyDlpV2CloudStorageOptions struct { // xhtml, lhs, ics, ini, java, js, json, kix, kml, ocaml, md, txt, text, // tsv, vb, vcard, vcs, wml, xcodeproj, xml, xsl, xsd, yml, yaml. // "IMAGE" - Included file extensions: bmp, gif, jpg, jpeg, jpe, png. - // bytes_limit_per_file has no effect on image files. Image inspection - // is restricted to 'global', 'us', 'asia', and 'europe'. - // "WORD" - Word files >30 MB will be scanned as binary files. - // Included file extensions: docx, dotx, docm, dotm - // "PDF" - PDF files >30 MB will be scanned as binary files. Included - // file extensions: pdf + // Setting bytes_limit_per_file or bytes_limit_per_file_percent has no + // effect on image files. Image inspection is restricted to the + // `global`, `us`, `asia`, and `europe` regions. + // "WORD" - Microsoft Word files larger than 30 MB will be scanned as + // binary files. Included file extensions: docx, dotx, docm, dotm. + // Setting `bytes_limit_per_file` or `bytes_limit_per_file_percent` has + // no effect on Word files. + // "PDF" - PDF files larger than 30 MB will be scanned as binary + // files. Included file extensions: pdf. Setting `bytes_limit_per_file` + // or `bytes_limit_per_file_percent` has no effect on PDF files. // "AVRO" - Included file extensions: avro // "CSV" - Included file extensions: csv // "TSV" - Included file extensions: tsv - // "POWERPOINT" - Powerpoint files >30 MB will be scanned as binary - // files. Included file extensions: pptx, pptm, potx, potm, pot - // "EXCEL" - Excel files >30 MB will be scanned as binary files. - // Included file extensions: xlsx, xlsm, xltx, xltm + // "POWERPOINT" - Microsoft PowerPoint files larger than 30 MB will be + // scanned as binary files. Included file extensions: pptx, pptm, potx, + // potm, pot. Setting `bytes_limit_per_file` or + // `bytes_limit_per_file_percent` has no effect on PowerPoint files. + // "EXCEL" - Microsoft Excel files larger than 30 MB will be scanned + // as binary files. Included file extensions: xlsx, xlsm, xltx, xltm. + // Setting `bytes_limit_per_file` or `bytes_limit_per_file_percent` has + // no effect on Excel files. FileTypes []string `json:"fileTypes,omitempty"` // FilesLimitPercent: Limits the number of files to scan to this @@ -2963,7 +2977,7 @@ type GooglePrivacyDlpV2Deidentify struct { // "BINARY_FILE" - Includes all file extensions not covered by another // entry. Binary scanning attempts to convert the content of the file to // utf_8 to scan the file. If you wish to avoid this fall back, specify - // one or more of the other FileType's in your storage scan. + // one or more of the other file types in your storage scan. // "TEXT_FILE" - Included file extensions: asc,asp, aspx, brf, c, // cc,cfm, cgi, cpp, csv, cxx, c++, cs, css, dart, dat, dot, eml,, // epbub, ged, go, h, hh, hpp, hxx, h++, hs, html, htm, mkd, markdown, @@ -2972,19 +2986,27 @@ type GooglePrivacyDlpV2Deidentify struct { // xhtml, lhs, ics, ini, java, js, json, kix, kml, ocaml, md, txt, text, // tsv, vb, vcard, vcs, wml, xcodeproj, xml, xsl, xsd, yml, yaml. // "IMAGE" - Included file extensions: bmp, gif, jpg, jpeg, jpe, png. - // bytes_limit_per_file has no effect on image files. Image inspection - // is restricted to 'global', 'us', 'asia', and 'europe'. - // "WORD" - Word files >30 MB will be scanned as binary files. - // Included file extensions: docx, dotx, docm, dotm - // "PDF" - PDF files >30 MB will be scanned as binary files. Included - // file extensions: pdf + // Setting bytes_limit_per_file or bytes_limit_per_file_percent has no + // effect on image files. Image inspection is restricted to the + // `global`, `us`, `asia`, and `europe` regions. + // "WORD" - Microsoft Word files larger than 30 MB will be scanned as + // binary files. Included file extensions: docx, dotx, docm, dotm. + // Setting `bytes_limit_per_file` or `bytes_limit_per_file_percent` has + // no effect on Word files. + // "PDF" - PDF files larger than 30 MB will be scanned as binary + // files. Included file extensions: pdf. Setting `bytes_limit_per_file` + // or `bytes_limit_per_file_percent` has no effect on PDF files. // "AVRO" - Included file extensions: avro // "CSV" - Included file extensions: csv // "TSV" - Included file extensions: tsv - // "POWERPOINT" - Powerpoint files >30 MB will be scanned as binary - // files. Included file extensions: pptx, pptm, potx, potm, pot - // "EXCEL" - Excel files >30 MB will be scanned as binary files. - // Included file extensions: xlsx, xlsm, xltx, xltm + // "POWERPOINT" - Microsoft PowerPoint files larger than 30 MB will be + // scanned as binary files. Included file extensions: pptx, pptm, potx, + // potm, pot. Setting `bytes_limit_per_file` or + // `bytes_limit_per_file_percent` has no effect on PowerPoint files. + // "EXCEL" - Microsoft Excel files larger than 30 MB will be scanned + // as binary files. Included file extensions: xlsx, xlsm, xltx, xltm. + // Setting `bytes_limit_per_file` or `bytes_limit_per_file_percent` has + // no effect on Excel files. FileTypesToTransform []string `json:"fileTypesToTransform,omitempty"` // TransformationConfig: User specified deidentify templates and configs diff --git a/essentialcontacts/v1/essentialcontacts-api.json b/essentialcontacts/v1/essentialcontacts-api.json index 067955a3bfa..135ca3cf200 100644 --- a/essentialcontacts/v1/essentialcontacts-api.json +++ b/essentialcontacts/v1/essentialcontacts-api.json @@ -1,4 +1,13 @@ { + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "See, edit, configure, and delete your Google Cloud data and see the email address for your Google Account." + } + } + } + }, "basePath": "", "baseUrl": "https://essentialcontacts.googleapis.com/", "batchPath": "batch", @@ -159,7 +168,10 @@ "path": "v1/{+parent}/contacts:compute", "response": { "$ref": "GoogleCloudEssentialcontactsV1ComputeContactsResponse" - } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] }, "create": { "description": "Adds a new contact for a resource.", @@ -184,7 +196,10 @@ }, "response": { "$ref": "GoogleCloudEssentialcontactsV1Contact" - } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] }, "delete": { "description": "Deletes a contact.", @@ -206,7 +221,10 @@ "path": "v1/{+name}", "response": { "$ref": "GoogleProtobufEmpty" - } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] }, "get": { "description": "Gets a single contact.", @@ -228,7 +246,10 @@ "path": "v1/{+name}", "response": { "$ref": "GoogleCloudEssentialcontactsV1Contact" - } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] }, "list": { "description": "Lists the contacts that have been set on a resource.", @@ -261,7 +282,10 @@ "path": "v1/{+parent}/contacts", "response": { "$ref": "GoogleCloudEssentialcontactsV1ListContactsResponse" - } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] }, "patch": { "description": "Updates a contact. Note: A contact's email address cannot be changed.", @@ -292,7 +316,10 @@ }, "response": { "$ref": "GoogleCloudEssentialcontactsV1Contact" - } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] }, "sendTestMessage": { "description": "Allows a contact admin to send a test message to contact to verify that it has been configured correctly.", @@ -317,7 +344,10 @@ }, "response": { "$ref": "GoogleProtobufEmpty" - } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] } } } @@ -386,7 +416,10 @@ "path": "v1/{+parent}/contacts:compute", "response": { "$ref": "GoogleCloudEssentialcontactsV1ComputeContactsResponse" - } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] }, "create": { "description": "Adds a new contact for a resource.", @@ -411,7 +444,10 @@ }, "response": { "$ref": "GoogleCloudEssentialcontactsV1Contact" - } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] }, "delete": { "description": "Deletes a contact.", @@ -433,7 +469,10 @@ "path": "v1/{+name}", "response": { "$ref": "GoogleProtobufEmpty" - } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] }, "get": { "description": "Gets a single contact.", @@ -455,7 +494,10 @@ "path": "v1/{+name}", "response": { "$ref": "GoogleCloudEssentialcontactsV1Contact" - } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] }, "list": { "description": "Lists the contacts that have been set on a resource.", @@ -488,7 +530,10 @@ "path": "v1/{+parent}/contacts", "response": { "$ref": "GoogleCloudEssentialcontactsV1ListContactsResponse" - } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] }, "patch": { "description": "Updates a contact. Note: A contact's email address cannot be changed.", @@ -519,7 +564,10 @@ }, "response": { "$ref": "GoogleCloudEssentialcontactsV1Contact" - } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] }, "sendTestMessage": { "description": "Allows a contact admin to send a test message to contact to verify that it has been configured correctly.", @@ -544,7 +592,10 @@ }, "response": { "$ref": "GoogleProtobufEmpty" - } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] } } } @@ -613,7 +664,10 @@ "path": "v1/{+parent}/contacts:compute", "response": { "$ref": "GoogleCloudEssentialcontactsV1ComputeContactsResponse" - } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] }, "create": { "description": "Adds a new contact for a resource.", @@ -638,7 +692,10 @@ }, "response": { "$ref": "GoogleCloudEssentialcontactsV1Contact" - } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] }, "delete": { "description": "Deletes a contact.", @@ -660,7 +717,10 @@ "path": "v1/{+name}", "response": { "$ref": "GoogleProtobufEmpty" - } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] }, "get": { "description": "Gets a single contact.", @@ -682,7 +742,10 @@ "path": "v1/{+name}", "response": { "$ref": "GoogleCloudEssentialcontactsV1Contact" - } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] }, "list": { "description": "Lists the contacts that have been set on a resource.", @@ -715,7 +778,10 @@ "path": "v1/{+parent}/contacts", "response": { "$ref": "GoogleCloudEssentialcontactsV1ListContactsResponse" - } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] }, "patch": { "description": "Updates a contact. Note: A contact's email address cannot be changed.", @@ -746,7 +812,10 @@ }, "response": { "$ref": "GoogleCloudEssentialcontactsV1Contact" - } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] }, "sendTestMessage": { "description": "Allows a contact admin to send a test message to contact to verify that it has been configured correctly.", @@ -771,14 +840,17 @@ }, "response": { "$ref": "GoogleProtobufEmpty" - } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] } } } } } }, - "revision": "20230618", + "revision": "20230628", "rootUrl": "https://essentialcontacts.googleapis.com/", "schemas": { "GoogleCloudEssentialcontactsV1ComputeContactsResponse": { diff --git a/essentialcontacts/v1/essentialcontacts-gen.go b/essentialcontacts/v1/essentialcontacts-gen.go index 1fa6d007dfe..88c45cb593e 100644 --- a/essentialcontacts/v1/essentialcontacts-gen.go +++ b/essentialcontacts/v1/essentialcontacts-gen.go @@ -79,8 +79,20 @@ const apiVersion = "v1" const basePath = "https://essentialcontacts.googleapis.com/" const mtlsBasePath = "https://essentialcontacts.mtls.googleapis.com/" +// OAuth2 scopes used by this API. +const ( + // See, edit, configure, and delete your Google Cloud data and see the + // email address for your Google Account. + CloudPlatformScope = "https://www.googleapis.com/auth/cloud-platform" +) + // NewService creates a new Service. func NewService(ctx context.Context, opts ...option.ClientOption) (*Service, error) { + scopesOption := internaloption.WithDefaultScopes( + "https://www.googleapis.com/auth/cloud-platform", + ) + // NOTE: prepend, so we don't override user-specified scopes. + opts = append([]option.ClientOption{scopesOption}, opts...) opts = append(opts, internaloption.WithDefaultEndpoint(basePath)) opts = append(opts, internaloption.WithDefaultMTLSEndpoint(mtlsBasePath)) client, endpoint, err := htransport.NewClient(ctx, opts...) @@ -685,7 +697,10 @@ func (c *FoldersContactsComputeCall) Do(opts ...googleapi.CallOption) (*GoogleCl // "path": "v1/{+parent}/contacts:compute", // "response": { // "$ref": "GoogleCloudEssentialcontactsV1ComputeContactsResponse" - // } + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] // } } @@ -848,7 +863,10 @@ func (c *FoldersContactsCreateCall) Do(opts ...googleapi.CallOption) (*GoogleClo // }, // "response": { // "$ref": "GoogleCloudEssentialcontactsV1Contact" - // } + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] // } } @@ -980,7 +998,10 @@ func (c *FoldersContactsDeleteCall) Do(opts ...googleapi.CallOption) (*GooglePro // "path": "v1/{+name}", // "response": { // "$ref": "GoogleProtobufEmpty" - // } + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] // } } @@ -1127,7 +1148,10 @@ func (c *FoldersContactsGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudE // "path": "v1/{+name}", // "response": { // "$ref": "GoogleCloudEssentialcontactsV1Contact" - // } + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] // } } @@ -1305,7 +1329,10 @@ func (c *FoldersContactsListCall) Do(opts ...googleapi.CallOption) (*GoogleCloud // "path": "v1/{+parent}/contacts", // "response": { // "$ref": "GoogleCloudEssentialcontactsV1ListContactsResponse" - // } + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] // } } @@ -1482,7 +1509,10 @@ func (c *FoldersContactsPatchCall) Do(opts ...googleapi.CallOption) (*GoogleClou // }, // "response": { // "$ref": "GoogleCloudEssentialcontactsV1Contact" - // } + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] // } } @@ -1626,7 +1656,10 @@ func (c *FoldersContactsSendTestMessageCall) Do(opts ...googleapi.CallOption) (* // }, // "response": { // "$ref": "GoogleProtobufEmpty" - // } + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] // } } @@ -1882,7 +1915,10 @@ func (c *OrganizationsContactsComputeCall) Do(opts ...googleapi.CallOption) (*Go // "path": "v1/{+parent}/contacts:compute", // "response": { // "$ref": "GoogleCloudEssentialcontactsV1ComputeContactsResponse" - // } + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] // } } @@ -2045,7 +2081,10 @@ func (c *OrganizationsContactsCreateCall) Do(opts ...googleapi.CallOption) (*Goo // }, // "response": { // "$ref": "GoogleCloudEssentialcontactsV1Contact" - // } + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] // } } @@ -2177,7 +2216,10 @@ func (c *OrganizationsContactsDeleteCall) Do(opts ...googleapi.CallOption) (*Goo // "path": "v1/{+name}", // "response": { // "$ref": "GoogleProtobufEmpty" - // } + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] // } } @@ -2324,7 +2366,10 @@ func (c *OrganizationsContactsGetCall) Do(opts ...googleapi.CallOption) (*Google // "path": "v1/{+name}", // "response": { // "$ref": "GoogleCloudEssentialcontactsV1Contact" - // } + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] // } } @@ -2502,7 +2547,10 @@ func (c *OrganizationsContactsListCall) Do(opts ...googleapi.CallOption) (*Googl // "path": "v1/{+parent}/contacts", // "response": { // "$ref": "GoogleCloudEssentialcontactsV1ListContactsResponse" - // } + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] // } } @@ -2679,7 +2727,10 @@ func (c *OrganizationsContactsPatchCall) Do(opts ...googleapi.CallOption) (*Goog // }, // "response": { // "$ref": "GoogleCloudEssentialcontactsV1Contact" - // } + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] // } } @@ -2823,7 +2874,10 @@ func (c *OrganizationsContactsSendTestMessageCall) Do(opts ...googleapi.CallOpti // }, // "response": { // "$ref": "GoogleProtobufEmpty" - // } + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] // } } @@ -3079,7 +3133,10 @@ func (c *ProjectsContactsComputeCall) Do(opts ...googleapi.CallOption) (*GoogleC // "path": "v1/{+parent}/contacts:compute", // "response": { // "$ref": "GoogleCloudEssentialcontactsV1ComputeContactsResponse" - // } + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] // } } @@ -3242,7 +3299,10 @@ func (c *ProjectsContactsCreateCall) Do(opts ...googleapi.CallOption) (*GoogleCl // }, // "response": { // "$ref": "GoogleCloudEssentialcontactsV1Contact" - // } + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] // } } @@ -3374,7 +3434,10 @@ func (c *ProjectsContactsDeleteCall) Do(opts ...googleapi.CallOption) (*GooglePr // "path": "v1/{+name}", // "response": { // "$ref": "GoogleProtobufEmpty" - // } + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] // } } @@ -3521,7 +3584,10 @@ func (c *ProjectsContactsGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloud // "path": "v1/{+name}", // "response": { // "$ref": "GoogleCloudEssentialcontactsV1Contact" - // } + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] // } } @@ -3699,7 +3765,10 @@ func (c *ProjectsContactsListCall) Do(opts ...googleapi.CallOption) (*GoogleClou // "path": "v1/{+parent}/contacts", // "response": { // "$ref": "GoogleCloudEssentialcontactsV1ListContactsResponse" - // } + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] // } } @@ -3876,7 +3945,10 @@ func (c *ProjectsContactsPatchCall) Do(opts ...googleapi.CallOption) (*GoogleClo // }, // "response": { // "$ref": "GoogleCloudEssentialcontactsV1Contact" - // } + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] // } } @@ -4020,7 +4092,10 @@ func (c *ProjectsContactsSendTestMessageCall) Do(opts ...googleapi.CallOption) ( // }, // "response": { // "$ref": "GoogleProtobufEmpty" - // } + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] // } } diff --git a/eventarc/v1/eventarc-api.json b/eventarc/v1/eventarc-api.json index 13bb3e41266..777a9c948bd 100644 --- a/eventarc/v1/eventarc-api.json +++ b/eventarc/v1/eventarc-api.json @@ -1197,7 +1197,7 @@ } } }, - "revision": "20230602", + "revision": "20230623", "rootUrl": "https://eventarc.googleapis.com/", "schemas": { "AuditConfig": { @@ -1404,10 +1404,6 @@ "$ref": "GKE", "description": "A GKE service capable of receiving events. The service should be running in the same project as the trigger." }, - "httpEndpoint": { - "$ref": "HttpEndpoint", - "description": "An HTTP endpoint destination described by an URI." - }, "workflow": { "description": "The resource name of the Workflow whose Executions are triggered by the events. The Workflow resource should be deployed in the same project as the trigger. Format: `projects/{project}/locations/{location}/workflows/{workflow}`", "type": "string" @@ -1654,21 +1650,6 @@ }, "type": "object" }, - "HttpEndpoint": { - "description": "Represents a HTTP endpoint destination.", - "id": "HttpEndpoint", - "properties": { - "forwardDnsRequests": { - "description": "Optional. Forwards DNS requests to the VPC specified by network config to resolve the HTTP endpoint. Default to false. If set to true, Eventarc will create a peering zone to the consumer VPC and forward DNS requests. See: https://cloud.google.com/dns/docs/zones/zones-overview#peering_zones Enable this if the URI uses an internal DNS name or a private Cloud DNS zone.", - "type": "boolean" - }, - "uri": { - "description": "Required. The URI of the HTTP enpdoint. The value must be a RFC2396 URI string. Examples: `http://10.10.10.8:80/route`, `http://svc.us-central1.p.local:8080/`. Only HTTP and HTTPS protocols are supported. The host can be either a static IP addressable from the VPC specified by the network config, or an internal DNS hostname of the service resolvable via Cloud DNS.", - "type": "string" - } - }, - "type": "object" - }, "ListChannelConnectionsResponse": { "description": "The response message for the `ListChannelConnections` method.", "id": "ListChannelConnectionsResponse", diff --git a/eventarc/v1/eventarc-gen.go b/eventarc/v1/eventarc-gen.go index 4f8d16b0c81..c2290d7d231 100644 --- a/eventarc/v1/eventarc-gen.go +++ b/eventarc/v1/eventarc-gen.go @@ -603,9 +603,6 @@ type Destination struct { // running in the same project as the trigger. Gke *GKE `json:"gke,omitempty"` - // HttpEndpoint: An HTTP endpoint destination described by an URI. - HttpEndpoint *HttpEndpoint `json:"httpEndpoint,omitempty"` - // Workflow: The resource name of the Workflow whose Executions are // triggered by the events. The Workflow resource should be deployed in // the same project as the trigger. Format: @@ -1078,49 +1075,6 @@ func (s *GoogleRpcStatus) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// HttpEndpoint: Represents a HTTP endpoint destination. -type HttpEndpoint struct { - // ForwardDnsRequests: Optional. Forwards DNS requests to the VPC - // specified by network config to resolve the HTTP endpoint. Default to - // false. If set to true, Eventarc will create a peering zone to the - // consumer VPC and forward DNS requests. See: - // https://cloud.google.com/dns/docs/zones/zones-overview#peering_zones - // Enable this if the URI uses an internal DNS name or a private Cloud - // DNS zone. - ForwardDnsRequests bool `json:"forwardDnsRequests,omitempty"` - - // Uri: Required. The URI of the HTTP enpdoint. The value must be a - // RFC2396 URI string. Examples: `http://10.10.10.8:80/route`, - // `http://svc.us-central1.p.local:8080/`. Only HTTP and HTTPS protocols - // are supported. The host can be either a static IP addressable from - // the VPC specified by the network config, or an internal DNS hostname - // of the service resolvable via Cloud DNS. - Uri string `json:"uri,omitempty"` - - // ForceSendFields is a list of field names (e.g. "ForwardDnsRequests") - // 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. "ForwardDnsRequests") 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 *HttpEndpoint) MarshalJSON() ([]byte, error) { - type NoMethod HttpEndpoint - raw := NoMethod(*s) - return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) -} - // ListChannelConnectionsResponse: The response message for the // `ListChannelConnections` method. type ListChannelConnectionsResponse struct { diff --git a/fcm/v1/fcm-api.json b/fcm/v1/fcm-api.json index b047b2a39e3..d50f30daac0 100644 --- a/fcm/v1/fcm-api.json +++ b/fcm/v1/fcm-api.json @@ -146,7 +146,7 @@ } } }, - "revision": "20230612", + "revision": "20230626", "rootUrl": "https://fcm.googleapis.com/", "schemas": { "AndroidConfig": { @@ -231,6 +231,7 @@ "type": "string" }, "bypassProxyNotification": { + "deprecated": true, "description": "If set, display notifications delivered to the device will be handled by the app instead of the proxy.", "type": "boolean" }, diff --git a/file/v1/file-api.json b/file/v1/file-api.json index e6d2ee5aee7..af04f78bb55 100644 --- a/file/v1/file-api.json +++ b/file/v1/file-api.json @@ -874,7 +874,7 @@ } } }, - "revision": "20230429", + "revision": "20230625", "rootUrl": "https://file.googleapis.com/", "schemas": { "Backup": { @@ -1211,6 +1211,7 @@ "id": "GoogleCloudSaasacceleratorManagementProvidersV1MaintenanceSchedule", "properties": { "canReschedule": { + "deprecated": true, "description": "This field is deprecated, and will be always set to true since reschedule can happen multiple times now. This field should not be removed until all service producers remove this for their customers.", "type": "boolean" }, diff --git a/file/v1beta1/file-api.json b/file/v1beta1/file-api.json index 1120f5c7c64..ce5bf69c727 100644 --- a/file/v1beta1/file-api.json +++ b/file/v1beta1/file-api.json @@ -1041,7 +1041,7 @@ } } }, - "revision": "20230429", + "revision": "20230625", "rootUrl": "https://file.googleapis.com/", "schemas": { "Backup": { @@ -1389,6 +1389,7 @@ "id": "GoogleCloudSaasacceleratorManagementProvidersV1MaintenanceSchedule", "properties": { "canReschedule": { + "deprecated": true, "description": "This field is deprecated, and will be always set to true since reschedule can happen multiple times now. This field should not be removed until all service producers remove this for their customers.", "type": "boolean" }, @@ -2171,6 +2172,7 @@ "type": "string" }, "sourceSnapshot": { + "deprecated": true, "description": "The resource name of the snapshot, in the format `projects/{project_id}/locations/{location_id}/snapshots/{snapshot_id}`.", "type": "string" } diff --git a/firebase/v1beta1/firebase-api.json b/firebase/v1beta1/firebase-api.json index a1cdcd348a3..f49cb32b49e 100644 --- a/firebase/v1beta1/firebase-api.json +++ b/firebase/v1beta1/firebase-api.json @@ -1320,7 +1320,7 @@ } } }, - "revision": "20230405", + "revision": "20230703", "rootUrl": "https://firebase.googleapis.com/", "schemas": { "AddFirebaseRequest": { @@ -2275,6 +2275,7 @@ "type": "string" }, "webId": { + "deprecated": true, "description": "Output only. Immutable. A unique, Firebase-assigned identifier for the `WebApp`. This identifier is only used to populate the `namespace` value for the `WebApp`. For most use cases, use `appId` to identify or reference the App. The `webId` value is only unique within a `FirebaseProject` and its associated Apps.", "readOnly": true, "type": "string" diff --git a/firebaseappcheck/v1/firebaseappcheck-api.json b/firebaseappcheck/v1/firebaseappcheck-api.json index ca23b184fba..6aac61e8c92 100644 --- a/firebaseappcheck/v1/firebaseappcheck-api.json +++ b/firebaseappcheck/v1/firebaseappcheck-api.json @@ -1343,7 +1343,7 @@ } } }, - "revision": "20230619", + "revision": "20230703", "rootUrl": "https://firebaseappcheck.googleapis.com/", "schemas": { "GoogleFirebaseAppcheckV1AppAttestConfig": { @@ -1449,6 +1449,7 @@ "type": "object" }, "GoogleFirebaseAppcheckV1BatchGetSafetyNetConfigsResponse": { + "deprecated": true, "description": "Response message for the BatchGetSafetyNetConfigs method.", "id": "GoogleFirebaseAppcheckV1BatchGetSafetyNetConfigsResponse", "properties": { @@ -1702,6 +1703,7 @@ "type": "object" }, "GoogleFirebaseAppcheckV1ExchangeSafetyNetTokenRequest": { + "deprecated": true, "description": "Request message for the ExchangeSafetyNetToken method.", "id": "GoogleFirebaseAppcheckV1ExchangeSafetyNetTokenRequest", "properties": { @@ -1900,6 +1902,7 @@ "type": "object" }, "GoogleFirebaseAppcheckV1SafetyNetConfig": { + "deprecated": true, "description": "An app's SafetyNet configuration object. This configuration controls certain properties of the `AppCheckToken` returned by ExchangeSafetyNetToken, such as its ttl. Note that your registered SHA-256 certificate fingerprints are used to validate tokens issued by SafetyNet; please register them via the Firebase Console or programmatically via the [Firebase Management Service](https://firebase.google.com/docs/projects/api/reference/rest/v11/projects.androidApps.sha/create).", "id": "GoogleFirebaseAppcheckV1SafetyNetConfig", "properties": { diff --git a/firebaseappcheck/v1beta/firebaseappcheck-api.json b/firebaseappcheck/v1beta/firebaseappcheck-api.json index 23d146daceb..aab6c9522d8 100644 --- a/firebaseappcheck/v1beta/firebaseappcheck-api.json +++ b/firebaseappcheck/v1beta/firebaseappcheck-api.json @@ -1596,7 +1596,7 @@ } } }, - "revision": "20230619", + "revision": "20230703", "rootUrl": "https://firebaseappcheck.googleapis.com/", "schemas": { "GoogleFirebaseAppcheckV1betaAppAttestConfig": { @@ -1620,6 +1620,7 @@ "id": "GoogleFirebaseAppcheckV1betaAppCheckToken", "properties": { "attestationToken": { + "deprecated": true, "description": "An App Check token. App Check tokens are signed [JWTs](https://tools.ietf.org/html/rfc7519) containing claims that identify the attested app and Firebase project. This token is used to access Firebase services protected by App Check.", "type": "string" }, @@ -1636,6 +1637,7 @@ "type": "object" }, "GoogleFirebaseAppcheckV1betaAttestationTokenResponse": { + "deprecated": true, "description": "Encapsulates an *App Check token*, which are used to access Firebase services protected by App Check.", "id": "GoogleFirebaseAppcheckV1betaAttestationTokenResponse", "properties": { @@ -1694,6 +1696,7 @@ "type": "object" }, "GoogleFirebaseAppcheckV1betaBatchGetRecaptchaConfigsResponse": { + "deprecated": true, "description": "Response message for the BatchGetRecaptchaConfigs method.", "id": "GoogleFirebaseAppcheckV1betaBatchGetRecaptchaConfigsResponse", "properties": { @@ -1736,6 +1739,7 @@ "type": "object" }, "GoogleFirebaseAppcheckV1betaBatchGetSafetyNetConfigsResponse": { + "deprecated": true, "description": "Response message for the BatchGetSafetyNetConfigs method.", "id": "GoogleFirebaseAppcheckV1betaBatchGetSafetyNetConfigsResponse", "properties": { @@ -1897,6 +1901,7 @@ }, "attestationToken": { "$ref": "GoogleFirebaseAppcheckV1betaAttestationTokenResponse", + "deprecated": true, "description": "Encapsulates an App Check token." } }, @@ -1978,6 +1983,7 @@ "type": "object" }, "GoogleFirebaseAppcheckV1betaExchangeRecaptchaTokenRequest": { + "deprecated": true, "description": "Request message for the ExchangeRecaptchaToken method.", "id": "GoogleFirebaseAppcheckV1betaExchangeRecaptchaTokenRequest", "properties": { @@ -2004,6 +2010,7 @@ "type": "object" }, "GoogleFirebaseAppcheckV1betaExchangeSafetyNetTokenRequest": { + "deprecated": true, "description": "Request message for the ExchangeSafetyNetToken method.", "id": "GoogleFirebaseAppcheckV1betaExchangeSafetyNetTokenRequest", "properties": { @@ -2157,6 +2164,7 @@ "type": "object" }, "GoogleFirebaseAppcheckV1betaRecaptchaConfig": { + "deprecated": true, "description": "An app's reCAPTCHA v3 configuration object. This configuration is used by ExchangeRecaptchaToken to validate reCAPTCHA tokens issued to apps by reCAPTCHA v3. It also controls certain properties of the returned `AppCheckToken`, such as its ttl.", "id": "GoogleFirebaseAppcheckV1betaRecaptchaConfig", "properties": { @@ -2227,6 +2235,7 @@ "type": "object" }, "GoogleFirebaseAppcheckV1betaSafetyNetConfig": { + "deprecated": true, "description": "An app's SafetyNet configuration object. This configuration controls certain properties of the `AppCheckToken` returned by ExchangeSafetyNetToken, such as its ttl. Note that your registered SHA-256 certificate fingerprints are used to validate tokens issued by SafetyNet; please register them via the Firebase Console or programmatically via the [Firebase Management Service](https://firebase.google.com/docs/projects/api/reference/rest/v1beta1/projects.androidApps.sha/create).", "id": "GoogleFirebaseAppcheckV1betaSafetyNetConfig", "properties": { diff --git a/firebasedynamiclinks/v1/firebasedynamiclinks-api.json b/firebasedynamiclinks/v1/firebasedynamiclinks-api.json index 89de17a0199..4e8fc99f1ef 100644 --- a/firebasedynamiclinks/v1/firebasedynamiclinks-api.json +++ b/firebasedynamiclinks/v1/firebasedynamiclinks-api.json @@ -224,7 +224,7 @@ } } }, - "revision": "20211112", + "revision": "20230703", "rootUrl": "https://firebasedynamiclinks.googleapis.com/", "schemas": { "AnalyticsInfo": { @@ -379,6 +379,7 @@ "type": "string" }, "languageCode": { + "deprecated": true, "description": "Device language code setting.", "type": "string" }, @@ -387,6 +388,7 @@ "type": "string" }, "languageCodeRaw": { + "deprecated": true, "description": "Device language code raw setting. iOS does returns language code in different format than iOS WebView. For example WebView returns en_US, but iOS returns en-US. Field below will return raw value returned by iOS.", "type": "string" }, @@ -445,6 +447,13 @@ "DESKTOP", "OTHER" ], + "enumDeprecated": [ + false, + false, + false, + true, + false + ], "enumDescriptions": [ "Unspecified platform.", "Represents Android platform. All apps and browsers on Android are classfied in this category.", @@ -478,6 +487,7 @@ "type": "string" }, "dynamicLinkDomain": { + "deprecated": true, "description": "Dynamic Links domain that the project owns, e.g. abcd.app.goo.gl [Learn more](https://firebase.google.com/docs/dynamic-links/android/receive) on how to set up Dynamic Link domain associated with your Firebase project. Required if missing domain_uri_prefix.", "type": "string" }, @@ -817,6 +827,7 @@ "id": "GooglePlayAnalytics", "properties": { "gclid": { + "deprecated": true, "description": "Deprecated; FDL SDK does not process nor log it.", "type": "string" }, diff --git a/firestore/v1/firestore-api.json b/firestore/v1/firestore-api.json index 289f3d1811a..7b95ef45863 100644 --- a/firestore/v1/firestore-api.json +++ b/firestore/v1/firestore-api.json @@ -122,7 +122,7 @@ ], "parameters": { "databaseId": { - "description": "Required. The ID to use for the database, which will become the final component of the database's resource name. The value must be set to \"(default)\".", + "description": "Required. The ID to use for the database, which will become the final component of the database's resource name. This value should be 4-63 characters. Valid characters are /a-z-/ with first character a letter and the last a letter or a number. Must not be UUID-like /[0-9a-f]{8}(-[0-9a-f]{4}){3}-[0-9a-f]{12}/. \"(default)\" database id is also valid.", "location": "query", "type": "string" }, @@ -540,7 +540,7 @@ ] }, "list": { - "description": "Lists the field configuration and metadata for this database. Currently, FirestoreAdmin.ListFields only supports listing fields that have been explicitly overridden. To issue this query, call FirestoreAdmin.ListFields with the filter set to `indexConfig.usesAncestorConfig:false` .", + "description": "Lists the field configuration and metadata for this database. Currently, FirestoreAdmin.ListFields only supports listing fields that have been explicitly overridden. To issue this query, call FirestoreAdmin.ListFields with the filter set to `indexConfig.usesAncestorConfig:false or `ttlConfig:*`.", "flatPath": "v1/projects/{projectsId}/databases/{databasesId}/collectionGroups/{collectionGroupsId}/fields", "httpMethod": "GET", "id": "firestore.projects.databases.collectionGroups.fields.list", @@ -1682,7 +1682,7 @@ } } }, - "revision": "20230611", + "revision": "20230629", "rootUrl": "https://firestore.googleapis.com/", "schemas": { "Aggregation": { @@ -3106,6 +3106,55 @@ }, "type": "object" }, + "GoogleFirestoreAdminV1RestoreDatabaseMetadata": { + "description": "Metadata for the long-running operation from the RestoreDatabase request.", + "id": "GoogleFirestoreAdminV1RestoreDatabaseMetadata", + "properties": { + "backup": { + "description": "The name of the backup restoring from.", + "type": "string" + }, + "database": { + "description": "The name of the database being restored to.", + "type": "string" + }, + "endTime": { + "description": "The time the restore finished, unset for ongoing restores.", + "format": "google-datetime", + "type": "string" + }, + "operationState": { + "description": "The operation state of the restore.", + "enum": [ + "OPERATION_STATE_UNSPECIFIED", + "INITIALIZING", + "PROCESSING", + "CANCELLING", + "FINALIZING", + "SUCCESSFUL", + "FAILED", + "CANCELLED" + ], + "enumDescriptions": [ + "Unspecified.", + "Request is being prepared for processing.", + "Request is actively being processed.", + "Request is in the process of being cancelled after user called google.longrunning.Operations.CancelOperation on the operation.", + "Request has been processed and is in its finalization stage.", + "Request has completed successfully.", + "Request has finished being processed, but encountered an error.", + "Request has finished being cancelled after user called google.longrunning.Operations.CancelOperation." + ], + "type": "string" + }, + "startTime": { + "description": "The time the restore was started.", + "format": "google-datetime", + "type": "string" + } + }, + "type": "object" + }, "GoogleFirestoreAdminV1RestoreDatabaseRequest": { "description": "The request message for FirestoreAdmin.RestoreDatabase.", "id": "GoogleFirestoreAdminV1RestoreDatabaseRequest", @@ -3608,7 +3657,7 @@ "type": "object" }, "ReadWrite": { - "description": "Options for a transaction that can be used to read and write documents.", + "description": "Options for a transaction that can be used to read and write documents. Firestore does not allow 3rd party auth requests to create read-write. transactions.", "id": "ReadWrite", "properties": { "retryTransaction": { diff --git a/firestore/v1/firestore-gen.go b/firestore/v1/firestore-gen.go index 5e588c4818a..fcbf91aa6eb 100644 --- a/firestore/v1/firestore-gen.go +++ b/firestore/v1/firestore-gen.go @@ -2668,6 +2668,62 @@ func (s *GoogleFirestoreAdminV1Progress) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// GoogleFirestoreAdminV1RestoreDatabaseMetadata: Metadata for the +// long-running operation from the RestoreDatabase request. +type GoogleFirestoreAdminV1RestoreDatabaseMetadata struct { + // Backup: The name of the backup restoring from. + Backup string `json:"backup,omitempty"` + + // Database: The name of the database being restored to. + Database string `json:"database,omitempty"` + + // EndTime: The time the restore finished, unset for ongoing restores. + EndTime string `json:"endTime,omitempty"` + + // OperationState: The operation state of the restore. + // + // Possible values: + // "OPERATION_STATE_UNSPECIFIED" - Unspecified. + // "INITIALIZING" - Request is being prepared for processing. + // "PROCESSING" - Request is actively being processed. + // "CANCELLING" - Request is in the process of being cancelled after + // user called google.longrunning.Operations.CancelOperation on the + // operation. + // "FINALIZING" - Request has been processed and is in its + // finalization stage. + // "SUCCESSFUL" - Request has completed successfully. + // "FAILED" - Request has finished being processed, but encountered an + // error. + // "CANCELLED" - Request has finished being cancelled after user + // called google.longrunning.Operations.CancelOperation. + OperationState string `json:"operationState,omitempty"` + + // StartTime: The time the restore was started. + StartTime string `json:"startTime,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Backup") 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. "Backup") 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 *GoogleFirestoreAdminV1RestoreDatabaseMetadata) MarshalJSON() ([]byte, error) { + type NoMethod GoogleFirestoreAdminV1RestoreDatabaseMetadata + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // GoogleFirestoreAdminV1RestoreDatabaseRequest: The request message for // FirestoreAdmin.RestoreDatabase. type GoogleFirestoreAdminV1RestoreDatabaseRequest struct { @@ -3615,7 +3671,8 @@ func (s *ReadOnly) MarshalJSON() ([]byte, error) { } // ReadWrite: Options for a transaction that can be used to read and -// write documents. +// write documents. Firestore does not allow 3rd party auth requests to +// create read-write. transactions. type ReadWrite struct { // RetryTransaction: An optional transaction to retry. RetryTransaction string `json:"retryTransaction,omitempty"` @@ -4522,7 +4579,11 @@ func (r *ProjectsDatabasesService) Create(parent string, googlefirestoreadminv1d // DatabaseId sets the optional parameter "databaseId": Required. The ID // to use for the database, which will become the final component of the -// database's resource name. The value must be set to "(default)". +// database's resource name. This value should be 4-63 characters. Valid +// characters are /a-z-/ with first character a letter and the last a +// letter or a number. Must not be UUID-like +// /[0-9a-f]{8}(-[0-9a-f]{4}){3}-[0-9a-f]{12}/. "(default)" database id +// is also valid. func (c *ProjectsDatabasesCreateCall) DatabaseId(databaseId string) *ProjectsDatabasesCreateCall { c.urlParams_.Set("databaseId", databaseId) return c @@ -4628,7 +4689,7 @@ func (c *ProjectsDatabasesCreateCall) Do(opts ...googleapi.CallOption) (*GoogleL // ], // "parameters": { // "databaseId": { - // "description": "Required. The ID to use for the database, which will become the final component of the database's resource name. The value must be set to \"(default)\".", + // "description": "Required. The ID to use for the database, which will become the final component of the database's resource name. This value should be 4-63 characters. Valid characters are /a-z-/ with first character a letter and the last a letter or a number. Must not be UUID-like /[0-9a-f]{8}(-[0-9a-f]{4}){3}-[0-9a-f]{12}/. \"(default)\" database id is also valid.", // "location": "query", // "type": "string" // }, @@ -6649,7 +6710,7 @@ type ProjectsDatabasesCollectionGroupsFieldsListCall struct { // Currently, FirestoreAdmin.ListFields only supports listing fields // that have been explicitly overridden. To issue this query, call // FirestoreAdmin.ListFields with the filter set to -// `indexConfig.usesAncestorConfig:false` . +// `indexConfig.usesAncestorConfig:false or `ttlConfig:*`. // // - parent: A parent name of the form // `projects/{project_id}/databases/{database_id}/collectionGroups/{col @@ -6786,7 +6847,7 @@ func (c *ProjectsDatabasesCollectionGroupsFieldsListCall) Do(opts ...googleapi.C } return ret, nil // { - // "description": "Lists the field configuration and metadata for this database. Currently, FirestoreAdmin.ListFields only supports listing fields that have been explicitly overridden. To issue this query, call FirestoreAdmin.ListFields with the filter set to `indexConfig.usesAncestorConfig:false` .", + // "description": "Lists the field configuration and metadata for this database. Currently, FirestoreAdmin.ListFields only supports listing fields that have been explicitly overridden. To issue this query, call FirestoreAdmin.ListFields with the filter set to `indexConfig.usesAncestorConfig:false or `ttlConfig:*`.", // "flatPath": "v1/projects/{projectsId}/databases/{databasesId}/collectionGroups/{collectionGroupsId}/fields", // "httpMethod": "GET", // "id": "firestore.projects.databases.collectionGroups.fields.list", diff --git a/firestore/v1beta1/firestore-api.json b/firestore/v1beta1/firestore-api.json index 8eb01640981..671eb0282b2 100644 --- a/firestore/v1beta1/firestore-api.json +++ b/firestore/v1beta1/firestore-api.json @@ -950,7 +950,7 @@ } } }, - "revision": "20230611", + "revision": "20230621", "rootUrl": "https://firestore.googleapis.com/", "schemas": { "Aggregation": { @@ -1556,6 +1556,55 @@ }, "type": "object" }, + "GoogleFirestoreAdminV1RestoreDatabaseMetadata": { + "description": "Metadata for the long-running operation from the RestoreDatabase request.", + "id": "GoogleFirestoreAdminV1RestoreDatabaseMetadata", + "properties": { + "backup": { + "description": "The name of the backup restoring from.", + "type": "string" + }, + "database": { + "description": "The name of the database being restored to.", + "type": "string" + }, + "endTime": { + "description": "The time the restore finished, unset for ongoing restores.", + "format": "google-datetime", + "type": "string" + }, + "operationState": { + "description": "The operation state of the restore.", + "enum": [ + "OPERATION_STATE_UNSPECIFIED", + "INITIALIZING", + "PROCESSING", + "CANCELLING", + "FINALIZING", + "SUCCESSFUL", + "FAILED", + "CANCELLED" + ], + "enumDescriptions": [ + "Unspecified.", + "Request is being prepared for processing.", + "Request is actively being processed.", + "Request is in the process of being cancelled after user called google.longrunning.Operations.CancelOperation on the operation.", + "Request has been processed and is in its finalization stage.", + "Request has completed successfully.", + "Request has finished being processed, but encountered an error.", + "Request has finished being cancelled after user called google.longrunning.Operations.CancelOperation." + ], + "type": "string" + }, + "startTime": { + "description": "The time the restore was started.", + "format": "google-datetime", + "type": "string" + } + }, + "type": "object" + }, "GoogleFirestoreAdminV1UpdateDatabaseMetadata": { "description": "Metadata related to the update database operation.", "id": "GoogleFirestoreAdminV1UpdateDatabaseMetadata", @@ -2180,7 +2229,7 @@ "type": "object" }, "ReadWrite": { - "description": "Options for a transaction that can be used to read and write documents.", + "description": "Options for a transaction that can be used to read and write documents. Firestore does not allow 3rd party auth requests to create read-write. transactions.", "id": "ReadWrite", "properties": { "retryTransaction": { diff --git a/firestore/v1beta1/firestore-gen.go b/firestore/v1beta1/firestore-gen.go index c1f1d87cb2b..b28bb88e92b 100644 --- a/firestore/v1beta1/firestore-gen.go +++ b/firestore/v1beta1/firestore-gen.go @@ -1399,6 +1399,62 @@ func (s *Filter) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// GoogleFirestoreAdminV1RestoreDatabaseMetadata: Metadata for the +// long-running operation from the RestoreDatabase request. +type GoogleFirestoreAdminV1RestoreDatabaseMetadata struct { + // Backup: The name of the backup restoring from. + Backup string `json:"backup,omitempty"` + + // Database: The name of the database being restored to. + Database string `json:"database,omitempty"` + + // EndTime: The time the restore finished, unset for ongoing restores. + EndTime string `json:"endTime,omitempty"` + + // OperationState: The operation state of the restore. + // + // Possible values: + // "OPERATION_STATE_UNSPECIFIED" - Unspecified. + // "INITIALIZING" - Request is being prepared for processing. + // "PROCESSING" - Request is actively being processed. + // "CANCELLING" - Request is in the process of being cancelled after + // user called google.longrunning.Operations.CancelOperation on the + // operation. + // "FINALIZING" - Request has been processed and is in its + // finalization stage. + // "SUCCESSFUL" - Request has completed successfully. + // "FAILED" - Request has finished being processed, but encountered an + // error. + // "CANCELLED" - Request has finished being cancelled after user + // called google.longrunning.Operations.CancelOperation. + OperationState string `json:"operationState,omitempty"` + + // StartTime: The time the restore was started. + StartTime string `json:"startTime,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Backup") 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. "Backup") 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 *GoogleFirestoreAdminV1RestoreDatabaseMetadata) MarshalJSON() ([]byte, error) { + type NoMethod GoogleFirestoreAdminV1RestoreDatabaseMetadata + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // GoogleFirestoreAdminV1UpdateDatabaseMetadata: Metadata related to the // update database operation. type GoogleFirestoreAdminV1UpdateDatabaseMetadata struct { @@ -2483,7 +2539,8 @@ func (s *ReadOnly) MarshalJSON() ([]byte, error) { } // ReadWrite: Options for a transaction that can be used to read and -// write documents. +// write documents. Firestore does not allow 3rd party auth requests to +// create read-write. transactions. type ReadWrite struct { // RetryTransaction: An optional transaction to retry. RetryTransaction string `json:"retryTransaction,omitempty"` diff --git a/firestore/v1beta2/firestore-api.json b/firestore/v1beta2/firestore-api.json index 4e721809ed7..27a686c55b3 100644 --- a/firestore/v1beta2/firestore-api.json +++ b/firestore/v1beta2/firestore-api.json @@ -415,7 +415,7 @@ } } }, - "revision": "20220319", + "revision": "20230621", "rootUrl": "https://firestore.googleapis.com/", "schemas": { "Empty": { @@ -424,6 +424,55 @@ "properties": {}, "type": "object" }, + "GoogleFirestoreAdminV1RestoreDatabaseMetadata": { + "description": "Metadata for the long-running operation from the RestoreDatabase request.", + "id": "GoogleFirestoreAdminV1RestoreDatabaseMetadata", + "properties": { + "backup": { + "description": "The name of the backup restoring from.", + "type": "string" + }, + "database": { + "description": "The name of the database being restored to.", + "type": "string" + }, + "endTime": { + "description": "The time the restore finished, unset for ongoing restores.", + "format": "google-datetime", + "type": "string" + }, + "operationState": { + "description": "The operation state of the restore.", + "enum": [ + "OPERATION_STATE_UNSPECIFIED", + "INITIALIZING", + "PROCESSING", + "CANCELLING", + "FINALIZING", + "SUCCESSFUL", + "FAILED", + "CANCELLED" + ], + "enumDescriptions": [ + "Unspecified.", + "Request is being prepared for processing.", + "Request is actively being processed.", + "Request is in the process of being cancelled after user called google.longrunning.Operations.CancelOperation on the operation.", + "Request has been processed and is in its finalization stage.", + "Request has completed successfully.", + "Request has finished being processed, but encountered an error.", + "Request has finished being cancelled after user called google.longrunning.Operations.CancelOperation." + ], + "type": "string" + }, + "startTime": { + "description": "The time the restore was started.", + "format": "google-datetime", + "type": "string" + } + }, + "type": "object" + }, "GoogleFirestoreAdminV1UpdateDatabaseMetadata": { "description": "Metadata related to the update database operation.", "id": "GoogleFirestoreAdminV1UpdateDatabaseMetadata", diff --git a/firestore/v1beta2/firestore-gen.go b/firestore/v1beta2/firestore-gen.go index d9250ec402d..f5a0c87fc2c 100644 --- a/firestore/v1beta2/firestore-gen.go +++ b/firestore/v1beta2/firestore-gen.go @@ -216,6 +216,62 @@ type Empty struct { googleapi.ServerResponse `json:"-"` } +// GoogleFirestoreAdminV1RestoreDatabaseMetadata: Metadata for the +// long-running operation from the RestoreDatabase request. +type GoogleFirestoreAdminV1RestoreDatabaseMetadata struct { + // Backup: The name of the backup restoring from. + Backup string `json:"backup,omitempty"` + + // Database: The name of the database being restored to. + Database string `json:"database,omitempty"` + + // EndTime: The time the restore finished, unset for ongoing restores. + EndTime string `json:"endTime,omitempty"` + + // OperationState: The operation state of the restore. + // + // Possible values: + // "OPERATION_STATE_UNSPECIFIED" - Unspecified. + // "INITIALIZING" - Request is being prepared for processing. + // "PROCESSING" - Request is actively being processed. + // "CANCELLING" - Request is in the process of being cancelled after + // user called google.longrunning.Operations.CancelOperation on the + // operation. + // "FINALIZING" - Request has been processed and is in its + // finalization stage. + // "SUCCESSFUL" - Request has completed successfully. + // "FAILED" - Request has finished being processed, but encountered an + // error. + // "CANCELLED" - Request has finished being cancelled after user + // called google.longrunning.Operations.CancelOperation. + OperationState string `json:"operationState,omitempty"` + + // StartTime: The time the restore was started. + StartTime string `json:"startTime,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Backup") 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. "Backup") 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 *GoogleFirestoreAdminV1RestoreDatabaseMetadata) MarshalJSON() ([]byte, error) { + type NoMethod GoogleFirestoreAdminV1RestoreDatabaseMetadata + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // GoogleFirestoreAdminV1UpdateDatabaseMetadata: Metadata related to the // update database operation. type GoogleFirestoreAdminV1UpdateDatabaseMetadata struct { diff --git a/gkehub/v1/gkehub-api.json b/gkehub/v1/gkehub-api.json index 6062aa0dd9b..1c6b4fe614d 100644 --- a/gkehub/v1/gkehub-api.json +++ b/gkehub/v1/gkehub-api.json @@ -1518,7 +1518,7 @@ } } }, - "revision": "20230620", + "revision": "20230627", "rootUrl": "https://gkehub.googleapis.com/", "schemas": { "AppDevExperienceFeatureSpec": { @@ -2777,16 +2777,114 @@ }, "type": "object" }, + "FleetObservabilityFeatureError": { + "description": "All error details of the fleet observability feature.", + "id": "FleetObservabilityFeatureError", + "properties": { + "code": { + "description": "The code of the error.", + "type": "string" + }, + "description": { + "description": "A human-readable description of the current status.", + "type": "string" + } + }, + "type": "object" + }, "FleetObservabilityFeatureSpec": { "description": "**Fleet Observability**: The Hub-wide input for the FleetObservability feature.", "id": "FleetObservabilityFeatureSpec", - "properties": {}, + "properties": { + "loggingConfig": { + "$ref": "FleetObservabilityLoggingConfig", + "description": "Specified if fleet logging feature is enabled for the entire fleet. If UNSPECIFIED, fleet logging feature is disabled for the entire fleet." + } + }, "type": "object" }, "FleetObservabilityFeatureState": { "description": "**FleetObservability**: Hub-wide Feature for FleetObservability feature. state.", "id": "FleetObservabilityFeatureState", - "properties": {}, + "properties": { + "logging": { + "$ref": "FleetObservabilityFleetObservabilityLoggingState", + "description": "The feature state of default logging." + }, + "monitoring": { + "$ref": "FleetObservabilityFleetObservabilityMonitoringState", + "description": "The feature state of fleet monitoring." + } + }, + "type": "object" + }, + "FleetObservabilityFleetObservabilityBaseFeatureState": { + "description": "Base state for fleet observability feature.", + "id": "FleetObservabilityFleetObservabilityBaseFeatureState", + "properties": { + "code": { + "description": "The high-level, machine-readable status of this Feature.", + "enum": [ + "CODE_UNSPECIFIED", + "OK", + "ERROR" + ], + "enumDescriptions": [ + "Unknown or not set.", + "The Feature is operating normally.", + "The Feature is encountering errors in the reconciliation. The Feature may need intervention to return to normal operation. See the description and any associated Feature-specific details for more information." + ], + "type": "string" + }, + "errors": { + "description": "Errors after reconciling the monitoring and logging feature if the code is not OK.", + "items": { + "$ref": "FleetObservabilityFeatureError" + }, + "type": "array" + } + }, + "type": "object" + }, + "FleetObservabilityFleetObservabilityLoggingState": { + "description": "Feature state for logging feature.", + "id": "FleetObservabilityFleetObservabilityLoggingState", + "properties": { + "defaultLog": { + "$ref": "FleetObservabilityFleetObservabilityBaseFeatureState", + "description": "The base feature state of fleet default log." + }, + "scopeLog": { + "$ref": "FleetObservabilityFleetObservabilityBaseFeatureState", + "description": "The base feature state of fleet scope log." + } + }, + "type": "object" + }, + "FleetObservabilityFleetObservabilityMonitoringState": { + "description": "Feature state for monitoring feature.", + "id": "FleetObservabilityFleetObservabilityMonitoringState", + "properties": { + "state": { + "$ref": "FleetObservabilityFleetObservabilityBaseFeatureState", + "description": "The base feature state of fleet monitoring feature." + } + }, + "type": "object" + }, + "FleetObservabilityLoggingConfig": { + "description": "LoggingConfig defines the configuration for different types of logs.", + "id": "FleetObservabilityLoggingConfig", + "properties": { + "defaultConfig": { + "$ref": "FleetObservabilityRoutingConfig", + "description": "Specified if applying the default routing config to logs not specified in other configs." + }, + "fleetScopeLogsConfig": { + "$ref": "FleetObservabilityRoutingConfig", + "description": "Specified if applying the routing config to all logs for all fleet scopes." + } + }, "type": "object" }, "FleetObservabilityMembershipSpec": { @@ -2801,6 +2899,27 @@ "properties": {}, "type": "object" }, + "FleetObservabilityRoutingConfig": { + "description": "RoutingConfig configures the behaviour of fleet logging feature.", + "id": "FleetObservabilityRoutingConfig", + "properties": { + "mode": { + "description": "mode configures the logs routing mode.", + "enum": [ + "MODE_UNSPECIFIED", + "COPY", + "MOVE" + ], + "enumDescriptions": [ + "If UNSPECIFIED, fleet logging feature is disabled.", + "logs will be copied to the destination project.", + "logs will be moved to the destination project." + ], + "type": "string" + } + }, + "type": "object" + }, "GenerateConnectManifestResponse": { "description": "GenerateConnectManifestResponse contains manifest information for installing/upgrading a Connect agent.", "id": "GenerateConnectManifestResponse", diff --git a/gkehub/v1/gkehub-gen.go b/gkehub/v1/gkehub-gen.go index c21f881605c..e33f8dac202 100644 --- a/gkehub/v1/gkehub-gen.go +++ b/gkehub/v1/gkehub-gen.go @@ -2241,14 +2241,235 @@ func (s *FleetLifecycleState) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// FleetObservabilityFeatureError: All error details of the fleet +// observability feature. +type FleetObservabilityFeatureError struct { + // Code: The code of the error. + Code string `json:"code,omitempty"` + + // Description: A human-readable description of the current status. + Description string `json:"description,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Code") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Code") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *FleetObservabilityFeatureError) MarshalJSON() ([]byte, error) { + type NoMethod FleetObservabilityFeatureError + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // FleetObservabilityFeatureSpec: **Fleet Observability**: The Hub-wide // input for the FleetObservability feature. type FleetObservabilityFeatureSpec struct { + // LoggingConfig: Specified if fleet logging feature is enabled for the + // entire fleet. If UNSPECIFIED, fleet logging feature is disabled for + // the entire fleet. + LoggingConfig *FleetObservabilityLoggingConfig `json:"loggingConfig,omitempty"` + + // ForceSendFields is a list of field names (e.g. "LoggingConfig") 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. "LoggingConfig") 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 *FleetObservabilityFeatureSpec) MarshalJSON() ([]byte, error) { + type NoMethod FleetObservabilityFeatureSpec + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } // FleetObservabilityFeatureState: **FleetObservability**: Hub-wide // Feature for FleetObservability feature. state. type FleetObservabilityFeatureState struct { + // Logging: The feature state of default logging. + Logging *FleetObservabilityFleetObservabilityLoggingState `json:"logging,omitempty"` + + // Monitoring: The feature state of fleet monitoring. + Monitoring *FleetObservabilityFleetObservabilityMonitoringState `json:"monitoring,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Logging") 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. "Logging") 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 *FleetObservabilityFeatureState) MarshalJSON() ([]byte, error) { + type NoMethod FleetObservabilityFeatureState + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// FleetObservabilityFleetObservabilityBaseFeatureState: Base state for +// fleet observability feature. +type FleetObservabilityFleetObservabilityBaseFeatureState struct { + // Code: The high-level, machine-readable status of this Feature. + // + // Possible values: + // "CODE_UNSPECIFIED" - Unknown or not set. + // "OK" - The Feature is operating normally. + // "ERROR" - The Feature is encountering errors in the reconciliation. + // The Feature may need intervention to return to normal operation. See + // the description and any associated Feature-specific details for more + // information. + Code string `json:"code,omitempty"` + + // Errors: Errors after reconciling the monitoring and logging feature + // if the code is not OK. + Errors []*FleetObservabilityFeatureError `json:"errors,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Code") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Code") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *FleetObservabilityFleetObservabilityBaseFeatureState) MarshalJSON() ([]byte, error) { + type NoMethod FleetObservabilityFleetObservabilityBaseFeatureState + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// FleetObservabilityFleetObservabilityLoggingState: Feature state for +// logging feature. +type FleetObservabilityFleetObservabilityLoggingState struct { + // DefaultLog: The base feature state of fleet default log. + DefaultLog *FleetObservabilityFleetObservabilityBaseFeatureState `json:"defaultLog,omitempty"` + + // ScopeLog: The base feature state of fleet scope log. + ScopeLog *FleetObservabilityFleetObservabilityBaseFeatureState `json:"scopeLog,omitempty"` + + // ForceSendFields is a list of field names (e.g. "DefaultLog") 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. "DefaultLog") 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 *FleetObservabilityFleetObservabilityLoggingState) MarshalJSON() ([]byte, error) { + type NoMethod FleetObservabilityFleetObservabilityLoggingState + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// FleetObservabilityFleetObservabilityMonitoringState: Feature state +// for monitoring feature. +type FleetObservabilityFleetObservabilityMonitoringState struct { + // State: The base feature state of fleet monitoring feature. + State *FleetObservabilityFleetObservabilityBaseFeatureState `json:"state,omitempty"` + + // ForceSendFields is a list of field names (e.g. "State") 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. "State") 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 *FleetObservabilityFleetObservabilityMonitoringState) MarshalJSON() ([]byte, error) { + type NoMethod FleetObservabilityFleetObservabilityMonitoringState + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// FleetObservabilityLoggingConfig: LoggingConfig defines the +// configuration for different types of logs. +type FleetObservabilityLoggingConfig struct { + // DefaultConfig: Specified if applying the default routing config to + // logs not specified in other configs. + DefaultConfig *FleetObservabilityRoutingConfig `json:"defaultConfig,omitempty"` + + // FleetScopeLogsConfig: Specified if applying the routing config to all + // logs for all fleet scopes. + FleetScopeLogsConfig *FleetObservabilityRoutingConfig `json:"fleetScopeLogsConfig,omitempty"` + + // ForceSendFields is a list of field names (e.g. "DefaultConfig") 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. "DefaultConfig") 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 *FleetObservabilityLoggingConfig) MarshalJSON() ([]byte, error) { + type NoMethod FleetObservabilityLoggingConfig + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } // FleetObservabilityMembershipSpec: **FleetObservability**: The @@ -2261,6 +2482,41 @@ type FleetObservabilityMembershipSpec struct { type FleetObservabilityMembershipState struct { } +// FleetObservabilityRoutingConfig: RoutingConfig configures the +// behaviour of fleet logging feature. +type FleetObservabilityRoutingConfig struct { + // Mode: mode configures the logs routing mode. + // + // Possible values: + // "MODE_UNSPECIFIED" - If UNSPECIFIED, fleet logging feature is + // disabled. + // "COPY" - logs will be copied to the destination project. + // "MOVE" - logs will be moved to the destination project. + Mode string `json:"mode,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Mode") 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. "Mode") 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 *FleetObservabilityRoutingConfig) MarshalJSON() ([]byte, error) { + type NoMethod FleetObservabilityRoutingConfig + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // GenerateConnectManifestResponse: GenerateConnectManifestResponse // contains manifest information for installing/upgrading a Connect // agent. diff --git a/gkehub/v1alpha/gkehub-api.json b/gkehub/v1alpha/gkehub-api.json index c98a290236b..70840db134a 100644 --- a/gkehub/v1alpha/gkehub-api.json +++ b/gkehub/v1alpha/gkehub-api.json @@ -2098,7 +2098,7 @@ } } }, - "revision": "20230620", + "revision": "20230627", "rootUrl": "https://gkehub.googleapis.com/", "schemas": { "AnthosObservabilityFeatureSpec": { @@ -3787,6 +3787,21 @@ }, "type": "object" }, + "FleetObservabilityFeatureError": { + "description": "All error details of the fleet observability feature.", + "id": "FleetObservabilityFeatureError", + "properties": { + "code": { + "description": "The code of the error.", + "type": "string" + }, + "description": { + "description": "A human-readable description of the current status.", + "type": "string" + } + }, + "type": "object" + }, "FleetObservabilityFeatureSpec": { "description": "**Fleet Observability**: The Hub-wide input for the FleetObservability feature.", "id": "FleetObservabilityFeatureSpec", @@ -3801,7 +3816,70 @@ "FleetObservabilityFeatureState": { "description": "**FleetObservability**: Hub-wide Feature for FleetObservability feature. state.", "id": "FleetObservabilityFeatureState", - "properties": {}, + "properties": { + "logging": { + "$ref": "FleetObservabilityFleetObservabilityLoggingState", + "description": "The feature state of default logging." + }, + "monitoring": { + "$ref": "FleetObservabilityFleetObservabilityMonitoringState", + "description": "The feature state of fleet monitoring." + } + }, + "type": "object" + }, + "FleetObservabilityFleetObservabilityBaseFeatureState": { + "description": "Base state for fleet observability feature.", + "id": "FleetObservabilityFleetObservabilityBaseFeatureState", + "properties": { + "code": { + "description": "The high-level, machine-readable status of this Feature.", + "enum": [ + "CODE_UNSPECIFIED", + "OK", + "ERROR" + ], + "enumDescriptions": [ + "Unknown or not set.", + "The Feature is operating normally.", + "The Feature is encountering errors in the reconciliation. The Feature may need intervention to return to normal operation. See the description and any associated Feature-specific details for more information." + ], + "type": "string" + }, + "errors": { + "description": "Errors after reconciling the monitoring and logging feature if the code is not OK.", + "items": { + "$ref": "FleetObservabilityFeatureError" + }, + "type": "array" + } + }, + "type": "object" + }, + "FleetObservabilityFleetObservabilityLoggingState": { + "description": "Feature state for logging feature.", + "id": "FleetObservabilityFleetObservabilityLoggingState", + "properties": { + "defaultLog": { + "$ref": "FleetObservabilityFleetObservabilityBaseFeatureState", + "description": "The base feature state of fleet default log." + }, + "scopeLog": { + "$ref": "FleetObservabilityFleetObservabilityBaseFeatureState", + "description": "The base feature state of fleet scope log." + } + }, + "type": "object" + }, + "FleetObservabilityFleetObservabilityMonitoringState": { + "description": "Feature state for monitoring feature.", + "id": "FleetObservabilityFleetObservabilityMonitoringState", + "properties": { + "state": { + "$ref": "FleetObservabilityFleetObservabilityBaseFeatureState", + "description": "The base feature state of fleet monitoring feature." + } + }, "type": "object" }, "FleetObservabilityLoggingConfig": { @@ -5069,23 +5147,11 @@ "id": "PolicyControllerBundleInstallSpec", "properties": { "exemptedNamespaces": { - "description": "the set of namespaces to be exempted from the bundle", + "description": "The set of namespaces to be exempted from the bundle.", "items": { "type": "string" }, "type": "array" - }, - "management": { - "description": "Management specifies how the bundle will be managed by the controller.", - "enum": [ - "MANAGEMENT_UNSPECIFIED", - "INSTALLED" - ], - "enumDescriptions": [ - "No Management strategy has been specified.", - "The entity should be insistently reconciled by the Hub controller" - ], - "type": "string" } }, "type": "object" @@ -5153,10 +5219,6 @@ "referentialRulesEnabled": { "description": "Enables the ability to use Constraint Templates that reference to objects other than the object currently being evaluated.", "type": "boolean" - }, - "templateLibraryConfig": { - "$ref": "PolicyControllerTemplateLibraryConfig", - "description": "Configures the library templates to install along with Policy Controller." } }, "type": "object" @@ -5187,13 +5249,6 @@ "description": "Currently these include (also serving as map keys): 1. \"admission\" 2. \"audit\" 3. \"mutation\"", "type": "object" }, - "contentStates": { - "additionalProperties": { - "$ref": "PolicyControllerOnClusterState" - }, - "description": "The state of the template library and any bundles included in the chosen version of the manifest", - "type": "object" - }, "policyContentState": { "$ref": "PolicyControllerPolicyContentState", "description": "The overall content state observed by the Hub Feature controller." @@ -5336,6 +5391,20 @@ "$ref": "PolicyControllerResourceRequirements", "description": "Container resource requirements." }, + "podAffinity": { + "description": "Pod affinity configuration.", + "enum": [ + "AFFINITY_UNSPECIFIED", + "NO_AFFINITY", + "ANTI_AFFINITY" + ], + "enumDescriptions": [ + "No affinity configuration has been specified.", + "Affinity configurations will be removed from the deployment.", + "Anti-affinity configuration will be applied to this deployment. Default for admissions deployment." + ], + "type": "string" + }, "podAntiAffinity": { "description": "Pod anti-affinity enablement.", "type": "boolean" @@ -5389,10 +5458,6 @@ "description": "The config specifying which default library templates to install.", "id": "PolicyControllerTemplateLibraryConfig", "properties": { - "included": { - "description": "Whether the standard template library should be installed or not.", - "type": "boolean" - }, "installation": { "description": "Configures the manner in which the template library is installed on the cluster.", "enum": [ diff --git a/gkehub/v1alpha/gkehub-gen.go b/gkehub/v1alpha/gkehub-gen.go index e89306db282..2a1165d870f 100644 --- a/gkehub/v1alpha/gkehub-gen.go +++ b/gkehub/v1alpha/gkehub-gen.go @@ -3055,6 +3055,38 @@ func (s *FleetLifecycleState) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// FleetObservabilityFeatureError: All error details of the fleet +// observability feature. +type FleetObservabilityFeatureError struct { + // Code: The code of the error. + Code string `json:"code,omitempty"` + + // Description: A human-readable description of the current status. + Description string `json:"description,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Code") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Code") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *FleetObservabilityFeatureError) MarshalJSON() ([]byte, error) { + type NoMethod FleetObservabilityFeatureError + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // FleetObservabilityFeatureSpec: **Fleet Observability**: The Hub-wide // input for the FleetObservability feature. type FleetObservabilityFeatureSpec struct { @@ -3089,6 +3121,135 @@ func (s *FleetObservabilityFeatureSpec) MarshalJSON() ([]byte, error) { // FleetObservabilityFeatureState: **FleetObservability**: Hub-wide // Feature for FleetObservability feature. state. type FleetObservabilityFeatureState struct { + // Logging: The feature state of default logging. + Logging *FleetObservabilityFleetObservabilityLoggingState `json:"logging,omitempty"` + + // Monitoring: The feature state of fleet monitoring. + Monitoring *FleetObservabilityFleetObservabilityMonitoringState `json:"monitoring,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Logging") 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. "Logging") 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 *FleetObservabilityFeatureState) MarshalJSON() ([]byte, error) { + type NoMethod FleetObservabilityFeatureState + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// FleetObservabilityFleetObservabilityBaseFeatureState: Base state for +// fleet observability feature. +type FleetObservabilityFleetObservabilityBaseFeatureState struct { + // Code: The high-level, machine-readable status of this Feature. + // + // Possible values: + // "CODE_UNSPECIFIED" - Unknown or not set. + // "OK" - The Feature is operating normally. + // "ERROR" - The Feature is encountering errors in the reconciliation. + // The Feature may need intervention to return to normal operation. See + // the description and any associated Feature-specific details for more + // information. + Code string `json:"code,omitempty"` + + // Errors: Errors after reconciling the monitoring and logging feature + // if the code is not OK. + Errors []*FleetObservabilityFeatureError `json:"errors,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Code") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Code") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *FleetObservabilityFleetObservabilityBaseFeatureState) MarshalJSON() ([]byte, error) { + type NoMethod FleetObservabilityFleetObservabilityBaseFeatureState + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// FleetObservabilityFleetObservabilityLoggingState: Feature state for +// logging feature. +type FleetObservabilityFleetObservabilityLoggingState struct { + // DefaultLog: The base feature state of fleet default log. + DefaultLog *FleetObservabilityFleetObservabilityBaseFeatureState `json:"defaultLog,omitempty"` + + // ScopeLog: The base feature state of fleet scope log. + ScopeLog *FleetObservabilityFleetObservabilityBaseFeatureState `json:"scopeLog,omitempty"` + + // ForceSendFields is a list of field names (e.g. "DefaultLog") 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. "DefaultLog") 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 *FleetObservabilityFleetObservabilityLoggingState) MarshalJSON() ([]byte, error) { + type NoMethod FleetObservabilityFleetObservabilityLoggingState + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// FleetObservabilityFleetObservabilityMonitoringState: Feature state +// for monitoring feature. +type FleetObservabilityFleetObservabilityMonitoringState struct { + // State: The base feature state of fleet monitoring feature. + State *FleetObservabilityFleetObservabilityBaseFeatureState `json:"state,omitempty"` + + // ForceSendFields is a list of field names (e.g. "State") 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. "State") 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 *FleetObservabilityFleetObservabilityMonitoringState) MarshalJSON() ([]byte, error) { + type NoMethod FleetObservabilityFleetObservabilityMonitoringState + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } // FleetObservabilityLoggingConfig: LoggingConfig defines the @@ -5205,20 +5366,10 @@ func (s *Policy) MarshalJSON() ([]byte, error) { // PolicyControllerBundleInstallSpec: BundleInstallSpec is the // specification configuration for a single managed bundle. type PolicyControllerBundleInstallSpec struct { - // ExemptedNamespaces: the set of namespaces to be exempted from the - // bundle + // ExemptedNamespaces: The set of namespaces to be exempted from the + // bundle. ExemptedNamespaces []string `json:"exemptedNamespaces,omitempty"` - // Management: Management specifies how the bundle will be managed by - // the controller. - // - // Possible values: - // "MANAGEMENT_UNSPECIFIED" - No Management strategy has been - // specified. - // "INSTALLED" - The entity should be insistently reconciled by the - // Hub controller - Management string `json:"management,omitempty"` - // ForceSendFields is a list of field names (e.g. "ExemptedNamespaces") // to unconditionally include in API requests. By default, fields with // empty or default values are omitted from API requests. However, any @@ -5298,10 +5449,6 @@ type PolicyControllerHubConfig struct { // being evaluated. ReferentialRulesEnabled bool `json:"referentialRulesEnabled,omitempty"` - // TemplateLibraryConfig: Configures the library templates to install - // along with Policy Controller. - TemplateLibraryConfig *PolicyControllerTemplateLibraryConfig `json:"templateLibraryConfig,omitempty"` - // ForceSendFields is a list of field names (e.g. // "AuditIntervalSeconds") to unconditionally include in API requests. // By default, fields with empty or default values are omitted from API @@ -5369,10 +5516,6 @@ type PolicyControllerMembershipState struct { // 1. "admission" 2. "audit" 3. "mutation" ComponentStates map[string]PolicyControllerOnClusterState `json:"componentStates,omitempty"` - // ContentStates: The state of the template library and any bundles - // included in the chosen version of the manifest - ContentStates map[string]PolicyControllerOnClusterState `json:"contentStates,omitempty"` - // PolicyContentState: The overall content state observed by the Hub // Feature controller. PolicyContentState *PolicyControllerPolicyContentState `json:"policyContentState,omitempty"` @@ -5630,6 +5773,17 @@ type PolicyControllerPolicyControllerDeploymentConfig struct { // ContainerResources: Container resource requirements. ContainerResources *PolicyControllerResourceRequirements `json:"containerResources,omitempty"` + // PodAffinity: Pod affinity configuration. + // + // Possible values: + // "AFFINITY_UNSPECIFIED" - No affinity configuration has been + // specified. + // "NO_AFFINITY" - Affinity configurations will be removed from the + // deployment. + // "ANTI_AFFINITY" - Anti-affinity configuration will be applied to + // this deployment. Default for admissions deployment. + PodAffinity string `json:"podAffinity,omitempty"` + // PodAntiAffinity: Pod anti-affinity enablement. PodAntiAffinity bool `json:"podAntiAffinity,omitempty"` @@ -5732,10 +5886,6 @@ func (s *PolicyControllerResourceRequirements) MarshalJSON() ([]byte, error) { // PolicyControllerTemplateLibraryConfig: The config specifying which // default library templates to install. type PolicyControllerTemplateLibraryConfig struct { - // Included: Whether the standard template library should be installed - // or not. - Included bool `json:"included,omitempty"` - // Installation: Configures the manner in which the template library is // installed on the cluster. // @@ -5746,7 +5896,7 @@ type PolicyControllerTemplateLibraryConfig struct { // "ALL" - Install the entire template library. Installation string `json:"installation,omitempty"` - // ForceSendFields is a list of field names (e.g. "Included") to + // ForceSendFields is a list of field names (e.g. "Installation") 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 @@ -5754,10 +5904,10 @@ type PolicyControllerTemplateLibraryConfig struct { // This may be used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "Included") to include in - // API requests with the JSON null value. By default, fields with empty - // values are omitted from API requests. However, any field with an - // empty value appearing in NullFields will be sent to the server as + // NullFields is a list of field names (e.g. "Installation") 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 60eb05b57bb..8232f54cc92 100644 --- a/gkehub/v1beta/gkehub-api.json +++ b/gkehub/v1beta/gkehub-api.json @@ -1784,7 +1784,7 @@ } } }, - "revision": "20230620", + "revision": "20230627", "rootUrl": "https://gkehub.googleapis.com/", "schemas": { "AnthosObservabilityFeatureSpec": { @@ -3076,6 +3076,21 @@ }, "type": "object" }, + "FleetObservabilityFeatureError": { + "description": "All error details of the fleet observability feature.", + "id": "FleetObservabilityFeatureError", + "properties": { + "code": { + "description": "The code of the error.", + "type": "string" + }, + "description": { + "description": "A human-readable description of the current status.", + "type": "string" + } + }, + "type": "object" + }, "FleetObservabilityFeatureSpec": { "description": "**Fleet Observability**: The Hub-wide input for the FleetObservability feature.", "id": "FleetObservabilityFeatureSpec", @@ -3090,7 +3105,70 @@ "FleetObservabilityFeatureState": { "description": "**FleetObservability**: Hub-wide Feature for FleetObservability feature. state.", "id": "FleetObservabilityFeatureState", - "properties": {}, + "properties": { + "logging": { + "$ref": "FleetObservabilityFleetObservabilityLoggingState", + "description": "The feature state of default logging." + }, + "monitoring": { + "$ref": "FleetObservabilityFleetObservabilityMonitoringState", + "description": "The feature state of fleet monitoring." + } + }, + "type": "object" + }, + "FleetObservabilityFleetObservabilityBaseFeatureState": { + "description": "Base state for fleet observability feature.", + "id": "FleetObservabilityFleetObservabilityBaseFeatureState", + "properties": { + "code": { + "description": "The high-level, machine-readable status of this Feature.", + "enum": [ + "CODE_UNSPECIFIED", + "OK", + "ERROR" + ], + "enumDescriptions": [ + "Unknown or not set.", + "The Feature is operating normally.", + "The Feature is encountering errors in the reconciliation. The Feature may need intervention to return to normal operation. See the description and any associated Feature-specific details for more information." + ], + "type": "string" + }, + "errors": { + "description": "Errors after reconciling the monitoring and logging feature if the code is not OK.", + "items": { + "$ref": "FleetObservabilityFeatureError" + }, + "type": "array" + } + }, + "type": "object" + }, + "FleetObservabilityFleetObservabilityLoggingState": { + "description": "Feature state for logging feature.", + "id": "FleetObservabilityFleetObservabilityLoggingState", + "properties": { + "defaultLog": { + "$ref": "FleetObservabilityFleetObservabilityBaseFeatureState", + "description": "The base feature state of fleet default log." + }, + "scopeLog": { + "$ref": "FleetObservabilityFleetObservabilityBaseFeatureState", + "description": "The base feature state of fleet scope log." + } + }, + "type": "object" + }, + "FleetObservabilityFleetObservabilityMonitoringState": { + "description": "Feature state for monitoring feature.", + "id": "FleetObservabilityFleetObservabilityMonitoringState", + "properties": { + "state": { + "$ref": "FleetObservabilityFleetObservabilityBaseFeatureState", + "description": "The base feature state of fleet monitoring feature." + } + }, "type": "object" }, "FleetObservabilityLoggingConfig": { @@ -3978,23 +4056,11 @@ "id": "PolicyControllerBundleInstallSpec", "properties": { "exemptedNamespaces": { - "description": "the set of namespaces to be exempted from the bundle", + "description": "The set of namespaces to be exempted from the bundle.", "items": { "type": "string" }, "type": "array" - }, - "management": { - "description": "Management specifies how the bundle will be managed by the controller.", - "enum": [ - "MANAGEMENT_UNSPECIFIED", - "INSTALLED" - ], - "enumDescriptions": [ - "No Management strategy has been specified.", - "The entity should be insistently reconciled by the Hub controller" - ], - "type": "string" } }, "type": "object" @@ -4062,10 +4128,6 @@ "referentialRulesEnabled": { "description": "Enables the ability to use Constraint Templates that reference to objects other than the object currently being evaluated.", "type": "boolean" - }, - "templateLibraryConfig": { - "$ref": "PolicyControllerTemplateLibraryConfig", - "description": "Configures the library templates to install along with Policy Controller." } }, "type": "object" @@ -4096,13 +4158,6 @@ "description": "Currently these include (also serving as map keys): 1. \"admission\" 2. \"audit\" 3. \"mutation\"", "type": "object" }, - "contentStates": { - "additionalProperties": { - "$ref": "PolicyControllerOnClusterState" - }, - "description": "The state of the template library and any bundles included in the chosen version of the manifest", - "type": "object" - }, "policyContentState": { "$ref": "PolicyControllerPolicyContentState", "description": "The overall content state observed by the Hub Feature controller." @@ -4245,6 +4300,20 @@ "$ref": "PolicyControllerResourceRequirements", "description": "Container resource requirements." }, + "podAffinity": { + "description": "Pod affinity configuration.", + "enum": [ + "AFFINITY_UNSPECIFIED", + "NO_AFFINITY", + "ANTI_AFFINITY" + ], + "enumDescriptions": [ + "No affinity configuration has been specified.", + "Affinity configurations will be removed from the deployment.", + "Anti-affinity configuration will be applied to this deployment. Default for admissions deployment." + ], + "type": "string" + }, "podAntiAffinity": { "description": "Pod anti-affinity enablement.", "type": "boolean" @@ -4298,10 +4367,6 @@ "description": "The config specifying which default library templates to install.", "id": "PolicyControllerTemplateLibraryConfig", "properties": { - "included": { - "description": "Whether the standard template library should be installed or not.", - "type": "boolean" - }, "installation": { "description": "Configures the manner in which the template library is installed on the cluster.", "enum": [ diff --git a/gkehub/v1beta/gkehub-gen.go b/gkehub/v1beta/gkehub-gen.go index 46d62a3e952..12305921ef4 100644 --- a/gkehub/v1beta/gkehub-gen.go +++ b/gkehub/v1beta/gkehub-gen.go @@ -2323,6 +2323,38 @@ func (s *FleetLifecycleState) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// FleetObservabilityFeatureError: All error details of the fleet +// observability feature. +type FleetObservabilityFeatureError struct { + // Code: The code of the error. + Code string `json:"code,omitempty"` + + // Description: A human-readable description of the current status. + Description string `json:"description,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Code") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Code") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *FleetObservabilityFeatureError) MarshalJSON() ([]byte, error) { + type NoMethod FleetObservabilityFeatureError + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // FleetObservabilityFeatureSpec: **Fleet Observability**: The Hub-wide // input for the FleetObservability feature. type FleetObservabilityFeatureSpec struct { @@ -2357,6 +2389,135 @@ func (s *FleetObservabilityFeatureSpec) MarshalJSON() ([]byte, error) { // FleetObservabilityFeatureState: **FleetObservability**: Hub-wide // Feature for FleetObservability feature. state. type FleetObservabilityFeatureState struct { + // Logging: The feature state of default logging. + Logging *FleetObservabilityFleetObservabilityLoggingState `json:"logging,omitempty"` + + // Monitoring: The feature state of fleet monitoring. + Monitoring *FleetObservabilityFleetObservabilityMonitoringState `json:"monitoring,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Logging") 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. "Logging") 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 *FleetObservabilityFeatureState) MarshalJSON() ([]byte, error) { + type NoMethod FleetObservabilityFeatureState + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// FleetObservabilityFleetObservabilityBaseFeatureState: Base state for +// fleet observability feature. +type FleetObservabilityFleetObservabilityBaseFeatureState struct { + // Code: The high-level, machine-readable status of this Feature. + // + // Possible values: + // "CODE_UNSPECIFIED" - Unknown or not set. + // "OK" - The Feature is operating normally. + // "ERROR" - The Feature is encountering errors in the reconciliation. + // The Feature may need intervention to return to normal operation. See + // the description and any associated Feature-specific details for more + // information. + Code string `json:"code,omitempty"` + + // Errors: Errors after reconciling the monitoring and logging feature + // if the code is not OK. + Errors []*FleetObservabilityFeatureError `json:"errors,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Code") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Code") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *FleetObservabilityFleetObservabilityBaseFeatureState) MarshalJSON() ([]byte, error) { + type NoMethod FleetObservabilityFleetObservabilityBaseFeatureState + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// FleetObservabilityFleetObservabilityLoggingState: Feature state for +// logging feature. +type FleetObservabilityFleetObservabilityLoggingState struct { + // DefaultLog: The base feature state of fleet default log. + DefaultLog *FleetObservabilityFleetObservabilityBaseFeatureState `json:"defaultLog,omitempty"` + + // ScopeLog: The base feature state of fleet scope log. + ScopeLog *FleetObservabilityFleetObservabilityBaseFeatureState `json:"scopeLog,omitempty"` + + // ForceSendFields is a list of field names (e.g. "DefaultLog") 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. "DefaultLog") 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 *FleetObservabilityFleetObservabilityLoggingState) MarshalJSON() ([]byte, error) { + type NoMethod FleetObservabilityFleetObservabilityLoggingState + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// FleetObservabilityFleetObservabilityMonitoringState: Feature state +// for monitoring feature. +type FleetObservabilityFleetObservabilityMonitoringState struct { + // State: The base feature state of fleet monitoring feature. + State *FleetObservabilityFleetObservabilityBaseFeatureState `json:"state,omitempty"` + + // ForceSendFields is a list of field names (e.g. "State") 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. "State") 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 *FleetObservabilityFleetObservabilityMonitoringState) MarshalJSON() ([]byte, error) { + type NoMethod FleetObservabilityFleetObservabilityMonitoringState + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } // FleetObservabilityLoggingConfig: LoggingConfig defines the @@ -3854,20 +4015,10 @@ func (s *Policy) MarshalJSON() ([]byte, error) { // PolicyControllerBundleInstallSpec: BundleInstallSpec is the // specification configuration for a single managed bundle. type PolicyControllerBundleInstallSpec struct { - // ExemptedNamespaces: the set of namespaces to be exempted from the - // bundle + // ExemptedNamespaces: The set of namespaces to be exempted from the + // bundle. ExemptedNamespaces []string `json:"exemptedNamespaces,omitempty"` - // Management: Management specifies how the bundle will be managed by - // the controller. - // - // Possible values: - // "MANAGEMENT_UNSPECIFIED" - No Management strategy has been - // specified. - // "INSTALLED" - The entity should be insistently reconciled by the - // Hub controller - Management string `json:"management,omitempty"` - // ForceSendFields is a list of field names (e.g. "ExemptedNamespaces") // to unconditionally include in API requests. By default, fields with // empty or default values are omitted from API requests. However, any @@ -3947,10 +4098,6 @@ type PolicyControllerHubConfig struct { // being evaluated. ReferentialRulesEnabled bool `json:"referentialRulesEnabled,omitempty"` - // TemplateLibraryConfig: Configures the library templates to install - // along with Policy Controller. - TemplateLibraryConfig *PolicyControllerTemplateLibraryConfig `json:"templateLibraryConfig,omitempty"` - // ForceSendFields is a list of field names (e.g. // "AuditIntervalSeconds") to unconditionally include in API requests. // By default, fields with empty or default values are omitted from API @@ -4018,10 +4165,6 @@ type PolicyControllerMembershipState struct { // 1. "admission" 2. "audit" 3. "mutation" ComponentStates map[string]PolicyControllerOnClusterState `json:"componentStates,omitempty"` - // ContentStates: The state of the template library and any bundles - // included in the chosen version of the manifest - ContentStates map[string]PolicyControllerOnClusterState `json:"contentStates,omitempty"` - // PolicyContentState: The overall content state observed by the Hub // Feature controller. PolicyContentState *PolicyControllerPolicyContentState `json:"policyContentState,omitempty"` @@ -4279,6 +4422,17 @@ type PolicyControllerPolicyControllerDeploymentConfig struct { // ContainerResources: Container resource requirements. ContainerResources *PolicyControllerResourceRequirements `json:"containerResources,omitempty"` + // PodAffinity: Pod affinity configuration. + // + // Possible values: + // "AFFINITY_UNSPECIFIED" - No affinity configuration has been + // specified. + // "NO_AFFINITY" - Affinity configurations will be removed from the + // deployment. + // "ANTI_AFFINITY" - Anti-affinity configuration will be applied to + // this deployment. Default for admissions deployment. + PodAffinity string `json:"podAffinity,omitempty"` + // PodAntiAffinity: Pod anti-affinity enablement. PodAntiAffinity bool `json:"podAntiAffinity,omitempty"` @@ -4381,10 +4535,6 @@ func (s *PolicyControllerResourceRequirements) MarshalJSON() ([]byte, error) { // PolicyControllerTemplateLibraryConfig: The config specifying which // default library templates to install. type PolicyControllerTemplateLibraryConfig struct { - // Included: Whether the standard template library should be installed - // or not. - Included bool `json:"included,omitempty"` - // Installation: Configures the manner in which the template library is // installed on the cluster. // @@ -4395,7 +4545,7 @@ type PolicyControllerTemplateLibraryConfig struct { // "ALL" - Install the entire template library. Installation string `json:"installation,omitempty"` - // ForceSendFields is a list of field names (e.g. "Included") to + // ForceSendFields is a list of field names (e.g. "Installation") 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 @@ -4403,10 +4553,10 @@ type PolicyControllerTemplateLibraryConfig struct { // This may be used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "Included") to include in - // API requests with the JSON null value. By default, fields with empty - // values are omitted from API requests. However, any field with an - // empty value appearing in NullFields will be sent to the server as + // NullFields is a list of field names (e.g. "Installation") 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/gkeonprem/v1/gkeonprem-api.json b/gkeonprem/v1/gkeonprem-api.json index 5ff2082a8ad..62417589c9f 100644 --- a/gkeonprem/v1/gkeonprem-api.json +++ b/gkeonprem/v1/gkeonprem-api.json @@ -2996,7 +2996,7 @@ } } }, - "revision": "20230620", + "revision": "20230626", "rootUrl": "https://gkeonprem.googleapis.com/", "schemas": { "Authorization": { @@ -4733,6 +4733,63 @@ }, "type": "object" }, + "Metric": { + "description": "Progress metric is (string, int|float|string) pair.", + "id": "Metric", + "properties": { + "doubleValue": { + "description": "For metrics with floating point value.", + "format": "double", + "type": "number" + }, + "intValue": { + "description": "For metrics with integer value.", + "format": "int64", + "type": "string" + }, + "metric": { + "description": "Required. The metric name.", + "enum": [ + "METRIC_ID_UNSPECIFIED", + "NODES_TOTAL", + "NODES_DRAINING", + "NODES_UPGRADING", + "NODES_PENDING_UPGRADE", + "NODES_UPGRADED", + "NODES_FAILED", + "NODES_HEALTHY", + "NODES_RECONCILING", + "NODES_IN_MAINTENANCE", + "PREFLIGHTS_COMPLETED", + "PREFLIGHTS_RUNNING", + "PREFLIGHTS_FAILED", + "PREFLIGHTS_TOTAL" + ], + "enumDescriptions": [ + "Not set.", + "The total number of nodes being actuated.", + "The number of nodes draining.", + "The number of nodes actively upgrading.", + "The number of nodes to be upgraded.", + "The number of nodes upgraded.", + "The number of nodes to fail actuation.", + "The number of nodes healthy.", + "The number of nodes reconciling.", + "The number of nodes in maintenance mode.", + "The number of completed preflight checks.", + "The number of preflight checks running.", + "The number of preflight checks failed.", + "The total number of preflight checks." + ], + "type": "string" + }, + "stringValue": { + "description": "For metrics with custom values (ratios, visual progress, etc.).", + "type": "string" + } + }, + "type": "object" + }, "NodeTaint": { "description": "NodeTaint applied to every Kubernetes node in a node pool. Kubernetes taints can be used together with tolerations to control how workloads are scheduled to your nodes. Node taints are permanent.", "id": "NodeTaint", @@ -4825,6 +4882,11 @@ "readOnly": true, "type": "string" }, + "progress": { + "$ref": "OperationProgress", + "description": "Output only. Detailed progress information for the operation.", + "readOnly": true + }, "requestedCancellation": { "description": "Output only. Identifies whether the user has requested cancellation of the operation. Operations that have successfully been cancelled have [Operation.error] value with a [google.rpc.Status.code] of 1, corresponding to `Code.CANCELLED`.", "readOnly": true, @@ -4867,6 +4929,83 @@ }, "type": "object" }, + "OperationProgress": { + "description": "Information about operation progress. LINT.IfChange", + "id": "OperationProgress", + "properties": { + "stages": { + "description": "The stages of the operation.", + "items": { + "$ref": "OperationStage" + }, + "type": "array" + } + }, + "type": "object" + }, + "OperationStage": { + "description": "Information about a particular stage of an operation.", + "id": "OperationStage", + "properties": { + "endTime": { + "description": "Time the stage ended.", + "format": "google-datetime", + "type": "string" + }, + "metrics": { + "description": "Progress metric bundle.", + "items": { + "$ref": "Metric" + }, + "type": "array" + }, + "stage": { + "description": "The high-level stage of the operation.", + "enum": [ + "STAGE_UNSPECIFIED", + "PREFLIGHT_CHECK", + "CONFIGURE", + "DEPLOY", + "HEALTH_CHECK", + "UPDATE" + ], + "enumDescriptions": [ + "Not set.", + "Preflight checks are running.", + "Resource is being configured.", + "Resource is being deployed.", + "Waiting for the resource to become healthy.", + "Resource is being updated." + ], + "type": "string" + }, + "startTime": { + "description": "Time the stage started.", + "format": "google-datetime", + "type": "string" + }, + "state": { + "description": "Output only. State of the stage.", + "enum": [ + "STATE_UNSPECIFIED", + "PENDING", + "RUNNING", + "SUCCEEDED", + "FAILED" + ], + "enumDescriptions": [ + "Not set.", + "The stage is pending.", + "The stage is running", + "The stage has completed successfully.", + "The stage has failed." + ], + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, "Policy": { "description": "An Identity and Access Management (IAM) policy, which specifies access controls for Google Cloud resources. A `Policy` is a collection of `bindings`. A `binding` binds one or more `members`, or principals, to a single `role`. Principals can be user accounts, service accounts, Google groups, and domains (such as G Suite). A `role` is a named list of permissions; each `role` can be an IAM predefined role or a user-created custom role. For some types of Google Cloud resources, a `binding` can also specify a `condition`, which is a logical expression that allows access to a resource only if the expression evaluates to `true`. A condition can add constraints based on attributes of the request, the resource, or both. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies). **JSON example:** { \"bindings\": [ { \"role\": \"roles/resourcemanager.organizationAdmin\", \"members\": [ \"user:mike@example.com\", \"group:admins@example.com\", \"domain:google.com\", \"serviceAccount:my-project-id@appspot.gserviceaccount.com\" ] }, { \"role\": \"roles/resourcemanager.organizationViewer\", \"members\": [ \"user:eve@example.com\" ], \"condition\": { \"title\": \"expirable access\", \"description\": \"Does not grant access after Sep 2020\", \"expression\": \"request.time \u003c timestamp('2020-10-01T00:00:00.000Z')\", } } ], \"etag\": \"BwWWja0YfJA=\", \"version\": 3 } **YAML example:** bindings: - members: - user:mike@example.com - group:admins@example.com - domain:google.com - serviceAccount:my-project-id@appspot.gserviceaccount.com role: roles/resourcemanager.organizationAdmin - members: - user:eve@example.com role: roles/resourcemanager.organizationViewer condition: title: expirable access description: Does not grant access after Sep 2020 expression: request.time \u003c timestamp('2020-10-01T00:00:00.000Z') etag: BwWWja0YfJA= version: 3 For a description of IAM and its features, see the [IAM documentation](https://cloud.google.com/iam/docs/).", "id": "Policy", diff --git a/gkeonprem/v1/gkeonprem-gen.go b/gkeonprem/v1/gkeonprem-gen.go index e773d06e218..70af3a5c122 100644 --- a/gkeonprem/v1/gkeonprem-gen.go +++ b/gkeonprem/v1/gkeonprem-gen.go @@ -3616,6 +3616,74 @@ func (s *Location) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// Metric: Progress metric is (string, int|float|string) pair. +type Metric struct { + // DoubleValue: For metrics with floating point value. + DoubleValue float64 `json:"doubleValue,omitempty"` + + // IntValue: For metrics with integer value. + IntValue int64 `json:"intValue,omitempty,string"` + + // Metric: Required. The metric name. + // + // Possible values: + // "METRIC_ID_UNSPECIFIED" - Not set. + // "NODES_TOTAL" - The total number of nodes being actuated. + // "NODES_DRAINING" - The number of nodes draining. + // "NODES_UPGRADING" - The number of nodes actively upgrading. + // "NODES_PENDING_UPGRADE" - The number of nodes to be upgraded. + // "NODES_UPGRADED" - The number of nodes upgraded. + // "NODES_FAILED" - The number of nodes to fail actuation. + // "NODES_HEALTHY" - The number of nodes healthy. + // "NODES_RECONCILING" - The number of nodes reconciling. + // "NODES_IN_MAINTENANCE" - The number of nodes in maintenance mode. + // "PREFLIGHTS_COMPLETED" - The number of completed preflight checks. + // "PREFLIGHTS_RUNNING" - The number of preflight checks running. + // "PREFLIGHTS_FAILED" - The number of preflight checks failed. + // "PREFLIGHTS_TOTAL" - The total number of preflight checks. + Metric string `json:"metric,omitempty"` + + // StringValue: For metrics with custom values (ratios, visual progress, + // etc.). + StringValue string `json:"stringValue,omitempty"` + + // ForceSendFields is a list of field names (e.g. "DoubleValue") 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. "DoubleValue") 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 *Metric) MarshalJSON() ([]byte, error) { + type NoMethod Metric + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +func (s *Metric) UnmarshalJSON(data []byte) error { + type NoMethod Metric + var s1 struct { + DoubleValue gensupport.JSONFloat64 `json:"doubleValue"` + *NoMethod + } + s1.NoMethod = (*NoMethod)(s) + if err := json.Unmarshal(data, &s1); err != nil { + return err + } + s.DoubleValue = float64(s1.DoubleValue) + return nil +} + // NodeTaint: NodeTaint applied to every Kubernetes node in a node pool. // Kubernetes taints can be used together with tolerations to control // how workloads are scheduled to your nodes. Node taints are permanent. @@ -3744,6 +3812,10 @@ type OperationMetadata struct { // EndTime: Output only. The time the operation finished running. EndTime string `json:"endTime,omitempty"` + // Progress: Output only. Detailed progress information for the + // operation. + Progress *OperationProgress `json:"progress,omitempty"` + // RequestedCancellation: Output only. Identifies whether the user has // requested cancellation of the operation. Operations that have // successfully been cancelled have [Operation.error] value with a @@ -3794,6 +3866,90 @@ func (s *OperationMetadata) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// OperationProgress: Information about operation progress. +// LINT.IfChange +type OperationProgress struct { + // Stages: The stages of the operation. + Stages []*OperationStage `json:"stages,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Stages") 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. "Stages") 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 *OperationProgress) MarshalJSON() ([]byte, error) { + type NoMethod OperationProgress + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// OperationStage: Information about a particular stage of an operation. +type OperationStage struct { + // EndTime: Time the stage ended. + EndTime string `json:"endTime,omitempty"` + + // Metrics: Progress metric bundle. + Metrics []*Metric `json:"metrics,omitempty"` + + // Stage: The high-level stage of the operation. + // + // Possible values: + // "STAGE_UNSPECIFIED" - Not set. + // "PREFLIGHT_CHECK" - Preflight checks are running. + // "CONFIGURE" - Resource is being configured. + // "DEPLOY" - Resource is being deployed. + // "HEALTH_CHECK" - Waiting for the resource to become healthy. + // "UPDATE" - Resource is being updated. + Stage string `json:"stage,omitempty"` + + // StartTime: Time the stage started. + StartTime string `json:"startTime,omitempty"` + + // State: Output only. State of the stage. + // + // Possible values: + // "STATE_UNSPECIFIED" - Not set. + // "PENDING" - The stage is pending. + // "RUNNING" - The stage is running + // "SUCCEEDED" - The stage has completed successfully. + // "FAILED" - The stage has failed. + State string `json:"state,omitempty"` + + // ForceSendFields is a list of field names (e.g. "EndTime") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "EndTime") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *OperationStage) MarshalJSON() ([]byte, error) { + type NoMethod OperationStage + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // Policy: An Identity and Access Management (IAM) policy, which // specifies access controls for Google Cloud resources. A `Policy` is a // collection of `bindings`. A `binding` binds one or more `members`, or diff --git a/gmail/v1/gmail-api.json b/gmail/v1/gmail-api.json index e633895b74b..7ba567ed533 100644 --- a/gmail/v1/gmail-api.json +++ b/gmail/v1/gmail-api.json @@ -3077,7 +3077,7 @@ } } }, - "revision": "20230612", + "revision": "20230626", "rootUrl": "https://gmail.googleapis.com/", "schemas": { "AutoForwarding": { @@ -4348,7 +4348,7 @@ "id": "WatchRequest", "properties": { "labelFilterAction": { - "description": "Filtering behavior of labelIds list specified.", + "description": "Filtering behavior of `labelIds list` specified. This field is deprecated because it caused incorrect behavior in some cases; use `label_filter_behavior` instead.", "enum": [ "include", "exclude" @@ -4360,7 +4360,7 @@ "type": "string" }, "labelFilterBehavior": { - "description": "Filtering behavior of labelIds list specified. This field replaces label_filter_action; if set, label_filter_action is ignored.", + "description": "Filtering behavior of `labelIds list` specified. This field replaces `label_filter_action`; if set, `label_filter_action` is ignored.", "enum": [ "include", "exclude" diff --git a/gmail/v1/gmail-gen.go b/gmail/v1/gmail-gen.go index dc2ced596dc..9ec62f9211a 100644 --- a/gmail/v1/gmail-gen.go +++ b/gmail/v1/gmail-gen.go @@ -2481,7 +2481,9 @@ func (s *VacationSettings) MarshalJSON() ([]byte, error) { // WatchRequest: Set up or update a new push notification watch on this // user's mailbox. type WatchRequest struct { - // LabelFilterAction: Filtering behavior of labelIds list specified. + // LabelFilterAction: Filtering behavior of `labelIds list` specified. + // This field is deprecated because it caused incorrect behavior in some + // cases; use `label_filter_behavior` instead. // // Possible values: // "include" - Only get push notifications for message changes @@ -2490,9 +2492,9 @@ type WatchRequest struct { // those relating to labelIds specified. LabelFilterAction string `json:"labelFilterAction,omitempty"` - // LabelFilterBehavior: Filtering behavior of labelIds list specified. - // This field replaces label_filter_action; if set, label_filter_action - // is ignored. + // LabelFilterBehavior: Filtering behavior of `labelIds list` specified. + // This field replaces `label_filter_action`; if set, + // `label_filter_action` is ignored. // // Possible values: // "include" - Only get push notifications for message changes diff --git a/gmailpostmastertools/v1beta1/gmailpostmastertools-api.json b/gmailpostmastertools/v1beta1/gmailpostmastertools-api.json index eef31203cc1..ce81c20fe35 100644 --- a/gmailpostmastertools/v1beta1/gmailpostmastertools-api.json +++ b/gmailpostmastertools/v1beta1/gmailpostmastertools-api.json @@ -265,7 +265,7 @@ } } }, - "revision": "20201201", + "revision": "20230702", "rootUrl": "https://gmailpostmastertools.googleapis.com/", "schemas": { "DeliveryError": { @@ -382,6 +382,7 @@ "type": "string" }, "numIps": { + "deprecated": true, "description": "Total number of unique IPs in this reputation category. This metric only pertains to traffic that passed [SPF](http://www.openspf.org/) or [DKIM](http://www.dkim.org/). Deprecated to be complied with ApiLinter for Quantities. Use ip_count instead.", "format": "int64", "type": "string" diff --git a/go.mod b/go.mod index 06c62f8c006..d291551691c 100644 --- a/go.mod +++ b/go.mod @@ -10,12 +10,12 @@ require ( github.com/googleapis/enterprise-certificate-proxy v0.2.5 github.com/googleapis/gax-go/v2 v2.11.0 go.opencensus.io v0.24.0 - golang.org/x/net v0.11.0 + golang.org/x/net v0.12.0 golang.org/x/oauth2 v0.9.0 golang.org/x/sync v0.3.0 google.golang.org/appengine v1.6.7 - google.golang.org/genproto/googleapis/bytestream v0.0.0-20230530153820-e85fd2cbaebc - google.golang.org/genproto/googleapis/rpc v0.0.0-20230530153820-e85fd2cbaebc + google.golang.org/genproto/googleapis/bytestream v0.0.0-20230629202037-9506855d4529 + google.golang.org/genproto/googleapis/rpc v0.0.0-20230629202037-9506855d4529 google.golang.org/grpc v1.56.1 google.golang.org/protobuf v1.31.0 ) @@ -24,9 +24,9 @@ require ( cloud.google.com/go/compute v1.19.3 // indirect github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da // indirect github.com/golang/protobuf v1.5.3 // indirect - golang.org/x/crypto v0.10.0 // indirect - golang.org/x/sys v0.9.0 // indirect - golang.org/x/text v0.10.0 // indirect + golang.org/x/crypto v0.11.0 // indirect + golang.org/x/sys v0.10.0 // indirect + golang.org/x/text v0.11.0 // indirect google.golang.org/genproto v0.0.0-20230530153820-e85fd2cbaebc // indirect google.golang.org/genproto/googleapis/api v0.0.0-20230530153820-e85fd2cbaebc // indirect ) diff --git a/go.sum b/go.sum index 0588540a969..52cbfc11b72 100644 --- a/go.sum +++ b/go.sum @@ -83,8 +83,8 @@ golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACk golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= golang.org/x/crypto v0.0.0-20220314234659-1baeb1ce4c0b/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= -golang.org/x/crypto v0.10.0 h1:LKqV2xt9+kDzSTfOhx4FrkEBcMrAgHSYgzywV9zcGmM= -golang.org/x/crypto v0.10.0/go.mod h1:o4eNf7Ede1fv+hwOwZsTHl9EsPFO6q6ZvYR8vYfY45I= +golang.org/x/crypto v0.11.0 h1:6Ewdq3tDic1mg5xRO4milcWCfMVQhI4NkqWWvqejpuA= +golang.org/x/crypto v0.11.0/go.mod h1:xgJhtzW8F9jGdVFWZESrid1U1bjeNy4zgy5cRr/CIio= golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/lint v0.0.0-20181026193005-c67002cb31c3/go.mod h1:UVdnD1Gm6xHRNCYTkRU2/jEulfH38KcIWyp/GAMgvoE= golang.org/x/lint v0.0.0-20190227174305-5b3e6a55c961/go.mod h1:wehouNa3lNwaWXcvxsM5YxQ5yQlVC4a0KAMCusXpPoU= @@ -103,8 +103,8 @@ golang.org/x/net v0.0.0-20201110031124-69a78807bb2b/go.mod h1:sp8m0HH+o8qH0wwXwY golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= golang.org/x/net v0.0.0-20211112202133-69e39bad7dc2/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= golang.org/x/net v0.0.0-20220722155237-a158d28d115b/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c= -golang.org/x/net v0.11.0 h1:Gi2tvZIJyBtO9SDr1q9h5hEQCp/4L2RQ+ar0qjx2oNU= -golang.org/x/net v0.11.0/go.mod h1:2L/ixqYpgIVXmeoSA/4Lu7BzTG4KIyPIryS4IsOd1oQ= +golang.org/x/net v0.12.0 h1:cfawfvKITfUsFCeJIHJrbSxpeu/E81khclypR0GVT50= +golang.org/x/net v0.12.0/go.mod h1:zEVYFnQC7m/vmpQFELhcD1EWkZlX69l4oqgmer6hfKA= golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= golang.org/x/oauth2 v0.0.0-20200107190931-bf48bf16ab8d/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= golang.org/x/oauth2 v0.9.0 h1:BPpt2kU7oMRq3kCHAA1tbSEshXRw1LpG2ztgDwrzuAs= @@ -126,8 +126,8 @@ golang.org/x/sys v0.0.0-20210423082822-04245dca01da/go.mod h1:h1NjWce9XRLGQEsW7w golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220520151302-bc2c85ada10a/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.9.0 h1:KS/R3tvhPqvJvwcKfnBHJwwthS11LRhmM5D59eEXa0s= -golang.org/x/sys v0.9.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.10.0 h1:SqMFp9UcQJZa+pmYuAKjd9xq1f0j5rLcDIk0mj4qAsA= +golang.org/x/sys v0.10.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= @@ -136,8 +136,8 @@ golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= golang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ= golang.org/x/text v0.3.8/go.mod h1:E6s5w1FMmriuDzIBO73fBruAKo1PCIq6d2Q6DHfQ8WQ= -golang.org/x/text v0.10.0 h1:UpjohKhiEgNc0CSauXmwYftY1+LlaC75SJwh0SgCX58= -golang.org/x/text v0.10.0/go.mod h1:TvPlkZtksWOMsz7fbANvkp4WM8x/WCo/om8BMLbz+aE= +golang.org/x/text v0.11.0 h1:LAntKIrcmeSKERyiOh0XMV39LXS8IE9UL2yP7+f5ij4= +golang.org/x/text v0.11.0/go.mod h1:TvPlkZtksWOMsz7fbANvkp4WM8x/WCo/om8BMLbz+aE= golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= golang.org/x/tools v0.0.0-20190114222345-bf090417da8b/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= golang.org/x/tools v0.0.0-20190226205152-f727befe758c/go.mod h1:9Yl7xja0Znq3iFh3HoIrodX9oNMXvdceNzlUR8zjMvY= @@ -160,10 +160,10 @@ google.golang.org/genproto v0.0.0-20230530153820-e85fd2cbaebc h1:8DyZCyvI8mE1IdL google.golang.org/genproto v0.0.0-20230530153820-e85fd2cbaebc/go.mod h1:xZnkP7mREFX5MORlOPEzLMr+90PPZQ2QWzrVTWfAq64= google.golang.org/genproto/googleapis/api v0.0.0-20230530153820-e85fd2cbaebc h1:kVKPf/IiYSBWEWtkIn6wZXwWGCnLKcC8oWfZvXjsGnM= google.golang.org/genproto/googleapis/api v0.0.0-20230530153820-e85fd2cbaebc/go.mod h1:vHYtlOoi6TsQ3Uk2yxR7NI5z8uoV+3pZtR4jmHIkRig= -google.golang.org/genproto/googleapis/bytestream v0.0.0-20230530153820-e85fd2cbaebc h1:g3hIDl0jRNd9PPTs2uBzYuaD5mQuwOkZY0vSc0LR32o= -google.golang.org/genproto/googleapis/bytestream v0.0.0-20230530153820-e85fd2cbaebc/go.mod h1:ylj+BE99M198VPbBh6A8d9n3w8fChvyLK3wwBOjXBFA= -google.golang.org/genproto/googleapis/rpc v0.0.0-20230530153820-e85fd2cbaebc h1:XSJ8Vk1SWuNr8S18z1NZSziL0CPIXLCCMDOEFtHBOFc= -google.golang.org/genproto/googleapis/rpc v0.0.0-20230530153820-e85fd2cbaebc/go.mod h1:66JfowdXAEgad5O9NnYcsNPLCPZJD++2L9X0PCMODrA= +google.golang.org/genproto/googleapis/bytestream v0.0.0-20230629202037-9506855d4529 h1:3iZ0UBTVGPyczwi1ZR5vYcuAKxvqLY4kAAEeBJYzyvo= +google.golang.org/genproto/googleapis/bytestream v0.0.0-20230629202037-9506855d4529/go.mod h1:ylj+BE99M198VPbBh6A8d9n3w8fChvyLK3wwBOjXBFA= +google.golang.org/genproto/googleapis/rpc v0.0.0-20230629202037-9506855d4529 h1:DEH99RbiLZhMxrpEJCZ0A+wdTe0EOgou/poSLx9vWf4= +google.golang.org/genproto/googleapis/rpc v0.0.0-20230629202037-9506855d4529/go.mod h1:66JfowdXAEgad5O9NnYcsNPLCPZJD++2L9X0PCMODrA= google.golang.org/grpc v1.19.0/go.mod h1:mqu4LbDTu4XGKhr4mRzUsmM4RtVoemTSY81AxZiDr8c= google.golang.org/grpc v1.23.0/go.mod h1:Y5yQAOtifL1yxbo5wqy6BxZv8vAUGQwXBOALyacEbxg= google.golang.org/grpc v1.25.1/go.mod h1:c3i+UQWmh7LiEpx4sFZnkU36qjEYZ0imhYfXVyQciAY= diff --git a/iam/v1/iam-api.json b/iam/v1/iam-api.json index d932daf37eb..533e7731c7e 100644 --- a/iam/v1/iam-api.json +++ b/iam/v1/iam-api.json @@ -1379,6 +1379,138 @@ } }, "resources": { + "namespaces": { + "resources": { + "managedIdentities": { + "resources": { + "operations": { + "methods": { + "get": { + "description": "Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/workloadIdentityPools/{workloadIdentityPoolsId}/namespaces/{namespacesId}/managedIdentities/{managedIdentitiesId}/operations/{operationsId}", + "httpMethod": "GET", + "id": "iam.projects.locations.workloadIdentityPools.namespaces.managedIdentities.operations.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/workloadIdentityPools/[^/]+/namespaces/[^/]+/managedIdentities/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "workloadSources": { + "resources": { + "operations": { + "methods": { + "get": { + "description": "Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/workloadIdentityPools/{workloadIdentityPoolsId}/namespaces/{namespacesId}/managedIdentities/{managedIdentitiesId}/workloadSources/{workloadSourcesId}/operations/{operationsId}", + "httpMethod": "GET", + "id": "iam.projects.locations.workloadIdentityPools.namespaces.managedIdentities.workloadSources.operations.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/workloadIdentityPools/[^/]+/namespaces/[^/]+/managedIdentities/[^/]+/workloadSources/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } + } + } + }, + "operations": { + "methods": { + "get": { + "description": "Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/workloadIdentityPools/{workloadIdentityPoolsId}/namespaces/{namespacesId}/operations/{operationsId}", + "httpMethod": "GET", + "id": "iam.projects.locations.workloadIdentityPools.namespaces.operations.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/workloadIdentityPools/[^/]+/namespaces/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "workloadSources": { + "resources": { + "operations": { + "methods": { + "get": { + "description": "Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/workloadIdentityPools/{workloadIdentityPoolsId}/namespaces/{namespacesId}/workloadSources/{workloadSourcesId}/operations/{operationsId}", + "httpMethod": "GET", + "id": "iam.projects.locations.workloadIdentityPools.namespaces.workloadSources.operations.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/workloadIdentityPools/[^/]+/namespaces/[^/]+/workloadSources/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } + } + } + }, "operations": { "methods": { "get": { @@ -2751,7 +2883,7 @@ } } }, - "revision": "20230530", + "revision": "20230622", "rootUrl": "https://iam.googleapis.com/", "schemas": { "AdminAuditData": { @@ -3050,6 +3182,10 @@ "description": "Required. The client ID. Must match the audience claim of the JWT issued by the identity provider.", "type": "string" }, + "clientSecret": { + "$ref": "GoogleIamAdminV1WorkforcePoolProviderOidcClientSecret", + "description": "The optional client secret. Required to enable Authorization Code flow for web sign-in." + }, "issuerUri": { "description": "Required. The OIDC issuer URI. Must be a valid URI using the 'https' scheme.", "type": "string" @@ -3061,18 +3197,54 @@ }, "type": "object" }, + "GoogleIamAdminV1WorkforcePoolProviderOidcClientSecret": { + "description": "Representation of a client secret configured for the OIDC provider.", + "id": "GoogleIamAdminV1WorkforcePoolProviderOidcClientSecret", + "properties": { + "value": { + "$ref": "GoogleIamAdminV1WorkforcePoolProviderOidcClientSecretValue", + "description": "The value of the client secret." + } + }, + "type": "object" + }, + "GoogleIamAdminV1WorkforcePoolProviderOidcClientSecretValue": { + "description": "Representation of the value of the client secret.", + "id": "GoogleIamAdminV1WorkforcePoolProviderOidcClientSecretValue", + "properties": { + "plainText": { + "description": "Input only. The plain text of the client secret value. For security reasons, this field is only used for input and will never be populated in any response.", + "type": "string" + }, + "thumbprint": { + "description": "Output only. A thumbprint to represent the current client secret value.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, "GoogleIamAdminV1WorkforcePoolProviderOidcWebSsoConfig": { "description": "Configuration for web single sign-on for the OIDC provider.", "id": "GoogleIamAdminV1WorkforcePoolProviderOidcWebSsoConfig", "properties": { + "additionalScopes": { + "description": "Additional scopes to request for in the OIDC authentication request on top of scopes requested by default. By default, the `openid`, `profile` and `email` scopes that are supported by the identity provider are requested. Each additional scope may be at most 256 characters. A maximum of 10 additional scopes may be configured.", + "items": { + "type": "string" + }, + "type": "array" + }, "assertionClaimsBehavior": { "description": "Required. The behavior for how OIDC Claims are included in the `assertion` object used for attribute mapping and attribute condition.", "enum": [ "ASSERTION_CLAIMS_BEHAVIOR_UNSPECIFIED", + "MERGE_USER_INFO_OVER_ID_TOKEN_CLAIMS", "ONLY_ID_TOKEN_CLAIMS" ], "enumDescriptions": [ "No assertion claims behavior specified.", + "Merge the UserInfo Endpoint Claims with ID Token Claims, preferring UserInfo Claim Values for the same Claim Name. Only possible for flows granting an Access Token, which comprise only the Authorization Code Flow at the moment.", "Only include ID Token Claims." ], "type": "string" @@ -3081,10 +3253,12 @@ "description": "Required. The Response Type to request for in the OIDC Authorization Request for web sign-in.", "enum": [ "RESPONSE_TYPE_UNSPECIFIED", + "CODE", "ID_TOKEN" ], "enumDescriptions": [ "No Response Type specified.", + "The `response_type=code` selection uses the Authorization Code Flow for web sign-in. Requires a configured client secret.", "The `response_type=id_token` selection uses the Implicit Flow for web sign-in." ], "type": "string" @@ -3733,7 +3907,7 @@ "type": "array" }, "name": { - "description": "The name of the role. When Role is used in CreateRole, the role name must not be set. When Role is used in output and other input such as UpdateRole, the role name is the complete path, e.g., roles/logging.viewer for predefined roles and organizations/{ORGANIZATION_ID}/roles/logging.viewer for custom roles.", + "description": "The name of the role. When `Role` is used in `CreateRole`, the role name must not be set. When `Role` is used in output and other input such as `UpdateRole`, the role name is the complete path. For example, `roles/logging.viewer` for predefined roles, `organizations/{ORGANIZATION_ID}/roles/my-role` for organization-level custom roles, and `projects/{PROJECT_ID}/roles/my-role` for project-level custom roles.", "type": "string" }, "stage": { @@ -4292,6 +4466,20 @@ "description": "A display name for the pool. Cannot exceed 32 characters.", "type": "string" }, + "identityMode": { + "description": "Immutable. The identity mode of the pool.", + "enum": [ + "IDENTITY_MODE_UNSPECIFIED", + "FEDERATION_ONLY", + "TRUST_DOMAIN" + ], + "enumDescriptions": [ + "Existing pools will be in this mode. For existing worklod identity pools created through the public API, they will act as if they are set to FEDERATION_ONLY.", + "With FEDERATION_ONLY mode, providers can be created at the root level within the pool. Attribute mappings must specify a \"google.subject\" claim that specifies the identity of the federation workload. Namespace or any sub-namespace resources is not allowed with this mode.", + "With TRUST_DOMAIN mode, providers can be created at the root level within the pool. Attribute mappings must specify the \"google.namespace\" and \"google.workload_identifier\" claims that, respectively, specify the namespace and individual sub-namespace identifier for the workload. Namespaces and sub-Namespace resources are allowed." + ], + "type": "string" + }, "name": { "description": "Output only. The resource name of the pool.", "readOnly": true, diff --git a/iam/v1/iam-gen.go b/iam/v1/iam-gen.go index 3a89574dafa..f1ea03e96de 100644 --- a/iam/v1/iam-gen.go +++ b/iam/v1/iam-gen.go @@ -329,6 +329,7 @@ type ProjectsLocationsService struct { func NewProjectsLocationsWorkloadIdentityPoolsService(s *Service) *ProjectsLocationsWorkloadIdentityPoolsService { rs := &ProjectsLocationsWorkloadIdentityPoolsService{s: s} + rs.Namespaces = NewProjectsLocationsWorkloadIdentityPoolsNamespacesService(s) rs.Operations = NewProjectsLocationsWorkloadIdentityPoolsOperationsService(s) rs.Providers = NewProjectsLocationsWorkloadIdentityPoolsProvidersService(s) return rs @@ -337,11 +338,106 @@ func NewProjectsLocationsWorkloadIdentityPoolsService(s *Service) *ProjectsLocat type ProjectsLocationsWorkloadIdentityPoolsService struct { s *Service + Namespaces *ProjectsLocationsWorkloadIdentityPoolsNamespacesService + Operations *ProjectsLocationsWorkloadIdentityPoolsOperationsService Providers *ProjectsLocationsWorkloadIdentityPoolsProvidersService } +func NewProjectsLocationsWorkloadIdentityPoolsNamespacesService(s *Service) *ProjectsLocationsWorkloadIdentityPoolsNamespacesService { + rs := &ProjectsLocationsWorkloadIdentityPoolsNamespacesService{s: s} + rs.ManagedIdentities = NewProjectsLocationsWorkloadIdentityPoolsNamespacesManagedIdentitiesService(s) + rs.Operations = NewProjectsLocationsWorkloadIdentityPoolsNamespacesOperationsService(s) + rs.WorkloadSources = NewProjectsLocationsWorkloadIdentityPoolsNamespacesWorkloadSourcesService(s) + return rs +} + +type ProjectsLocationsWorkloadIdentityPoolsNamespacesService struct { + s *Service + + ManagedIdentities *ProjectsLocationsWorkloadIdentityPoolsNamespacesManagedIdentitiesService + + Operations *ProjectsLocationsWorkloadIdentityPoolsNamespacesOperationsService + + WorkloadSources *ProjectsLocationsWorkloadIdentityPoolsNamespacesWorkloadSourcesService +} + +func NewProjectsLocationsWorkloadIdentityPoolsNamespacesManagedIdentitiesService(s *Service) *ProjectsLocationsWorkloadIdentityPoolsNamespacesManagedIdentitiesService { + rs := &ProjectsLocationsWorkloadIdentityPoolsNamespacesManagedIdentitiesService{s: s} + rs.Operations = NewProjectsLocationsWorkloadIdentityPoolsNamespacesManagedIdentitiesOperationsService(s) + rs.WorkloadSources = NewProjectsLocationsWorkloadIdentityPoolsNamespacesManagedIdentitiesWorkloadSourcesService(s) + return rs +} + +type ProjectsLocationsWorkloadIdentityPoolsNamespacesManagedIdentitiesService struct { + s *Service + + Operations *ProjectsLocationsWorkloadIdentityPoolsNamespacesManagedIdentitiesOperationsService + + WorkloadSources *ProjectsLocationsWorkloadIdentityPoolsNamespacesManagedIdentitiesWorkloadSourcesService +} + +func NewProjectsLocationsWorkloadIdentityPoolsNamespacesManagedIdentitiesOperationsService(s *Service) *ProjectsLocationsWorkloadIdentityPoolsNamespacesManagedIdentitiesOperationsService { + rs := &ProjectsLocationsWorkloadIdentityPoolsNamespacesManagedIdentitiesOperationsService{s: s} + return rs +} + +type ProjectsLocationsWorkloadIdentityPoolsNamespacesManagedIdentitiesOperationsService struct { + s *Service +} + +func NewProjectsLocationsWorkloadIdentityPoolsNamespacesManagedIdentitiesWorkloadSourcesService(s *Service) *ProjectsLocationsWorkloadIdentityPoolsNamespacesManagedIdentitiesWorkloadSourcesService { + rs := &ProjectsLocationsWorkloadIdentityPoolsNamespacesManagedIdentitiesWorkloadSourcesService{s: s} + rs.Operations = NewProjectsLocationsWorkloadIdentityPoolsNamespacesManagedIdentitiesWorkloadSourcesOperationsService(s) + return rs +} + +type ProjectsLocationsWorkloadIdentityPoolsNamespacesManagedIdentitiesWorkloadSourcesService struct { + s *Service + + Operations *ProjectsLocationsWorkloadIdentityPoolsNamespacesManagedIdentitiesWorkloadSourcesOperationsService +} + +func NewProjectsLocationsWorkloadIdentityPoolsNamespacesManagedIdentitiesWorkloadSourcesOperationsService(s *Service) *ProjectsLocationsWorkloadIdentityPoolsNamespacesManagedIdentitiesWorkloadSourcesOperationsService { + rs := &ProjectsLocationsWorkloadIdentityPoolsNamespacesManagedIdentitiesWorkloadSourcesOperationsService{s: s} + return rs +} + +type ProjectsLocationsWorkloadIdentityPoolsNamespacesManagedIdentitiesWorkloadSourcesOperationsService struct { + s *Service +} + +func NewProjectsLocationsWorkloadIdentityPoolsNamespacesOperationsService(s *Service) *ProjectsLocationsWorkloadIdentityPoolsNamespacesOperationsService { + rs := &ProjectsLocationsWorkloadIdentityPoolsNamespacesOperationsService{s: s} + return rs +} + +type ProjectsLocationsWorkloadIdentityPoolsNamespacesOperationsService struct { + s *Service +} + +func NewProjectsLocationsWorkloadIdentityPoolsNamespacesWorkloadSourcesService(s *Service) *ProjectsLocationsWorkloadIdentityPoolsNamespacesWorkloadSourcesService { + rs := &ProjectsLocationsWorkloadIdentityPoolsNamespacesWorkloadSourcesService{s: s} + rs.Operations = NewProjectsLocationsWorkloadIdentityPoolsNamespacesWorkloadSourcesOperationsService(s) + return rs +} + +type ProjectsLocationsWorkloadIdentityPoolsNamespacesWorkloadSourcesService struct { + s *Service + + Operations *ProjectsLocationsWorkloadIdentityPoolsNamespacesWorkloadSourcesOperationsService +} + +func NewProjectsLocationsWorkloadIdentityPoolsNamespacesWorkloadSourcesOperationsService(s *Service) *ProjectsLocationsWorkloadIdentityPoolsNamespacesWorkloadSourcesOperationsService { + rs := &ProjectsLocationsWorkloadIdentityPoolsNamespacesWorkloadSourcesOperationsService{s: s} + return rs +} + +type ProjectsLocationsWorkloadIdentityPoolsNamespacesWorkloadSourcesOperationsService struct { + s *Service +} + func NewProjectsLocationsWorkloadIdentityPoolsOperationsService(s *Service) *ProjectsLocationsWorkloadIdentityPoolsOperationsService { rs := &ProjectsLocationsWorkloadIdentityPoolsOperationsService{s: s} return rs @@ -1061,6 +1157,10 @@ type GoogleIamAdminV1WorkforcePoolProviderOidc struct { // the JWT issued by the identity provider. ClientId string `json:"clientId,omitempty"` + // ClientSecret: The optional client secret. Required to enable + // Authorization Code flow for web sign-in. + ClientSecret *GoogleIamAdminV1WorkforcePoolProviderOidcClientSecret `json:"clientSecret,omitempty"` + // IssuerUri: Required. The OIDC issuer URI. Must be a valid URI using // the 'https' scheme. IssuerUri string `json:"issuerUri,omitempty"` @@ -1093,9 +1193,81 @@ func (s *GoogleIamAdminV1WorkforcePoolProviderOidc) MarshalJSON() ([]byte, error return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// GoogleIamAdminV1WorkforcePoolProviderOidcClientSecret: Representation +// of a client secret configured for the OIDC provider. +type GoogleIamAdminV1WorkforcePoolProviderOidcClientSecret struct { + // Value: The value of the client secret. + Value *GoogleIamAdminV1WorkforcePoolProviderOidcClientSecretValue `json:"value,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Value") 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. "Value") 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 *GoogleIamAdminV1WorkforcePoolProviderOidcClientSecret) MarshalJSON() ([]byte, error) { + type NoMethod GoogleIamAdminV1WorkforcePoolProviderOidcClientSecret + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleIamAdminV1WorkforcePoolProviderOidcClientSecretValue: +// Representation of the value of the client secret. +type GoogleIamAdminV1WorkforcePoolProviderOidcClientSecretValue struct { + // PlainText: Input only. The plain text of the client secret value. For + // security reasons, this field is only used for input and will never be + // populated in any response. + PlainText string `json:"plainText,omitempty"` + + // Thumbprint: Output only. A thumbprint to represent the current client + // secret value. + Thumbprint string `json:"thumbprint,omitempty"` + + // ForceSendFields is a list of field names (e.g. "PlainText") 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. "PlainText") 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 *GoogleIamAdminV1WorkforcePoolProviderOidcClientSecretValue) MarshalJSON() ([]byte, error) { + type NoMethod GoogleIamAdminV1WorkforcePoolProviderOidcClientSecretValue + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // GoogleIamAdminV1WorkforcePoolProviderOidcWebSsoConfig: Configuration // for web single sign-on for the OIDC provider. type GoogleIamAdminV1WorkforcePoolProviderOidcWebSsoConfig struct { + // AdditionalScopes: Additional scopes to request for in the OIDC + // authentication request on top of scopes requested by default. By + // default, the `openid`, `profile` and `email` scopes that are + // supported by the identity provider are requested. Each additional + // scope may be at most 256 characters. A maximum of 10 additional + // scopes may be configured. + AdditionalScopes []string `json:"additionalScopes,omitempty"` + // AssertionClaimsBehavior: Required. The behavior for how OIDC Claims // are included in the `assertion` object used for attribute mapping and // attribute condition. @@ -1103,6 +1275,11 @@ type GoogleIamAdminV1WorkforcePoolProviderOidcWebSsoConfig struct { // Possible values: // "ASSERTION_CLAIMS_BEHAVIOR_UNSPECIFIED" - No assertion claims // behavior specified. + // "MERGE_USER_INFO_OVER_ID_TOKEN_CLAIMS" - Merge the UserInfo + // Endpoint Claims with ID Token Claims, preferring UserInfo Claim + // Values for the same Claim Name. Only possible for flows granting an + // Access Token, which comprise only the Authorization Code Flow at the + // moment. // "ONLY_ID_TOKEN_CLAIMS" - Only include ID Token Claims. AssertionClaimsBehavior string `json:"assertionClaimsBehavior,omitempty"` @@ -1111,23 +1288,24 @@ type GoogleIamAdminV1WorkforcePoolProviderOidcWebSsoConfig struct { // // Possible values: // "RESPONSE_TYPE_UNSPECIFIED" - No Response Type specified. + // "CODE" - The `response_type=code` selection uses the Authorization + // Code Flow for web sign-in. Requires a configured client secret. // "ID_TOKEN" - The `response_type=id_token` selection uses the // Implicit Flow for web sign-in. ResponseType string `json:"responseType,omitempty"` - // ForceSendFields is a list of field names (e.g. - // "AssertionClaimsBehavior") to unconditionally include in API - // requests. By default, fields with empty or default values are omitted - // from API requests. However, any non-pointer, non-interface field - // appearing in ForceSendFields will be sent to the server regardless of - // whether the field is empty or not. This may be used to include empty - // fields in Patch requests. + // ForceSendFields is a list of field names (e.g. "AdditionalScopes") 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. "AssertionClaimsBehavior") - // 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 + // NullFields is a list of field names (e.g. "AdditionalScopes") 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. @@ -2359,12 +2537,13 @@ type Role struct { // when bound in an IAM policy. IncludedPermissions []string `json:"includedPermissions,omitempty"` - // Name: The name of the role. When Role is used in CreateRole, the role - // name must not be set. When Role is used in output and other input - // such as UpdateRole, the role name is the complete path, e.g., - // roles/logging.viewer for predefined roles and - // organizations/{ORGANIZATION_ID}/roles/logging.viewer for custom - // roles. + // Name: The name of the role. When `Role` is used in `CreateRole`, the + // role name must not be set. When `Role` is used in output and other + // input such as `UpdateRole`, the role name is the complete path. For + // example, `roles/logging.viewer` for predefined roles, + // `organizations/{ORGANIZATION_ID}/roles/my-role` for + // organization-level custom roles, and + // `projects/{PROJECT_ID}/roles/my-role` for project-level custom roles. Name string `json:"name,omitempty"` // Stage: The current launch stage of the role. If the `ALPHA` launch @@ -3376,6 +3555,25 @@ type WorkloadIdentityPool struct { // characters. DisplayName string `json:"displayName,omitempty"` + // IdentityMode: Immutable. The identity mode of the pool. + // + // Possible values: + // "IDENTITY_MODE_UNSPECIFIED" - Existing pools will be in this mode. + // For existing worklod identity pools created through the public API, + // they will act as if they are set to FEDERATION_ONLY. + // "FEDERATION_ONLY" - With FEDERATION_ONLY mode, providers can be + // created at the root level within the pool. Attribute mappings must + // specify a "google.subject" claim that specifies the identity of the + // federation workload. Namespace or any sub-namespace resources is not + // allowed with this mode. + // "TRUST_DOMAIN" - With TRUST_DOMAIN mode, providers can be created + // at the root level within the pool. Attribute mappings must specify + // the "google.namespace" and "google.workload_identifier" claims that, + // respectively, specify the namespace and individual sub-namespace + // identifier for the workload. Namespaces and sub-Namespace resources + // are allowed. + IdentityMode string `json:"identityMode,omitempty"` + // Name: Output only. The resource name of the pool. Name string `json:"name,omitempty"` @@ -10133,6 +10331,598 @@ func (c *ProjectsLocationsWorkloadIdentityPoolsUndeleteCall) Do(opts ...googleap } +// method id "iam.projects.locations.workloadIdentityPools.namespaces.managedIdentities.operations.get": + +type ProjectsLocationsWorkloadIdentityPoolsNamespacesManagedIdentitiesOperationsGetCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Gets the latest state of a long-running operation. Clients can +// use this method to poll the operation result at intervals as +// recommended by the API service. +// +// - name: The name of the operation resource. +func (r *ProjectsLocationsWorkloadIdentityPoolsNamespacesManagedIdentitiesOperationsService) Get(name string) *ProjectsLocationsWorkloadIdentityPoolsNamespacesManagedIdentitiesOperationsGetCall { + c := &ProjectsLocationsWorkloadIdentityPoolsNamespacesManagedIdentitiesOperationsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsLocationsWorkloadIdentityPoolsNamespacesManagedIdentitiesOperationsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsWorkloadIdentityPoolsNamespacesManagedIdentitiesOperationsGetCall { + 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 *ProjectsLocationsWorkloadIdentityPoolsNamespacesManagedIdentitiesOperationsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsWorkloadIdentityPoolsNamespacesManagedIdentitiesOperationsGetCall { + 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 *ProjectsLocationsWorkloadIdentityPoolsNamespacesManagedIdentitiesOperationsGetCall) Context(ctx context.Context) *ProjectsLocationsWorkloadIdentityPoolsNamespacesManagedIdentitiesOperationsGetCall { + 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 *ProjectsLocationsWorkloadIdentityPoolsNamespacesManagedIdentitiesOperationsGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsWorkloadIdentityPoolsNamespacesManagedIdentitiesOperationsGetCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("GET", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "iam.projects.locations.workloadIdentityPools.namespaces.managedIdentities.operations.get" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *ProjectsLocationsWorkloadIdentityPoolsNamespacesManagedIdentitiesOperationsGetCall) Do(opts ...googleapi.CallOption) (*Operation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &Operation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/workloadIdentityPools/{workloadIdentityPoolsId}/namespaces/{namespacesId}/managedIdentities/{managedIdentitiesId}/operations/{operationsId}", + // "httpMethod": "GET", + // "id": "iam.projects.locations.workloadIdentityPools.namespaces.managedIdentities.operations.get", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "The name of the operation resource.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/workloadIdentityPools/[^/]+/namespaces/[^/]+/managedIdentities/[^/]+/operations/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+name}", + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "iam.projects.locations.workloadIdentityPools.namespaces.managedIdentities.workloadSources.operations.get": + +type ProjectsLocationsWorkloadIdentityPoolsNamespacesManagedIdentitiesWorkloadSourcesOperationsGetCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Gets the latest state of a long-running operation. Clients can +// use this method to poll the operation result at intervals as +// recommended by the API service. +// +// - name: The name of the operation resource. +func (r *ProjectsLocationsWorkloadIdentityPoolsNamespacesManagedIdentitiesWorkloadSourcesOperationsService) Get(name string) *ProjectsLocationsWorkloadIdentityPoolsNamespacesManagedIdentitiesWorkloadSourcesOperationsGetCall { + c := &ProjectsLocationsWorkloadIdentityPoolsNamespacesManagedIdentitiesWorkloadSourcesOperationsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsLocationsWorkloadIdentityPoolsNamespacesManagedIdentitiesWorkloadSourcesOperationsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsWorkloadIdentityPoolsNamespacesManagedIdentitiesWorkloadSourcesOperationsGetCall { + 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 *ProjectsLocationsWorkloadIdentityPoolsNamespacesManagedIdentitiesWorkloadSourcesOperationsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsWorkloadIdentityPoolsNamespacesManagedIdentitiesWorkloadSourcesOperationsGetCall { + 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 *ProjectsLocationsWorkloadIdentityPoolsNamespacesManagedIdentitiesWorkloadSourcesOperationsGetCall) Context(ctx context.Context) *ProjectsLocationsWorkloadIdentityPoolsNamespacesManagedIdentitiesWorkloadSourcesOperationsGetCall { + 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 *ProjectsLocationsWorkloadIdentityPoolsNamespacesManagedIdentitiesWorkloadSourcesOperationsGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsWorkloadIdentityPoolsNamespacesManagedIdentitiesWorkloadSourcesOperationsGetCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("GET", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "iam.projects.locations.workloadIdentityPools.namespaces.managedIdentities.workloadSources.operations.get" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *ProjectsLocationsWorkloadIdentityPoolsNamespacesManagedIdentitiesWorkloadSourcesOperationsGetCall) Do(opts ...googleapi.CallOption) (*Operation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &Operation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/workloadIdentityPools/{workloadIdentityPoolsId}/namespaces/{namespacesId}/managedIdentities/{managedIdentitiesId}/workloadSources/{workloadSourcesId}/operations/{operationsId}", + // "httpMethod": "GET", + // "id": "iam.projects.locations.workloadIdentityPools.namespaces.managedIdentities.workloadSources.operations.get", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "The name of the operation resource.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/workloadIdentityPools/[^/]+/namespaces/[^/]+/managedIdentities/[^/]+/workloadSources/[^/]+/operations/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+name}", + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "iam.projects.locations.workloadIdentityPools.namespaces.operations.get": + +type ProjectsLocationsWorkloadIdentityPoolsNamespacesOperationsGetCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Gets the latest state of a long-running operation. Clients can +// use this method to poll the operation result at intervals as +// recommended by the API service. +// +// - name: The name of the operation resource. +func (r *ProjectsLocationsWorkloadIdentityPoolsNamespacesOperationsService) Get(name string) *ProjectsLocationsWorkloadIdentityPoolsNamespacesOperationsGetCall { + c := &ProjectsLocationsWorkloadIdentityPoolsNamespacesOperationsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsLocationsWorkloadIdentityPoolsNamespacesOperationsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsWorkloadIdentityPoolsNamespacesOperationsGetCall { + 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 *ProjectsLocationsWorkloadIdentityPoolsNamespacesOperationsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsWorkloadIdentityPoolsNamespacesOperationsGetCall { + 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 *ProjectsLocationsWorkloadIdentityPoolsNamespacesOperationsGetCall) Context(ctx context.Context) *ProjectsLocationsWorkloadIdentityPoolsNamespacesOperationsGetCall { + 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 *ProjectsLocationsWorkloadIdentityPoolsNamespacesOperationsGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsWorkloadIdentityPoolsNamespacesOperationsGetCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("GET", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "iam.projects.locations.workloadIdentityPools.namespaces.operations.get" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *ProjectsLocationsWorkloadIdentityPoolsNamespacesOperationsGetCall) Do(opts ...googleapi.CallOption) (*Operation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &Operation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/workloadIdentityPools/{workloadIdentityPoolsId}/namespaces/{namespacesId}/operations/{operationsId}", + // "httpMethod": "GET", + // "id": "iam.projects.locations.workloadIdentityPools.namespaces.operations.get", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "The name of the operation resource.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/workloadIdentityPools/[^/]+/namespaces/[^/]+/operations/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+name}", + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "iam.projects.locations.workloadIdentityPools.namespaces.workloadSources.operations.get": + +type ProjectsLocationsWorkloadIdentityPoolsNamespacesWorkloadSourcesOperationsGetCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Gets the latest state of a long-running operation. Clients can +// use this method to poll the operation result at intervals as +// recommended by the API service. +// +// - name: The name of the operation resource. +func (r *ProjectsLocationsWorkloadIdentityPoolsNamespacesWorkloadSourcesOperationsService) Get(name string) *ProjectsLocationsWorkloadIdentityPoolsNamespacesWorkloadSourcesOperationsGetCall { + c := &ProjectsLocationsWorkloadIdentityPoolsNamespacesWorkloadSourcesOperationsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse +// for more information. +func (c *ProjectsLocationsWorkloadIdentityPoolsNamespacesWorkloadSourcesOperationsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsWorkloadIdentityPoolsNamespacesWorkloadSourcesOperationsGetCall { + 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 *ProjectsLocationsWorkloadIdentityPoolsNamespacesWorkloadSourcesOperationsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsWorkloadIdentityPoolsNamespacesWorkloadSourcesOperationsGetCall { + 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 *ProjectsLocationsWorkloadIdentityPoolsNamespacesWorkloadSourcesOperationsGetCall) Context(ctx context.Context) *ProjectsLocationsWorkloadIdentityPoolsNamespacesWorkloadSourcesOperationsGetCall { + 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 *ProjectsLocationsWorkloadIdentityPoolsNamespacesWorkloadSourcesOperationsGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsWorkloadIdentityPoolsNamespacesWorkloadSourcesOperationsGetCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := make(http.Header) + reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/"+internal.Version) + for k, v := range c.header_ { + reqHeaders[k] = v + } + reqHeaders.Set("User-Agent", c.s.userAgent()) + if c.ifNoneMatch_ != "" { + reqHeaders.Set("If-None-Match", c.ifNoneMatch_) + } + var body io.Reader = nil + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("GET", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "name": c.name, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "iam.projects.locations.workloadIdentityPools.namespaces.workloadSources.operations.get" call. +// Exactly one of *Operation or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *Operation.ServerResponse.Header or (if a response was returned at +// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified +// to check whether the returned error was because +// http.StatusNotModified was returned. +func (c *ProjectsLocationsWorkloadIdentityPoolsNamespacesWorkloadSourcesOperationsGetCall) Do(opts ...googleapi.CallOption) (*Operation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &Operation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + if err := gensupport.DecodeResponse(target, res); err != nil { + return nil, err + } + return ret, nil + // { + // "description": "Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/workloadIdentityPools/{workloadIdentityPoolsId}/namespaces/{namespacesId}/workloadSources/{workloadSourcesId}/operations/{operationsId}", + // "httpMethod": "GET", + // "id": "iam.projects.locations.workloadIdentityPools.namespaces.workloadSources.operations.get", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "The name of the operation resource.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/workloadIdentityPools/[^/]+/namespaces/[^/]+/workloadSources/[^/]+/operations/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+name}", + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + // method id "iam.projects.locations.workloadIdentityPools.operations.get": type ProjectsLocationsWorkloadIdentityPoolsOperationsGetCall struct { diff --git a/internal/version.go b/internal/version.go index 6aeb50de806..053e4ee2b29 100644 --- a/internal/version.go +++ b/internal/version.go @@ -5,4 +5,4 @@ package internal // Version is the current tagged release of the library. -const Version = "0.129.0" +const Version = "0.130.0" diff --git a/logging/v2/logging-api.json b/logging/v2/logging-api.json index f74df080321..7baf442ceb1 100644 --- a/logging/v2/logging-api.json +++ b/logging/v2/logging-api.json @@ -1222,7 +1222,7 @@ ], "parameters": { "customWriterIdentity": { - "description": "Optional. A service account provided by the caller that will be used to write the log entries. Must be of format serviceAccount:some@email. This can only be specified if writing to a destination outside the sink's project. If not specified, a p4 service account will automatically be generated.", + "description": "Optional. A service account provided by the caller that will be used to write the log entries. The format must be serviceAccount:some@email. This field can only be specified if you are routing logs to a destination outside this sink's project. If not specified, a Logging service account will automatically be generated.", "location": "query", "type": "string" }, @@ -2824,7 +2824,7 @@ ], "parameters": { "customWriterIdentity": { - "description": "Optional. A service account provided by the caller that will be used to write the log entries. Must be of format serviceAccount:some@email. This can only be specified if writing to a destination outside the sink's project. If not specified, a p4 service account will automatically be generated.", + "description": "Optional. A service account provided by the caller that will be used to write the log entries. The format must be serviceAccount:some@email. This field can only be specified if you are routing logs to a destination outside this sink's project. If not specified, a Logging service account will automatically be generated.", "location": "query", "type": "string" }, @@ -5070,7 +5070,7 @@ ], "parameters": { "customWriterIdentity": { - "description": "Optional. A service account provided by the caller that will be used to write the log entries. Must be of format serviceAccount:some@email. This can only be specified if writing to a destination outside the sink's project. If not specified, a p4 service account will automatically be generated.", + "description": "Optional. A service account provided by the caller that will be used to write the log entries. The format must be serviceAccount:some@email. This field can only be specified if you are routing logs to a destination outside this sink's project. If not specified, a Logging service account will automatically be generated.", "location": "query", "type": "string" }, @@ -6549,7 +6549,7 @@ ], "parameters": { "customWriterIdentity": { - "description": "Optional. A service account provided by the caller that will be used to write the log entries. Must be of format serviceAccount:some@email. This can only be specified if writing to a destination outside the sink's project. If not specified, a p4 service account will automatically be generated.", + "description": "Optional. A service account provided by the caller that will be used to write the log entries. The format must be serviceAccount:some@email. This field can only be specified if you are routing logs to a destination outside this sink's project. If not specified, a Logging service account will automatically be generated.", "location": "query", "type": "string" }, @@ -6777,7 +6777,7 @@ ], "parameters": { "customWriterIdentity": { - "description": "Optional. A service account provided by the caller that will be used to write the log entries. Must be of format serviceAccount:some@email. This can only be specified if writing to a destination outside the sink's project. If not specified, a p4 service account will automatically be generated.", + "description": "Optional. A service account provided by the caller that will be used to write the log entries. The format must be serviceAccount:some@email. This field can only be specified if you are routing logs to a destination outside this sink's project. If not specified, a Logging service account will automatically be generated.", "location": "query", "type": "string" }, @@ -7077,7 +7077,7 @@ } } }, - "revision": "20230531", + "revision": "20230623", "rootUrl": "https://logging.googleapis.com/", "schemas": { "BigQueryDataset": { diff --git a/logging/v2/logging-gen.go b/logging/v2/logging-gen.go index c0b590a3dc3..39799cc1169 100644 --- a/logging/v2/logging-gen.go +++ b/logging/v2/logging-gen.go @@ -9839,10 +9839,10 @@ func (r *BillingAccountsSinksService) Create(parent string, logsink *LogSink) *B // CustomWriterIdentity sets the optional parameter // "customWriterIdentity": A service account provided by the caller that -// will be used to write the log entries. Must be of format -// serviceAccount:some@email. This can only be specified if writing to a -// destination outside the sink's project. If not specified, a p4 -// service account will automatically be generated. +// will be used to write the log entries. The format must be +// serviceAccount:some@email. This field can only be specified if you +// are routing logs to a destination outside this sink's project. If not +// specified, a Logging service account will automatically be generated. func (c *BillingAccountsSinksCreateCall) CustomWriterIdentity(customWriterIdentity string) *BillingAccountsSinksCreateCall { c.urlParams_.Set("customWriterIdentity", customWriterIdentity) return c @@ -9965,7 +9965,7 @@ func (c *BillingAccountsSinksCreateCall) Do(opts ...googleapi.CallOption) (*LogS // ], // "parameters": { // "customWriterIdentity": { - // "description": "Optional. A service account provided by the caller that will be used to write the log entries. Must be of format serviceAccount:some@email. This can only be specified if writing to a destination outside the sink's project. If not specified, a p4 service account will automatically be generated.", + // "description": "Optional. A service account provided by the caller that will be used to write the log entries. The format must be serviceAccount:some@email. This field can only be specified if you are routing logs to a destination outside this sink's project. If not specified, a Logging service account will automatically be generated.", // "location": "query", // "type": "string" // }, @@ -17892,10 +17892,10 @@ func (r *FoldersSinksService) Create(parent string, logsink *LogSink) *FoldersSi // CustomWriterIdentity sets the optional parameter // "customWriterIdentity": A service account provided by the caller that -// will be used to write the log entries. Must be of format -// serviceAccount:some@email. This can only be specified if writing to a -// destination outside the sink's project. If not specified, a p4 -// service account will automatically be generated. +// will be used to write the log entries. The format must be +// serviceAccount:some@email. This field can only be specified if you +// are routing logs to a destination outside this sink's project. If not +// specified, a Logging service account will automatically be generated. func (c *FoldersSinksCreateCall) CustomWriterIdentity(customWriterIdentity string) *FoldersSinksCreateCall { c.urlParams_.Set("customWriterIdentity", customWriterIdentity) return c @@ -18018,7 +18018,7 @@ func (c *FoldersSinksCreateCall) Do(opts ...googleapi.CallOption) (*LogSink, err // ], // "parameters": { // "customWriterIdentity": { - // "description": "Optional. A service account provided by the caller that will be used to write the log entries. Must be of format serviceAccount:some@email. This can only be specified if writing to a destination outside the sink's project. If not specified, a p4 service account will automatically be generated.", + // "description": "Optional. A service account provided by the caller that will be used to write the log entries. The format must be serviceAccount:some@email. This field can only be specified if you are routing logs to a destination outside this sink's project. If not specified, a Logging service account will automatically be generated.", // "location": "query", // "type": "string" // }, @@ -29017,10 +29017,10 @@ func (r *OrganizationsSinksService) Create(parent string, logsink *LogSink) *Org // CustomWriterIdentity sets the optional parameter // "customWriterIdentity": A service account provided by the caller that -// will be used to write the log entries. Must be of format -// serviceAccount:some@email. This can only be specified if writing to a -// destination outside the sink's project. If not specified, a p4 -// service account will automatically be generated. +// will be used to write the log entries. The format must be +// serviceAccount:some@email. This field can only be specified if you +// are routing logs to a destination outside this sink's project. If not +// specified, a Logging service account will automatically be generated. func (c *OrganizationsSinksCreateCall) CustomWriterIdentity(customWriterIdentity string) *OrganizationsSinksCreateCall { c.urlParams_.Set("customWriterIdentity", customWriterIdentity) return c @@ -29143,7 +29143,7 @@ func (c *OrganizationsSinksCreateCall) Do(opts ...googleapi.CallOption) (*LogSin // ], // "parameters": { // "customWriterIdentity": { - // "description": "Optional. A service account provided by the caller that will be used to write the log entries. Must be of format serviceAccount:some@email. This can only be specified if writing to a destination outside the sink's project. If not specified, a p4 service account will automatically be generated.", + // "description": "Optional. A service account provided by the caller that will be used to write the log entries. The format must be serviceAccount:some@email. This field can only be specified if you are routing logs to a destination outside this sink's project. If not specified, a Logging service account will automatically be generated.", // "location": "query", // "type": "string" // }, @@ -36325,10 +36325,10 @@ func (r *ProjectsSinksService) Create(parent string, logsink *LogSink) *Projects // CustomWriterIdentity sets the optional parameter // "customWriterIdentity": A service account provided by the caller that -// will be used to write the log entries. Must be of format -// serviceAccount:some@email. This can only be specified if writing to a -// destination outside the sink's project. If not specified, a p4 -// service account will automatically be generated. +// will be used to write the log entries. The format must be +// serviceAccount:some@email. This field can only be specified if you +// are routing logs to a destination outside this sink's project. If not +// specified, a Logging service account will automatically be generated. func (c *ProjectsSinksCreateCall) CustomWriterIdentity(customWriterIdentity string) *ProjectsSinksCreateCall { c.urlParams_.Set("customWriterIdentity", customWriterIdentity) return c @@ -36451,7 +36451,7 @@ func (c *ProjectsSinksCreateCall) Do(opts ...googleapi.CallOption) (*LogSink, er // ], // "parameters": { // "customWriterIdentity": { - // "description": "Optional. A service account provided by the caller that will be used to write the log entries. Must be of format serviceAccount:some@email. This can only be specified if writing to a destination outside the sink's project. If not specified, a p4 service account will automatically be generated.", + // "description": "Optional. A service account provided by the caller that will be used to write the log entries. The format must be serviceAccount:some@email. This field can only be specified if you are routing logs to a destination outside this sink's project. If not specified, a Logging service account will automatically be generated.", // "location": "query", // "type": "string" // }, @@ -37427,10 +37427,10 @@ func (r *SinksService) Create(parent string, logsink *LogSink) *SinksCreateCall // CustomWriterIdentity sets the optional parameter // "customWriterIdentity": A service account provided by the caller that -// will be used to write the log entries. Must be of format -// serviceAccount:some@email. This can only be specified if writing to a -// destination outside the sink's project. If not specified, a p4 -// service account will automatically be generated. +// will be used to write the log entries. The format must be +// serviceAccount:some@email. This field can only be specified if you +// are routing logs to a destination outside this sink's project. If not +// specified, a Logging service account will automatically be generated. func (c *SinksCreateCall) CustomWriterIdentity(customWriterIdentity string) *SinksCreateCall { c.urlParams_.Set("customWriterIdentity", customWriterIdentity) return c @@ -37553,7 +37553,7 @@ func (c *SinksCreateCall) Do(opts ...googleapi.CallOption) (*LogSink, error) { // ], // "parameters": { // "customWriterIdentity": { - // "description": "Optional. A service account provided by the caller that will be used to write the log entries. Must be of format serviceAccount:some@email. This can only be specified if writing to a destination outside the sink's project. If not specified, a p4 service account will automatically be generated.", + // "description": "Optional. A service account provided by the caller that will be used to write the log entries. The format must be serviceAccount:some@email. This field can only be specified if you are routing logs to a destination outside this sink's project. If not specified, a Logging service account will automatically be generated.", // "location": "query", // "type": "string" // }, diff --git a/memcache/v1/memcache-api.json b/memcache/v1/memcache-api.json index 11caf9f4de8..f2f3c8b4a03 100644 --- a/memcache/v1/memcache-api.json +++ b/memcache/v1/memcache-api.json @@ -556,7 +556,7 @@ } } }, - "revision": "20230504", + "revision": "20230622", "rootUrl": "https://memcache.googleapis.com/", "schemas": { "ApplyParametersRequest": { @@ -1102,6 +1102,13 @@ "$ref": "MemcacheParameters", "description": "User defined parameters to apply to the memcached process on each node." }, + "reservedIpRangeId": { + "description": "Optional. Contains the id of allocated IP address ranges associated with the private service access connection for example, \"test-default\" associated with IP range 10.0.0.0/29.", + "items": { + "type": "string" + }, + "type": "array" + }, "state": { "description": "Output only. The state of this Memcached instance.", "enum": [ diff --git a/memcache/v1/memcache-gen.go b/memcache/v1/memcache-gen.go index f46df095cb4..edc6f5b8338 100644 --- a/memcache/v1/memcache-gen.go +++ b/memcache/v1/memcache-gen.go @@ -1042,6 +1042,11 @@ type Instance struct { // on each node. Parameters *MemcacheParameters `json:"parameters,omitempty"` + // ReservedIpRangeId: Optional. Contains the id of allocated IP address + // ranges associated with the private service access connection for + // example, "test-default" associated with IP range 10.0.0.0/29. + ReservedIpRangeId []string `json:"reservedIpRangeId,omitempty"` + // State: Output only. The state of this Memcached instance. // // Possible values: diff --git a/memcache/v1beta2/memcache-api.json b/memcache/v1beta2/memcache-api.json index 78613f568d8..37448116553 100644 --- a/memcache/v1beta2/memcache-api.json +++ b/memcache/v1beta2/memcache-api.json @@ -584,7 +584,7 @@ } } }, - "revision": "20230504", + "revision": "20230622", "rootUrl": "https://memcache.googleapis.com/", "schemas": { "ApplyParametersRequest": { @@ -1148,6 +1148,13 @@ "$ref": "MemcacheParameters", "description": "User defined parameters to apply to the memcached process on each node." }, + "reservedIpRangeId": { + "description": "Optional. Contains the id of allocated IP address ranges associated with the private service access connection for example, \"test-default\" associated with IP range 10.0.0.0/29.", + "items": { + "type": "string" + }, + "type": "array" + }, "state": { "description": "Output only. The state of this Memcached instance.", "enum": [ diff --git a/memcache/v1beta2/memcache-gen.go b/memcache/v1beta2/memcache-gen.go index fa34b34911a..ed0687d2a25 100644 --- a/memcache/v1beta2/memcache-gen.go +++ b/memcache/v1beta2/memcache-gen.go @@ -1075,6 +1075,11 @@ type Instance struct { // on each node. Parameters *MemcacheParameters `json:"parameters,omitempty"` + // ReservedIpRangeId: Optional. Contains the id of allocated IP address + // ranges associated with the private service access connection for + // example, "test-default" associated with IP range 10.0.0.0/29. + ReservedIpRangeId []string `json:"reservedIpRangeId,omitempty"` + // State: Output only. The state of this Memcached instance. // // Possible values: diff --git a/metastore/v1/metastore-api.json b/metastore/v1/metastore-api.json index b8eb3e005da..89857c40353 100644 --- a/metastore/v1/metastore-api.json +++ b/metastore/v1/metastore-api.json @@ -1339,7 +1339,7 @@ } } }, - "revision": "20230530", + "revision": "20230622", "rootUrl": "https://metastore.googleapis.com/", "schemas": { "AlterMetadataResourceLocationRequest": { @@ -1569,6 +1569,7 @@ "id": "DatabaseDump", "properties": { "databaseType": { + "deprecated": true, "description": "The type of the database.", "enum": [ "DATABASE_TYPE_UNSPECIFIED", @@ -1585,6 +1586,7 @@ "type": "string" }, "sourceDatabase": { + "deprecated": true, "description": "The name of the source database.", "type": "string" }, diff --git a/metastore/v1alpha/metastore-api.json b/metastore/v1alpha/metastore-api.json index 566f8463917..92c552bfe5c 100644 --- a/metastore/v1alpha/metastore-api.json +++ b/metastore/v1alpha/metastore-api.json @@ -1579,7 +1579,7 @@ } } }, - "revision": "20230502", + "revision": "20230622", "rootUrl": "https://metastore.googleapis.com/", "schemas": { "AlterMetadataResourceLocationRequest": { @@ -1822,6 +1822,7 @@ "id": "DatabaseDump", "properties": { "databaseType": { + "deprecated": true, "description": "The type of the database.", "enum": [ "DATABASE_TYPE_UNSPECIFIED", @@ -1838,6 +1839,7 @@ "type": "string" }, "sourceDatabase": { + "deprecated": true, "description": "The name of the source database.", "type": "string" }, diff --git a/metastore/v1beta/metastore-api.json b/metastore/v1beta/metastore-api.json index 6e8b5926b31..ca3ae389e6f 100644 --- a/metastore/v1beta/metastore-api.json +++ b/metastore/v1beta/metastore-api.json @@ -1579,7 +1579,7 @@ } } }, - "revision": "20230502", + "revision": "20230622", "rootUrl": "https://metastore.googleapis.com/", "schemas": { "AlterMetadataResourceLocationRequest": { @@ -1822,6 +1822,7 @@ "id": "DatabaseDump", "properties": { "databaseType": { + "deprecated": true, "description": "The type of the database.", "enum": [ "DATABASE_TYPE_UNSPECIFIED", @@ -1838,6 +1839,7 @@ "type": "string" }, "sourceDatabase": { + "deprecated": true, "description": "The name of the source database.", "type": "string" }, diff --git a/mybusinesslodging/v1/mybusinesslodging-api.json b/mybusinesslodging/v1/mybusinesslodging-api.json index 2c606b354d4..428b7418ea3 100644 --- a/mybusinesslodging/v1/mybusinesslodging-api.json +++ b/mybusinesslodging/v1/mybusinesslodging-api.json @@ -194,7 +194,7 @@ } } }, - "revision": "20230124", + "revision": "20230702", "rootUrl": "https://mybusinesslodging.googleapis.com/", "schemas": { "Accessibility": { @@ -5002,6 +5002,7 @@ "type": "array" }, "leedCertification": { + "deprecated": true, "description": "LEED certification. Deprecated: this field is no longer populated. LEED certification status is now provided directly by USGBC.", "enum": [ "LEED_CERTIFICATION_UNSPECIFIED", @@ -5022,6 +5023,7 @@ "type": "string" }, "leedCertificationException": { + "deprecated": true, "description": "LEED certification exception. Deprecated: this field is no longer populated. LEED certification status is now provided directly by USGBC.", "enum": [ "EXCEPTION_UNSPECIFIED", diff --git a/mybusinessnotifications/v1/mybusinessnotifications-api.json b/mybusinessnotifications/v1/mybusinessnotifications-api.json index 3326f1a80af..3efa6ae6f9f 100644 --- a/mybusinessnotifications/v1/mybusinessnotifications-api.json +++ b/mybusinessnotifications/v1/mybusinessnotifications-api.json @@ -154,7 +154,7 @@ } } }, - "revision": "20221201", + "revision": "20230702", "rootUrl": "https://mybusinessnotifications.googleapis.com/", "schemas": { "NotificationSetting": { @@ -182,6 +182,20 @@ "LOSS_OF_VOICE_OF_MERCHANT", "VOICE_OF_MERCHANT_UPDATED" ], + "enumDeprecated": [ + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + true, + false + ], "enumDescriptions": [ "No notification type. Will not match any notifications.", "The location has Google updates for review. The location_name field on the notification will provide the resource name of the location with Google updates.", diff --git a/networkconnectivity/v1alpha1/networkconnectivity-api.json b/networkconnectivity/v1alpha1/networkconnectivity-api.json index 814e876b5b1..108a32d6911 100644 --- a/networkconnectivity/v1alpha1/networkconnectivity-api.json +++ b/networkconnectivity/v1alpha1/networkconnectivity-api.json @@ -1116,7 +1116,7 @@ } } }, - "revision": "20230621", + "revision": "20230627", "rootUrl": "https://networkconnectivity.googleapis.com/", "schemas": { "AuditConfig": { @@ -1329,6 +1329,7 @@ "type": "string" }, "spokes": { + "deprecated": true, "description": "Output only. A list of the URIs of all attached spokes. This field is deprecated and will not be included in future API versions. Call ListSpokes on each region instead.", "items": { "type": "string" @@ -1686,6 +1687,7 @@ "type": "string" }, "networkInterface": { + "deprecated": true, "type": "string" }, "virtualMachine": { diff --git a/networkmanagement/v1/networkmanagement-api.json b/networkmanagement/v1/networkmanagement-api.json index 78685de61a4..0bfd0dc672c 100644 --- a/networkmanagement/v1/networkmanagement-api.json +++ b/networkmanagement/v1/networkmanagement-api.json @@ -591,7 +591,7 @@ } } }, - "revision": "20230531", + "revision": "20230621", "rootUrl": "https://networkmanagement.googleapis.com/", "schemas": { "AbortInfo": { @@ -1417,6 +1417,7 @@ "type": "string" }, "serviceAccount": { + "deprecated": true, "description": "Service account authorized for the instance.", "type": "string" }, diff --git a/osconfig/v1/osconfig-api.json b/osconfig/v1/osconfig-api.json index 35beff7f32f..14367967e0a 100644 --- a/osconfig/v1/osconfig-api.json +++ b/osconfig/v1/osconfig-api.json @@ -1000,7 +1000,7 @@ } } }, - "revision": "20230618", + "revision": "20230703", "rootUrl": "https://osconfig.googleapis.com/", "schemas": { "AptSettings": { @@ -3460,6 +3460,7 @@ "id": "VulnerabilityReportVulnerability", "properties": { "availableInventoryItemIds": { + "deprecated": true, "description": "Corresponds to the `AVAILABLE_PACKAGE` inventory item on the VM. If the vulnerability report was not updated after the VM inventory update, these values might not display in VM inventory. If there is no available fix, the field is empty. The `inventory_item` value specifies the latest `SoftwarePackage` available to the VM that fixes the vulnerability.", "items": { "type": "string" @@ -3476,6 +3477,7 @@ "description": "Contains metadata as per the upstream feed of the operating system and NVD." }, "installedInventoryItemIds": { + "deprecated": true, "description": "Corresponds to the `INSTALLED_PACKAGE` inventory item on the VM. This field displays the inventory items affected by this vulnerability. If the vulnerability report was not updated after the VM inventory update, these values might not display in VM inventory. For some distros, this field may be empty.", "items": { "type": "string" diff --git a/osconfig/v1alpha/osconfig-api.json b/osconfig/v1alpha/osconfig-api.json index 6bb7e4b6810..b821da0986c 100644 --- a/osconfig/v1alpha/osconfig-api.json +++ b/osconfig/v1alpha/osconfig-api.json @@ -687,7 +687,7 @@ } } }, - "revision": "20230618", + "revision": "20230703", "rootUrl": "https://osconfig.googleapis.com/", "schemas": { "CVSSv3": { @@ -943,6 +943,7 @@ "type": "object" }, "InstanceOSPoliciesCompliance": { + "deprecated": true, "description": "This API resource represents the OS policies compliance data for a Compute Engine virtual machine (VM) instance at a given point in time. A Compute Engine VM can have multiple OS policy assignments, and each assignment can have multiple OS policies. As a result, multiple OS policies could be applied to a single VM. You can use this API resource to determine both the compliance state of your VM as well as the compliance state of an individual OS policy. For more information, see [View compliance](https://cloud.google.com/compute/docs/os-configuration-management/view-compliance).", "id": "InstanceOSPoliciesCompliance", "properties": { @@ -1008,6 +1009,7 @@ "type": "object" }, "InstanceOSPoliciesComplianceOSPolicyCompliance": { + "deprecated": true, "description": "Compliance data for an OS policy", "id": "InstanceOSPoliciesComplianceOSPolicyCompliance", "properties": { @@ -1378,6 +1380,7 @@ "type": "object" }, "ListInstanceOSPoliciesCompliancesResponse": { + "deprecated": true, "description": "A response message for listing OS policies compliance data for all Compute Engine VMs in the given location.", "id": "ListInstanceOSPoliciesCompliancesResponse", "properties": { @@ -1639,6 +1642,7 @@ "type": "array" }, "osShortNames": { + "deprecated": true, "description": "Deprecated. Use the `inventories` field instead. A VM is selected if it's OS short name matches with any of the values provided in this list.", "items": { "type": "string" @@ -1958,6 +1962,7 @@ "type": "object" }, "OSPolicyResourceCompliance": { + "deprecated": true, "description": "Compliance data for an OS policy resource.", "id": "OSPolicyResourceCompliance", "properties": { @@ -1998,6 +2003,7 @@ "type": "object" }, "OSPolicyResourceComplianceExecResourceOutput": { + "deprecated": true, "description": "ExecResource specific output.", "id": "OSPolicyResourceComplianceExecResourceOutput", "properties": { @@ -2010,6 +2016,7 @@ "type": "object" }, "OSPolicyResourceConfigStep": { + "deprecated": true, "description": "Step performed by the OS Config agent for configuring an `OSPolicyResource` to its desired state.", "id": "OSPolicyResourceConfigStep", "properties": { @@ -2219,6 +2226,7 @@ }, "osFilter": { "$ref": "OSPolicyOSFilter", + "deprecated": true, "description": "Deprecated. Use the `inventory_filters` field instead. Used to specify the OS filter for a resource group" }, "resources": { @@ -2595,6 +2603,7 @@ "id": "VulnerabilityReportVulnerability", "properties": { "availableInventoryItemIds": { + "deprecated": true, "description": "Corresponds to the `AVAILABLE_PACKAGE` inventory item on the VM. If the vulnerability report was not updated after the VM inventory update, these values might not display in VM inventory. If there is no available fix, the field is empty. The `inventory_item` value specifies the latest `SoftwarePackage` available to the VM that fixes the vulnerability.", "items": { "type": "string" @@ -2611,6 +2620,7 @@ "description": "Contains metadata as per the upstream feed of the operating system and NVD." }, "installedInventoryItemIds": { + "deprecated": true, "description": "Corresponds to the `INSTALLED_PACKAGE` inventory item on the VM. This field displays the inventory items affected by this vulnerability. If the vulnerability report was not updated after the VM inventory update, these values might not display in VM inventory. For some distros, this field may be empty.", "items": { "type": "string" diff --git a/playdeveloperreporting/v1alpha1/playdeveloperreporting-api.json b/playdeveloperreporting/v1alpha1/playdeveloperreporting-api.json index 5a743184c82..2becbc7d023 100644 --- a/playdeveloperreporting/v1alpha1/playdeveloperreporting-api.json +++ b/playdeveloperreporting/v1alpha1/playdeveloperreporting-api.json @@ -680,7 +680,7 @@ "type": "integer" }, "pageSize": { - "description": "The maximum number of reports to return. The service may return fewer than this value. If unspecified, at most 50 reports will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000.", + "description": "The maximum number of reports to return. The service may return fewer than this value. If unspecified, at most 50 reports will be returned. The maximum value is 100; values above 100 will be coerced to 100.", "format": "int32", "location": "query", "type": "integer" @@ -941,7 +941,7 @@ } } }, - "revision": "20230516", + "revision": "20230701", "rootUrl": "https://playdeveloperreporting.googleapis.com/", "schemas": { "GooglePlayDeveloperReportingV1alpha1Anomaly": { diff --git a/playdeveloperreporting/v1alpha1/playdeveloperreporting-gen.go b/playdeveloperreporting/v1alpha1/playdeveloperreporting-gen.go index df1506504c7..34bd6259b0d 100644 --- a/playdeveloperreporting/v1alpha1/playdeveloperreporting-gen.go +++ b/playdeveloperreporting/v1alpha1/playdeveloperreporting-gen.go @@ -5491,7 +5491,7 @@ func (c *VitalsErrorsReportsSearchCall) IntervalStartTimeYear(intervalStartTimeY // PageSize sets the optional parameter "pageSize": The maximum number // of reports to return. The service may return fewer than this value. // If unspecified, at most 50 reports will be returned. The maximum -// value is 1000; values above 1000 will be coerced to 1000. +// value is 100; values above 100 will be coerced to 100. func (c *VitalsErrorsReportsSearchCall) PageSize(pageSize int64) *VitalsErrorsReportsSearchCall { c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) return c @@ -5739,7 +5739,7 @@ func (c *VitalsErrorsReportsSearchCall) Do(opts ...googleapi.CallOption) (*Googl // "type": "integer" // }, // "pageSize": { - // "description": "The maximum number of reports to return. The service may return fewer than this value. If unspecified, at most 50 reports will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000.", + // "description": "The maximum number of reports to return. The service may return fewer than this value. If unspecified, at most 50 reports will be returned. The maximum value is 100; values above 100 will be coerced to 100.", // "format": "int32", // "location": "query", // "type": "integer" diff --git a/playdeveloperreporting/v1beta1/playdeveloperreporting-api.json b/playdeveloperreporting/v1beta1/playdeveloperreporting-api.json index 7951a0aaa11..d4636e60de9 100644 --- a/playdeveloperreporting/v1beta1/playdeveloperreporting-api.json +++ b/playdeveloperreporting/v1beta1/playdeveloperreporting-api.json @@ -680,7 +680,7 @@ "type": "integer" }, "pageSize": { - "description": "The maximum number of reports to return. The service may return fewer than this value. If unspecified, at most 50 reports will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000.", + "description": "The maximum number of reports to return. The service may return fewer than this value. If unspecified, at most 50 reports will be returned. The maximum value is 100; values above 100 will be coerced to 100.", "format": "int32", "location": "query", "type": "integer" @@ -941,7 +941,7 @@ } } }, - "revision": "20230516", + "revision": "20230701", "rootUrl": "https://playdeveloperreporting.googleapis.com/", "schemas": { "GooglePlayDeveloperReportingV1beta1Anomaly": { diff --git a/playdeveloperreporting/v1beta1/playdeveloperreporting-gen.go b/playdeveloperreporting/v1beta1/playdeveloperreporting-gen.go index 539db1374e7..ddb1c63b44a 100644 --- a/playdeveloperreporting/v1beta1/playdeveloperreporting-gen.go +++ b/playdeveloperreporting/v1beta1/playdeveloperreporting-gen.go @@ -5491,7 +5491,7 @@ func (c *VitalsErrorsReportsSearchCall) IntervalStartTimeYear(intervalStartTimeY // PageSize sets the optional parameter "pageSize": The maximum number // of reports to return. The service may return fewer than this value. // If unspecified, at most 50 reports will be returned. The maximum -// value is 1000; values above 1000 will be coerced to 1000. +// value is 100; values above 100 will be coerced to 100. func (c *VitalsErrorsReportsSearchCall) PageSize(pageSize int64) *VitalsErrorsReportsSearchCall { c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) return c @@ -5739,7 +5739,7 @@ func (c *VitalsErrorsReportsSearchCall) Do(opts ...googleapi.CallOption) (*Googl // "type": "integer" // }, // "pageSize": { - // "description": "The maximum number of reports to return. The service may return fewer than this value. If unspecified, at most 50 reports will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000.", + // "description": "The maximum number of reports to return. The service may return fewer than this value. If unspecified, at most 50 reports will be returned. The maximum value is 100; values above 100 will be coerced to 100.", // "format": "int32", // "location": "query", // "type": "integer" diff --git a/pubsub/v1/pubsub-api.json b/pubsub/v1/pubsub-api.json index 38af7b19b3f..62204b156ee 100644 --- a/pubsub/v1/pubsub-api.json +++ b/pubsub/v1/pubsub-api.json @@ -681,13 +681,13 @@ ], "parameters": { "pageSize": { - "description": "Maximum number of snapshots to return.", + "description": "Optional. Maximum number of snapshots to return.", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "The value returned by the last `ListSnapshotsResponse`; indicates that this is a continuation of a prior `ListSnapshots` call, and that the system should return the next page of data.", + "description": "Optional. The value returned by the last `ListSnapshotsResponse`; indicates that this is a continuation of a prior `ListSnapshots` call, and that the system should return the next page of data.", "location": "query", "type": "string" }, @@ -718,7 +718,7 @@ ], "parameters": { "name": { - "description": "The name of the snapshot.", + "description": "Optional. The name of the snapshot.", "location": "path", "pattern": "^projects/[^/]+/snapshots/[^/]+$", "required": true, @@ -977,13 +977,13 @@ ], "parameters": { "pageSize": { - "description": "Maximum number of subscriptions to return.", + "description": "Optional. Maximum number of subscriptions to return.", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "The value returned by the last `ListSubscriptionsResponse`; indicates that this is a continuation of a prior `ListSubscriptions` call, and that the system should return the next page of data.", + "description": "Optional. The value returned by the last `ListSubscriptionsResponse`; indicates that this is a continuation of a prior `ListSubscriptions` call, and that the system should return the next page of data.", "location": "query", "type": "string" }, @@ -1334,13 +1334,13 @@ ], "parameters": { "pageSize": { - "description": "Maximum number of topics to return.", + "description": "Optional. Maximum number of topics to return.", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "The value returned by the last `ListTopicsResponse`; indicates that this is a continuation of a prior `ListTopics` call, and that the system should return the next page of data.", + "description": "Optional. The value returned by the last `ListTopicsResponse`; indicates that this is a continuation of a prior `ListTopics` call, and that the system should return the next page of data.", "location": "query", "type": "string" }, @@ -1491,13 +1491,13 @@ ], "parameters": { "pageSize": { - "description": "Maximum number of snapshot names to return.", + "description": "Optional. Maximum number of snapshot names to return.", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "The value returned by the last `ListTopicSnapshotsResponse`; indicates that this is a continuation of a prior `ListTopicSnapshots` call, and that the system should return the next page of data.", + "description": "Optional. The value returned by the last `ListTopicSnapshotsResponse`; indicates that this is a continuation of a prior `ListTopicSnapshots` call, and that the system should return the next page of data.", "location": "query", "type": "string" }, @@ -1532,13 +1532,13 @@ ], "parameters": { "pageSize": { - "description": "Maximum number of subscription names to return.", + "description": "Optional. Maximum number of subscription names to return.", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "The value returned by the last `ListTopicSubscriptionsResponse`; indicates that this is a continuation of a prior `ListTopicSubscriptions` call, and that the system should return the next page of data.", + "description": "Optional. The value returned by the last `ListTopicSubscriptionsResponse`; indicates that this is a continuation of a prior `ListTopicSubscriptions` call, and that the system should return the next page of data.", "location": "query", "type": "string" }, @@ -1566,7 +1566,7 @@ } } }, - "revision": "20230529", + "revision": "20230620", "rootUrl": "https://pubsub.googleapis.com/", "schemas": { "AcknowledgeRequest": { @@ -1588,7 +1588,7 @@ "id": "AvroConfig", "properties": { "writeMetadata": { - "description": "When true, write the subscription name, message_id, publish_time, attributes, and ordering_key as additional fields in the output.", + "description": "Optional. When true, write the subscription name, message_id, publish_time, attributes, and ordering_key as additional fields in the output.", "type": "boolean" } }, @@ -1599,7 +1599,7 @@ "id": "BigQueryConfig", "properties": { "dropUnknownFields": { - "description": "When true and use_topic_schema is true, any fields that are a part of the topic schema that are not part of the BigQuery table schema are dropped when writing to BigQuery. Otherwise, the schemas must be kept in sync and any messages with extra fields are not written and remain in the subscription's backlog.", + "description": "Optional. When true and use_topic_schema is true, any fields that are a part of the topic schema that are not part of the BigQuery table schema are dropped when writing to BigQuery. Otherwise, the schemas must be kept in sync and any messages with extra fields are not written and remain in the subscription's backlog.", "type": "boolean" }, "state": { @@ -1622,15 +1622,15 @@ "type": "string" }, "table": { - "description": "The name of the table to which to write data, of the form {projectId}.{datasetId}.{tableId}", + "description": "Optional. The name of the table to which to write data, of the form {projectId}.{datasetId}.{tableId}", "type": "string" }, "useTopicSchema": { - "description": "When true, use the topic's schema as the columns to write to in BigQuery, if it exists.", + "description": "Optional. When true, use the topic's schema as the columns to write to in BigQuery, if it exists.", "type": "boolean" }, "writeMetadata": { - "description": "When true, write the subscription name, message_id, publish_time, attributes, and ordering_key to additional columns in the table. The subscription name, message_id, and publish_time fields are put in their own columns while all other message properties (other than data) are written to a JSON object in the attributes column.", + "description": "Optional. When true, write the subscription name, message_id, publish_time, attributes, and ordering_key to additional columns in the table. The subscription name, message_id, and publish_time fields are put in their own columns while all other message properties (other than data) are written to a JSON object in the attributes column.", "type": "boolean" } }, @@ -1664,27 +1664,27 @@ "properties": { "avroConfig": { "$ref": "AvroConfig", - "description": "If set, message data will be written to Cloud Storage in Avro format." + "description": "Optional. If set, message data will be written to Cloud Storage in Avro format." }, "bucket": { "description": "Required. User-provided name for the Cloud Storage bucket. The bucket must be created by the user. The bucket name must be without any prefix like \"gs://\". See the [bucket naming requirements] (https://cloud.google.com/storage/docs/buckets#naming).", "type": "string" }, "filenamePrefix": { - "description": "User-provided prefix for Cloud Storage filename. See the [object naming requirements](https://cloud.google.com/storage/docs/objects#naming).", + "description": "Optional. User-provided prefix for Cloud Storage filename. See the [object naming requirements](https://cloud.google.com/storage/docs/objects#naming).", "type": "string" }, "filenameSuffix": { - "description": "User-provided suffix for Cloud Storage filename. See the [object naming requirements](https://cloud.google.com/storage/docs/objects#naming).", + "description": "Optional. User-provided suffix for Cloud Storage filename. See the [object naming requirements](https://cloud.google.com/storage/docs/objects#naming).", "type": "string" }, "maxBytes": { - "description": "The maximum bytes that can be written to a Cloud Storage file before a new file is created. Min 1 KB, max 10 GiB. The max_bytes limit may be exceeded in cases where messages are larger than the limit.", + "description": "Optional. The maximum bytes that can be written to a Cloud Storage file before a new file is created. Min 1 KB, max 10 GiB. The max_bytes limit may be exceeded in cases where messages are larger than the limit.", "format": "int64", "type": "string" }, "maxDuration": { - "description": "The maximum duration that can elapse before a new Cloud Storage file is created. Min 1 minute, max 10 minutes, default 5 minutes. May not exceed the subscription's acknowledgement deadline.", + "description": "Optional. The maximum duration that can elapse before a new Cloud Storage file is created. Min 1 minute, max 10 minutes, default 5 minutes. May not exceed the subscription's acknowledgement deadline.", "format": "google-duration", "type": "string" }, @@ -1707,7 +1707,7 @@ }, "textConfig": { "$ref": "TextConfig", - "description": "If set, message data will be written to Cloud Storage in text format." + "description": "Optional. If set, message data will be written to Cloud Storage in text format." } }, "type": "object" @@ -1731,7 +1731,7 @@ "additionalProperties": { "type": "string" }, - "description": "See [Creating and managing labels](https://cloud.google.com/pubsub/docs/labels).", + "description": "Optional. See [Creating and managing labels](https://cloud.google.com/pubsub/docs/labels).", "type": "object" }, "subscription": { @@ -1746,11 +1746,11 @@ "id": "DeadLetterPolicy", "properties": { "deadLetterTopic": { - "description": "The name of the topic to which dead letter messages should be published. Format is `projects/{project}/topics/{topic}`.The Cloud Pub/Sub service account associated with the enclosing subscription's parent project (i.e., service-{project_number}@gcp-sa-pubsub.iam.gserviceaccount.com) must have permission to Publish() to this topic. The operation will fail if the topic does not exist. Users should ensure that there is a subscription attached to this topic since messages published to a topic with no subscriptions are lost.", + "description": "Optional. The name of the topic to which dead letter messages should be published. Format is `projects/{project}/topics/{topic}`.The Pub/Sub service account associated with the enclosing subscription's parent project (i.e., service-{project_number}@gcp-sa-pubsub.iam.gserviceaccount.com) must have permission to Publish() to this topic. The operation will fail if the topic does not exist. Users should ensure that there is a subscription attached to this topic since messages published to a topic with no subscriptions are lost.", "type": "string" }, "maxDeliveryAttempts": { - "description": "The maximum number of delivery attempts for any message. The value must be between 5 and 100. The number of delivery attempts is defined as 1 + (the sum of number of NACKs and number of times the acknowledgement deadline has been exceeded for the message). A NACK is any call to ModifyAckDeadline with a 0 deadline. Note that client libraries may automatically extend ack_deadlines. This field will be honored on a best effort basis. If this parameter is 0, a default value of 5 is used.", + "description": "Optional. The maximum number of delivery attempts for any message. The value must be between 5 and 100. The number of delivery attempts is defined as 1 + (the sum of number of NACKs and number of times the acknowledgement deadline has been exceeded for the message). A NACK is any call to ModifyAckDeadline with a 0 deadline. Note that client libraries may automatically extend ack_deadlines. This field will be honored on a best effort basis. If this parameter is 0, a default value of 5 is used.", "format": "int32", "type": "integer" } @@ -1774,7 +1774,7 @@ "id": "ExpirationPolicy", "properties": { "ttl": { - "description": "Specifies the \"time-to-live\" duration for an associated resource. The resource expires if it is not active for a period of `ttl`. The definition of \"activity\" depends on the type of the associated resource. The minimum and maximum allowed values for `ttl` depend on the type of the associated resource, as well. If `ttl` is not set, the associated resource never expires.", + "description": "Optional. Specifies the \"time-to-live\" duration for an associated resource. The resource expires if it is not active for a period of `ttl`. The definition of \"activity\" depends on the type of the associated resource. The minimum and maximum allowed values for `ttl` depend on the type of the associated resource, as well. If `ttl` is not set, the associated resource never expires.", "format": "google-duration", "type": "string" } @@ -1845,11 +1845,11 @@ "id": "ListSnapshotsResponse", "properties": { "nextPageToken": { - "description": "If not empty, indicates that there may be more snapshot that match the request; this value should be passed in a new `ListSnapshotsRequest`.", + "description": "Optional. If not empty, indicates that there may be more snapshot that match the request; this value should be passed in a new `ListSnapshotsRequest`.", "type": "string" }, "snapshots": { - "description": "The resulting snapshots.", + "description": "Optional. The resulting snapshots.", "items": { "$ref": "Snapshot" }, @@ -1863,11 +1863,11 @@ "id": "ListSubscriptionsResponse", "properties": { "nextPageToken": { - "description": "If not empty, indicates that there may be more subscriptions that match the request; this value should be passed in a new `ListSubscriptionsRequest` to get more subscriptions.", + "description": "Optional. If not empty, indicates that there may be more subscriptions that match the request; this value should be passed in a new `ListSubscriptionsRequest` to get more subscriptions.", "type": "string" }, "subscriptions": { - "description": "The subscriptions that match the request.", + "description": "Optional. The subscriptions that match the request.", "items": { "$ref": "Subscription" }, @@ -1881,11 +1881,11 @@ "id": "ListTopicSnapshotsResponse", "properties": { "nextPageToken": { - "description": "If not empty, indicates that there may be more snapshots that match the request; this value should be passed in a new `ListTopicSnapshotsRequest` to get more snapshots.", + "description": "Optional. If not empty, indicates that there may be more snapshots that match the request; this value should be passed in a new `ListTopicSnapshotsRequest` to get more snapshots.", "type": "string" }, "snapshots": { - "description": "The names of the snapshots that match the request.", + "description": "Optional. The names of the snapshots that match the request.", "items": { "type": "string" }, @@ -1899,11 +1899,11 @@ "id": "ListTopicSubscriptionsResponse", "properties": { "nextPageToken": { - "description": "If not empty, indicates that there may be more subscriptions that match the request; this value should be passed in a new `ListTopicSubscriptionsRequest` to get more subscriptions.", + "description": "Optional. If not empty, indicates that there may be more subscriptions that match the request; this value should be passed in a new `ListTopicSubscriptionsRequest` to get more subscriptions.", "type": "string" }, "subscriptions": { - "description": "The names of subscriptions attached to the topic specified in the request.", + "description": "Optional. The names of subscriptions attached to the topic specified in the request.", "items": { "type": "string" }, @@ -1917,11 +1917,11 @@ "id": "ListTopicsResponse", "properties": { "nextPageToken": { - "description": "If not empty, indicates that there may be more topics that match the request; this value should be passed in a new `ListTopicsRequest`.", + "description": "Optional. If not empty, indicates that there may be more topics that match the request; this value should be passed in a new `ListTopicsRequest`.", "type": "string" }, "topics": { - "description": "The resulting topics.", + "description": "Optional. The resulting topics.", "items": { "$ref": "Topic" }, @@ -1935,7 +1935,7 @@ "id": "MessageStoragePolicy", "properties": { "allowedPersistenceRegions": { - "description": "A list of IDs of GCP regions where messages that are published to the topic may be persisted in storage. Messages published by publishers running in non-allowed GCP regions (or running outside of GCP altogether) will be routed for storage in one of the allowed regions. An empty list means that no regions are allowed, and is not a valid configuration.", + "description": "Optional. A list of IDs of GCP regions where messages that are published to the topic may be persisted in storage. Messages published by publishers running in non-allowed GCP regions (or running outside of GCP altogether) will be routed for storage in one of the allowed regions. An empty list means that no regions are allowed, and is not a valid configuration.", "items": { "type": "string" }, @@ -1979,7 +1979,7 @@ "id": "NoWrapper", "properties": { "writeMetadata": { - "description": "When true, writes the Pub/Sub message metadata to `x-goog-pubsub-:` headers of the HTTP request. Writes the Pub/Sub message attributes to `:` headers of the HTTP request.", + "description": "Optional. When true, writes the Pub/Sub message metadata to `x-goog-pubsub-:` headers of the HTTP request. Writes the Pub/Sub message attributes to `:` headers of the HTTP request.", "type": "boolean" } }, @@ -1990,11 +1990,11 @@ "id": "OidcToken", "properties": { "audience": { - "description": "Audience to be used when generating OIDC token. The audience claim identifies the recipients that the JWT is intended for. The audience value is a single case-sensitive string. Having multiple values (array) for the audience field is not supported. More info about the OIDC JWT token audience here: https://tools.ietf.org/html/rfc7519#section-4.1.3 Note: if not specified, the Push endpoint URL will be used.", + "description": "Optional. Audience to be used when generating OIDC token. The audience claim identifies the recipients that the JWT is intended for. The audience value is a single case-sensitive string. Having multiple values (array) for the audience field is not supported. More info about the OIDC JWT token audience here: https://tools.ietf.org/html/rfc7519#section-4.1.3 Note: if not specified, the Push endpoint URL will be used.", "type": "string" }, "serviceAccountEmail": { - "description": "[Service account email](https://cloud.google.com/iam/docs/service-accounts) used for generating the OIDC token. For more information on setting up authentication, see [Push subscriptions](https://cloud.google.com/pubsub/docs/push).", + "description": "Optional. [Service account email](https://cloud.google.com/iam/docs/service-accounts) used for generating the OIDC token. For more information on setting up authentication, see [Push subscriptions](https://cloud.google.com/pubsub/docs/push).", "type": "string" } }, @@ -2043,7 +2043,7 @@ "id": "PublishResponse", "properties": { "messageIds": { - "description": "The server-assigned ID of each published message, in the same order as the messages in the request. IDs are guaranteed to be unique within the topic.", + "description": "Optional. The server-assigned ID of each published message, in the same order as the messages in the request. IDs are guaranteed to be unique within the topic.", "items": { "type": "string" }, @@ -2060,24 +2060,24 @@ "additionalProperties": { "type": "string" }, - "description": "Attributes for this message. If this field is empty, the message must contain non-empty data. This can be used to filter messages on the subscription.", + "description": "Optional. Attributes for this message. If this field is empty, the message must contain non-empty data. This can be used to filter messages on the subscription.", "type": "object" }, "data": { - "description": "The message data field. If this field is empty, the message must contain at least one attribute.", + "description": "Optional. The message data field. If this field is empty, the message must contain at least one attribute.", "format": "byte", "type": "string" }, "messageId": { - "description": "ID of this message, assigned by the server when the message is published. Guaranteed to be unique within the topic. This value may be read by a subscriber that receives a `PubsubMessage` via a `Pull` call or a push delivery. It must not be populated by the publisher in a `Publish` call.", + "description": "Optional. ID of this message, assigned by the server when the message is published. Guaranteed to be unique within the topic. This value may be read by a subscriber that receives a `PubsubMessage` via a `Pull` call or a push delivery. It must not be populated by the publisher in a `Publish` call.", "type": "string" }, "orderingKey": { - "description": "If non-empty, identifies related messages for which publish order should be respected. If a `Subscription` has `enable_message_ordering` set to `true`, messages published with the same non-empty `ordering_key` value will be delivered to subscribers in the order in which they are received by the Pub/Sub system. All `PubsubMessage`s published in a given `PublishRequest` must specify the same `ordering_key` value. For more information, see [ordering messages](https://cloud.google.com/pubsub/docs/ordering).", + "description": "Optional. If non-empty, identifies related messages for which publish order should be respected. If a `Subscription` has `enable_message_ordering` set to `true`, messages published with the same non-empty `ordering_key` value will be delivered to subscribers in the order in which they are received by the Pub/Sub system. All `PubsubMessage`s published in a given `PublishRequest` must specify the same `ordering_key` value. For more information, see [ordering messages](https://cloud.google.com/pubsub/docs/ordering).", "type": "string" }, "publishTime": { - "description": "The time at which the message was published, populated by the server when it receives the `Publish` call. It must not be populated by the publisher in a `Publish` call.", + "description": "Optional. The time at which the message was published, populated by the server when it receives the `Publish` call. It must not be populated by the publisher in a `Publish` call.", "format": "google-datetime", "type": "string" } @@ -2111,7 +2111,7 @@ "id": "PullResponse", "properties": { "receivedMessages": { - "description": "Received Pub/Sub messages. The list will be empty if there are no more messages available in the backlog, or if no messages could be returned before the request timeout. For JSON, the response can be entirely empty. The Pub/Sub system may return fewer than the `maxMessages` requested even if there are more messages available in the backlog.", + "description": "Optional. Received Pub/Sub messages. The list will be empty if there are no more messages available in the backlog, or if no messages could be returned before the request timeout. For JSON, the response can be entirely empty. The Pub/Sub system may return fewer than the `maxMessages` requested even if there are more messages available in the backlog.", "items": { "$ref": "ReceivedMessage" }, @@ -2128,23 +2128,23 @@ "additionalProperties": { "type": "string" }, - "description": "Endpoint configuration attributes that can be used to control different aspects of the message delivery. The only currently supported attribute is `x-goog-version`, which you can use to change the format of the pushed message. This attribute indicates the version of the data expected by the endpoint. This controls the shape of the pushed message (i.e., its fields and metadata). If not present during the `CreateSubscription` call, it will default to the version of the Pub/Sub API used to make such call. If not present in a `ModifyPushConfig` call, its value will not be changed. `GetSubscription` calls will always return a valid version, even if the subscription was created without this attribute. The only supported values for the `x-goog-version` attribute are: * `v1beta1`: uses the push format defined in the v1beta1 Pub/Sub API. * `v1` or `v1beta2`: uses the push format defined in the v1 Pub/Sub API. For example: `attributes { \"x-goog-version\": \"v1\" }`", + "description": "Optional. Endpoint configuration attributes that can be used to control different aspects of the message delivery. The only currently supported attribute is `x-goog-version`, which you can use to change the format of the pushed message. This attribute indicates the version of the data expected by the endpoint. This controls the shape of the pushed message (i.e., its fields and metadata). If not present during the `CreateSubscription` call, it will default to the version of the Pub/Sub API used to make such call. If not present in a `ModifyPushConfig` call, its value will not be changed. `GetSubscription` calls will always return a valid version, even if the subscription was created without this attribute. The only supported values for the `x-goog-version` attribute are: * `v1beta1`: uses the push format defined in the v1beta1 Pub/Sub API. * `v1` or `v1beta2`: uses the push format defined in the v1 Pub/Sub API. For example: `attributes { \"x-goog-version\": \"v1\" }`", "type": "object" }, "noWrapper": { "$ref": "NoWrapper", - "description": "When set, the payload to the push endpoint is not wrapped." + "description": "Optional. When set, the payload to the push endpoint is not wrapped." }, "oidcToken": { "$ref": "OidcToken", - "description": "If specified, Pub/Sub will generate and attach an OIDC JWT token as an `Authorization` header in the HTTP request for every pushed message." + "description": "Optional. If specified, Pub/Sub will generate and attach an OIDC JWT token as an `Authorization` header in the HTTP request for every pushed message." }, "pubsubWrapper": { "$ref": "PubsubWrapper", - "description": "When set, the payload to the push endpoint is in the form of the JSON representation of a PubsubMessage (https://cloud.google.com/pubsub/docs/reference/rpc/google.pubsub.v1#pubsubmessage)." + "description": "Optional. When set, the payload to the push endpoint is in the form of the JSON representation of a PubsubMessage (https://cloud.google.com/pubsub/docs/reference/rpc/google.pubsub.v1#pubsubmessage)." }, "pushEndpoint": { - "description": "A URL locating the endpoint to which messages should be pushed. For example, a Webhook endpoint might use `https://example.com/push`.", + "description": "Optional. A URL locating the endpoint to which messages should be pushed. For example, a Webhook endpoint might use `https://example.com/push`.", "type": "string" } }, @@ -2155,32 +2155,32 @@ "id": "ReceivedMessage", "properties": { "ackId": { - "description": "This ID can be used to acknowledge the received message.", + "description": "Optional. This ID can be used to acknowledge the received message.", "type": "string" }, "deliveryAttempt": { - "description": "The approximate number of times that Cloud Pub/Sub has attempted to deliver the associated message to a subscriber. More precisely, this is 1 + (number of NACKs) + (number of ack_deadline exceeds) for this message. A NACK is any call to ModifyAckDeadline with a 0 deadline. An ack_deadline exceeds event is whenever a message is not acknowledged within ack_deadline. Note that ack_deadline is initially Subscription.ackDeadlineSeconds, but may get extended automatically by the client library. Upon the first delivery of a given message, `delivery_attempt` will have a value of 1. The value is calculated at best effort and is approximate. If a DeadLetterPolicy is not set on the subscription, this will be 0.", + "description": "Optional. The approximate number of times that Pub/Sub has attempted to deliver the associated message to a subscriber. More precisely, this is 1 + (number of NACKs) + (number of ack_deadline exceeds) for this message. A NACK is any call to ModifyAckDeadline with a 0 deadline. An ack_deadline exceeds event is whenever a message is not acknowledged within ack_deadline. Note that ack_deadline is initially Subscription.ackDeadlineSeconds, but may get extended automatically by the client library. Upon the first delivery of a given message, `delivery_attempt` will have a value of 1. The value is calculated at best effort and is approximate. If a DeadLetterPolicy is not set on the subscription, this will be 0.", "format": "int32", "type": "integer" }, "message": { "$ref": "PubsubMessage", - "description": "The message." + "description": "Optional. The message." } }, "type": "object" }, "RetryPolicy": { - "description": "A policy that specifies how Cloud Pub/Sub retries message delivery. Retry delay will be exponential based on provided minimum and maximum backoffs. https://en.wikipedia.org/wiki/Exponential_backoff. RetryPolicy will be triggered on NACKs or acknowledgement deadline exceeded events for a given message. Retry Policy is implemented on a best effort basis. At times, the delay between consecutive deliveries may not match the configuration. That is, delay can be more or less than configured backoff.", + "description": "A policy that specifies how Pub/Sub retries message delivery. Retry delay will be exponential based on provided minimum and maximum backoffs. https://en.wikipedia.org/wiki/Exponential_backoff. RetryPolicy will be triggered on NACKs or acknowledgement deadline exceeded events for a given message. Retry Policy is implemented on a best effort basis. At times, the delay between consecutive deliveries may not match the configuration. That is, delay can be more or less than configured backoff.", "id": "RetryPolicy", "properties": { "maximumBackoff": { - "description": "The maximum delay between consecutive deliveries of a given message. Value should be between 0 and 600 seconds. Defaults to 600 seconds.", + "description": "Optional. The maximum delay between consecutive deliveries of a given message. Value should be between 0 and 600 seconds. Defaults to 600 seconds.", "format": "google-duration", "type": "string" }, "minimumBackoff": { - "description": "The minimum delay between consecutive deliveries of a given message. Value should be between 0 and 600 seconds. Defaults to 10 seconds.", + "description": "Optional. The minimum delay between consecutive deliveries of a given message. Value should be between 0 and 600 seconds. Defaults to 10 seconds.", "format": "google-duration", "type": "string" } @@ -2243,7 +2243,7 @@ "id": "SchemaSettings", "properties": { "encoding": { - "description": "The encoding of messages validated against `schema`.", + "description": "Optional. The encoding of messages validated against `schema`.", "enum": [ "ENCODING_UNSPECIFIED", "JSON", @@ -2257,11 +2257,11 @@ "type": "string" }, "firstRevisionId": { - "description": "The minimum (inclusive) revision allowed for validating messages. If empty or not present, allow any revision to be validated against last_revision or any revision created before.", + "description": "Optional. The minimum (inclusive) revision allowed for validating messages. If empty or not present, allow any revision to be validated against last_revision or any revision created before.", "type": "string" }, "lastRevisionId": { - "description": "The maximum (inclusive) revision allowed for validating messages. If empty or not present, allow any revision to be validated against first_revision or any revision created after.", + "description": "Optional. The maximum (inclusive) revision allowed for validating messages. If empty or not present, allow any revision to be validated against first_revision or any revision created after.", "type": "string" }, "schema": { @@ -2276,11 +2276,11 @@ "id": "SeekRequest", "properties": { "snapshot": { - "description": "The snapshot to seek to. The snapshot's topic must be the same as that of the provided subscription. Format is `projects/{project}/snapshots/{snap}`.", + "description": "Optional. The snapshot to seek to. The snapshot's topic must be the same as that of the provided subscription. Format is `projects/{project}/snapshots/{snap}`.", "type": "string" }, "time": { - "description": "The time to seek to. Messages retained in the subscription that were published before this time are marked as acknowledged, and messages retained in the subscription that were published after this time are marked as unacknowledged. Note that this operation affects only those messages retained in the subscription (configured by the combination of `message_retention_duration` and `retain_acked_messages`). For example, if `time` corresponds to a point before the message retention window (or to a point before the system's notion of the subscription creation time), only retained messages will be marked as unacknowledged, and already-expunged messages will not be restored.", + "description": "Optional. The time to seek to. Messages retained in the subscription that were published before this time are marked as acknowledged, and messages retained in the subscription that were published after this time are marked as unacknowledged. Note that this operation affects only those messages retained in the subscription (configured by the combination of `message_retention_duration` and `retain_acked_messages`). For example, if `time` corresponds to a point before the message retention window (or to a point before the system's notion of the subscription creation time), only retained messages will be marked as unacknowledged, and already-expunged messages will not be restored.", "format": "google-datetime", "type": "string" } @@ -2309,7 +2309,7 @@ "id": "Snapshot", "properties": { "expireTime": { - "description": "The snapshot is guaranteed to exist up until this time. A newly-created snapshot expires no later than 7 days from the time of its creation. Its exact lifetime is determined at creation by the existing backlog in the source subscription. Specifically, the lifetime of the snapshot is `7 days - (age of oldest unacked message in the subscription)`. For example, consider a subscription whose oldest unacked message is 3 days old. If a snapshot is created from this subscription, the snapshot -- which will always capture this 3-day-old backlog as long as the snapshot exists -- will expire in 4 days. The service will refuse to create a snapshot that would expire in less than 1 hour after creation.", + "description": "Optional. The snapshot is guaranteed to exist up until this time. A newly-created snapshot expires no later than 7 days from the time of its creation. Its exact lifetime is determined at creation by the existing backlog in the source subscription. Specifically, the lifetime of the snapshot is `7 days - (age of oldest unacked message in the subscription)`. For example, consider a subscription whose oldest unacked message is 3 days old. If a snapshot is created from this subscription, the snapshot -- which will always capture this 3-day-old backlog as long as the snapshot exists -- will expire in 4 days. The service will refuse to create a snapshot that would expire in less than 1 hour after creation.", "format": "google-datetime", "type": "string" }, @@ -2317,15 +2317,15 @@ "additionalProperties": { "type": "string" }, - "description": "See [Creating and managing labels] (https://cloud.google.com/pubsub/docs/labels).", + "description": "Optional. See [Creating and managing labels] (https://cloud.google.com/pubsub/docs/labels).", "type": "object" }, "name": { - "description": "The name of the snapshot.", + "description": "Optional. The name of the snapshot.", "type": "string" }, "topic": { - "description": "The name of the topic from which this snapshot is retaining messages.", + "description": "Optional. The name of the topic from which this snapshot is retaining messages.", "type": "string" } }, @@ -2336,51 +2336,51 @@ "id": "Subscription", "properties": { "ackDeadlineSeconds": { - "description": "The approximate amount of time (on a best-effort basis) Pub/Sub waits for the subscriber to acknowledge receipt before resending the message. In the interval after the message is delivered and before it is acknowledged, it is considered to be _outstanding_. During that time period, the message will not be redelivered (on a best-effort basis). For pull subscriptions, this value is used as the initial value for the ack deadline. To override this value for a given message, call `ModifyAckDeadline` with the corresponding `ack_id` if using non-streaming pull or send the `ack_id` in a `StreamingModifyAckDeadlineRequest` if using streaming pull. The minimum custom deadline you can specify is 10 seconds. The maximum custom deadline you can specify is 600 seconds (10 minutes). If this parameter is 0, a default value of 10 seconds is used. For push delivery, this value is also used to set the request timeout for the call to the push endpoint. If the subscriber never acknowledges the message, the Pub/Sub system will eventually redeliver the message.", + "description": "Optional. The approximate amount of time (on a best-effort basis) Pub/Sub waits for the subscriber to acknowledge receipt before resending the message. In the interval after the message is delivered and before it is acknowledged, it is considered to be _outstanding_. During that time period, the message will not be redelivered (on a best-effort basis). For pull subscriptions, this value is used as the initial value for the ack deadline. To override this value for a given message, call `ModifyAckDeadline` with the corresponding `ack_id` if using non-streaming pull or send the `ack_id` in a `StreamingModifyAckDeadlineRequest` if using streaming pull. The minimum custom deadline you can specify is 10 seconds. The maximum custom deadline you can specify is 600 seconds (10 minutes). If this parameter is 0, a default value of 10 seconds is used. For push delivery, this value is also used to set the request timeout for the call to the push endpoint. If the subscriber never acknowledges the message, the Pub/Sub system will eventually redeliver the message.", "format": "int32", "type": "integer" }, "bigqueryConfig": { "$ref": "BigQueryConfig", - "description": "If delivery to BigQuery is used with this subscription, this field is used to configure it." + "description": "Optional. If delivery to BigQuery is used with this subscription, this field is used to configure it." }, "cloudStorageConfig": { "$ref": "CloudStorageConfig", - "description": "If delivery to Google Cloud Storage is used with this subscription, this field is used to configure it." + "description": "Optional. If delivery to Google Cloud Storage is used with this subscription, this field is used to configure it." }, "deadLetterPolicy": { "$ref": "DeadLetterPolicy", - "description": "A policy that specifies the conditions for dead lettering messages in this subscription. If dead_letter_policy is not set, dead lettering is disabled. The Cloud Pub/Sub service account associated with this subscriptions's parent project (i.e., service-{project_number}@gcp-sa-pubsub.iam.gserviceaccount.com) must have permission to Acknowledge() messages on this subscription." + "description": "Optional. A policy that specifies the conditions for dead lettering messages in this subscription. If dead_letter_policy is not set, dead lettering is disabled. The Pub/Sub service account associated with this subscriptions's parent project (i.e., service-{project_number}@gcp-sa-pubsub.iam.gserviceaccount.com) must have permission to Acknowledge() messages on this subscription." }, "detached": { - "description": "Indicates whether the subscription is detached from its topic. Detached subscriptions don't receive messages from their topic and don't retain any backlog. `Pull` and `StreamingPull` requests will return FAILED_PRECONDITION. If the subscription is a push subscription, pushes to the endpoint will not be made.", + "description": "Optional. Indicates whether the subscription is detached from its topic. Detached subscriptions don't receive messages from their topic and don't retain any backlog. `Pull` and `StreamingPull` requests will return FAILED_PRECONDITION. If the subscription is a push subscription, pushes to the endpoint will not be made.", "type": "boolean" }, "enableExactlyOnceDelivery": { - "description": "If true, Pub/Sub provides the following guarantees for the delivery of a message with a given value of `message_id` on this subscription: * The message sent to a subscriber is guaranteed not to be resent before the message's acknowledgement deadline expires. * An acknowledged message will not be resent to a subscriber. Note that subscribers may still receive multiple copies of a message when `enable_exactly_once_delivery` is true if the message was published multiple times by a publisher client. These copies are considered distinct by Pub/Sub and have distinct `message_id` values.", + "description": "Optional. If true, Pub/Sub provides the following guarantees for the delivery of a message with a given value of `message_id` on this subscription: * The message sent to a subscriber is guaranteed not to be resent before the message's acknowledgement deadline expires. * An acknowledged message will not be resent to a subscriber. Note that subscribers may still receive multiple copies of a message when `enable_exactly_once_delivery` is true if the message was published multiple times by a publisher client. These copies are considered distinct by Pub/Sub and have distinct `message_id` values.", "type": "boolean" }, "enableMessageOrdering": { - "description": "If true, messages published with the same `ordering_key` in `PubsubMessage` will be delivered to the subscribers in the order in which they are received by the Pub/Sub system. Otherwise, they may be delivered in any order.", + "description": "Optional. If true, messages published with the same `ordering_key` in `PubsubMessage` will be delivered to the subscribers in the order in which they are received by the Pub/Sub system. Otherwise, they may be delivered in any order.", "type": "boolean" }, "expirationPolicy": { "$ref": "ExpirationPolicy", - "description": "A policy that specifies the conditions for this subscription's expiration. A subscription is considered active as long as any connected subscriber is successfully consuming messages from the subscription or is issuing operations on the subscription. If `expiration_policy` is not set, a *default policy* with `ttl` of 31 days will be used. The minimum allowed value for `expiration_policy.ttl` is 1 day. If `expiration_policy` is set, but `expiration_policy.ttl` is not set, the subscription never expires." + "description": "Optional. A policy that specifies the conditions for this subscription's expiration. A subscription is considered active as long as any connected subscriber is successfully consuming messages from the subscription or is issuing operations on the subscription. If `expiration_policy` is not set, a *default policy* with `ttl` of 31 days will be used. The minimum allowed value for `expiration_policy.ttl` is 1 day. If `expiration_policy` is set, but `expiration_policy.ttl` is not set, the subscription never expires." }, "filter": { - "description": "An expression written in the Pub/Sub [filter language](https://cloud.google.com/pubsub/docs/filtering). If non-empty, then only `PubsubMessage`s whose `attributes` field matches the filter are delivered on this subscription. If empty, then no messages are filtered out.", + "description": "Optional. An expression written in the Pub/Sub [filter language](https://cloud.google.com/pubsub/docs/filtering). If non-empty, then only `PubsubMessage`s whose `attributes` field matches the filter are delivered on this subscription. If empty, then no messages are filtered out.", "type": "string" }, "labels": { "additionalProperties": { "type": "string" }, - "description": "See [Creating and managing labels](https://cloud.google.com/pubsub/docs/labels).", + "description": "Optional. See [Creating and managing labels](https://cloud.google.com/pubsub/docs/labels).", "type": "object" }, "messageRetentionDuration": { - "description": "How long to retain unacknowledged messages in the subscription's backlog, from the moment a message is published. If `retain_acked_messages` is true, then this also configures the retention of acknowledged messages, and thus configures how far back in time a `Seek` can be done. Defaults to 7 days. Cannot be more than 7 days or less than 10 minutes.", + "description": "Optional. How long to retain unacknowledged messages in the subscription's backlog, from the moment a message is published. If `retain_acked_messages` is true, then this also configures the retention of acknowledged messages, and thus configures how far back in time a `Seek` can be done. Defaults to 7 days. Cannot be more than 7 days or less than 10 minutes.", "format": "google-duration", "type": "string" }, @@ -2390,15 +2390,15 @@ }, "pushConfig": { "$ref": "PushConfig", - "description": "If push delivery is used with this subscription, this field is used to configure it." + "description": "Optional. If push delivery is used with this subscription, this field is used to configure it." }, "retainAckedMessages": { - "description": "Indicates whether to retain acknowledged messages. If true, then messages are not expunged from the subscription's backlog, even if they are acknowledged, until they fall out of the `message_retention_duration` window. This must be true if you would like to [`Seek` to a timestamp] (https://cloud.google.com/pubsub/docs/replay-overview#seek_to_a_time) in the past to replay previously-acknowledged messages.", + "description": "Optional. Indicates whether to retain acknowledged messages. If true, then messages are not expunged from the subscription's backlog, even if they are acknowledged, until they fall out of the `message_retention_duration` window. This must be true if you would like to [`Seek` to a timestamp] (https://cloud.google.com/pubsub/docs/replay-overview#seek_to_a_time) in the past to replay previously-acknowledged messages.", "type": "boolean" }, "retryPolicy": { "$ref": "RetryPolicy", - "description": "A policy that specifies how Pub/Sub retries message delivery for this subscription. If not set, the default retry policy is applied. This generally implies that messages will be retried as soon as possible for healthy subscribers. RetryPolicy will be triggered on NACKs or acknowledgement deadline exceeded events for a given message." + "description": "Optional. A policy that specifies how Pub/Sub retries message delivery for this subscription. If not set, the default retry policy is applied. This generally implies that messages will be retried as soon as possible for healthy subscribers. RetryPolicy will be triggered on NACKs or acknowledgement deadline exceeded events for a given message." }, "state": { "description": "Output only. An output-only field indicating whether or not the subscription can receive messages.", @@ -2467,36 +2467,36 @@ "id": "Topic", "properties": { "kmsKeyName": { - "description": "The resource name of the Cloud KMS CryptoKey to be used to protect access to messages published on this topic. The expected format is `projects/*/locations/*/keyRings/*/cryptoKeys/*`.", + "description": "Optional. The resource name of the Cloud KMS CryptoKey to be used to protect access to messages published on this topic. The expected format is `projects/*/locations/*/keyRings/*/cryptoKeys/*`.", "type": "string" }, "labels": { "additionalProperties": { "type": "string" }, - "description": "See [Creating and managing labels] (https://cloud.google.com/pubsub/docs/labels).", + "description": "Optional. See [Creating and managing labels] (https://cloud.google.com/pubsub/docs/labels).", "type": "object" }, "messageRetentionDuration": { - "description": "Indicates the minimum duration to retain a message after it is published to the topic. If this field is set, messages published to the topic in the last `message_retention_duration` are always available to subscribers. For instance, it allows any attached subscription to [seek to a timestamp](https://cloud.google.com/pubsub/docs/replay-overview#seek_to_a_time) that is up to `message_retention_duration` in the past. If this field is not set, message retention is controlled by settings on individual subscriptions. Cannot be more than 31 days or less than 10 minutes.", + "description": "Optional. Indicates the minimum duration to retain a message after it is published to the topic. If this field is set, messages published to the topic in the last `message_retention_duration` are always available to subscribers. For instance, it allows any attached subscription to [seek to a timestamp](https://cloud.google.com/pubsub/docs/replay-overview#seek_to_a_time) that is up to `message_retention_duration` in the past. If this field is not set, message retention is controlled by settings on individual subscriptions. Cannot be more than 31 days or less than 10 minutes.", "format": "google-duration", "type": "string" }, "messageStoragePolicy": { "$ref": "MessageStoragePolicy", - "description": "Policy constraining the set of Google Cloud Platform regions where messages published to the topic may be stored. If not present, then no constraints are in effect." + "description": "Optional. Policy constraining the set of Google Cloud Platform regions where messages published to the topic may be stored. If not present, then no constraints are in effect." }, "name": { "description": "Required. The name of the topic. It must have the format `\"projects/{project}/topics/{topic}\"`. `{topic}` must start with a letter, and contain only letters (`[A-Za-z]`), numbers (`[0-9]`), dashes (`-`), underscores (`_`), periods (`.`), tildes (`~`), plus (`+`) or percent signs (`%`). It must be between 3 and 255 characters in length, and it must not start with `\"goog\"`.", "type": "string" }, "satisfiesPzs": { - "description": "Reserved for future use. This field is set only in responses from the server; it is ignored if it is set in any requests.", + "description": "Optional. Reserved for future use. This field is set only in responses from the server; it is ignored if it is set in any requests.", "type": "boolean" }, "schemaSettings": { "$ref": "SchemaSettings", - "description": "Settings for validating messages published against a schema." + "description": "Optional. Settings for validating messages published against a schema." } }, "type": "object" diff --git a/pubsub/v1/pubsub-gen.go b/pubsub/v1/pubsub-gen.go index 6646dbf88f5..a0bc0b01132 100644 --- a/pubsub/v1/pubsub-gen.go +++ b/pubsub/v1/pubsub-gen.go @@ -263,9 +263,9 @@ func (s *AcknowledgeRequest) MarshalJSON() ([]byte, error) { // Message payloads and metadata will be written to files as an Avro // binary. type AvroConfig struct { - // WriteMetadata: When true, write the subscription name, message_id, - // publish_time, attributes, and ordering_key as additional fields in - // the output. + // WriteMetadata: Optional. When true, write the subscription name, + // message_id, publish_time, attributes, and ordering_key as additional + // fields in the output. WriteMetadata bool `json:"writeMetadata,omitempty"` // ForceSendFields is a list of field names (e.g. "WriteMetadata") to @@ -293,11 +293,12 @@ func (s *AvroConfig) MarshalJSON() ([]byte, error) { // BigQueryConfig: Configuration for a BigQuery subscription. type BigQueryConfig struct { - // DropUnknownFields: When true and use_topic_schema is true, any fields - // that are a part of the topic schema that are not part of the BigQuery - // table schema are dropped when writing to BigQuery. Otherwise, the - // schemas must be kept in sync and any messages with extra fields are - // not written and remain in the subscription's backlog. + // DropUnknownFields: Optional. When true and use_topic_schema is true, + // any fields that are a part of the topic schema that are not part of + // the BigQuery table schema are dropped when writing to BigQuery. + // Otherwise, the schemas must be kept in sync and any messages with + // extra fields are not written and remain in the subscription's + // backlog. DropUnknownFields bool `json:"dropUnknownFields,omitempty"` // State: Output only. An output-only field that indicates whether or @@ -320,20 +321,20 @@ type BigQueryConfig struct { // schema mismatch. State string `json:"state,omitempty"` - // Table: The name of the table to which to write data, of the form - // {projectId}.{datasetId}.{tableId} + // Table: Optional. The name of the table to which to write data, of the + // form {projectId}.{datasetId}.{tableId} Table string `json:"table,omitempty"` - // UseTopicSchema: When true, use the topic's schema as the columns to - // write to in BigQuery, if it exists. + // UseTopicSchema: Optional. When true, use the topic's schema as the + // columns to write to in BigQuery, if it exists. UseTopicSchema bool `json:"useTopicSchema,omitempty"` - // WriteMetadata: When true, write the subscription name, message_id, - // publish_time, attributes, and ordering_key to additional columns in - // the table. The subscription name, message_id, and publish_time fields - // are put in their own columns while all other message properties - // (other than data) are written to a JSON object in the attributes - // column. + // WriteMetadata: Optional. When true, write the subscription name, + // message_id, publish_time, attributes, and ordering_key to additional + // columns in the table. The subscription name, message_id, and + // publish_time fields are put in their own columns while all other + // message properties (other than data) are written to a JSON object in + // the attributes column. WriteMetadata bool `json:"writeMetadata,omitempty"` // ForceSendFields is a list of field names (e.g. "DropUnknownFields") @@ -440,8 +441,8 @@ func (s *Binding) MarshalJSON() ([]byte, error) { // CloudStorageConfig: Configuration for a Cloud Storage subscription. type CloudStorageConfig struct { - // AvroConfig: If set, message data will be written to Cloud Storage in - // Avro format. + // AvroConfig: Optional. If set, message data will be written to Cloud + // Storage in Avro format. AvroConfig *AvroConfig `json:"avroConfig,omitempty"` // Bucket: Required. User-provided name for the Cloud Storage bucket. @@ -450,25 +451,26 @@ type CloudStorageConfig struct { // (https://cloud.google.com/storage/docs/buckets#naming). Bucket string `json:"bucket,omitempty"` - // FilenamePrefix: User-provided prefix for Cloud Storage filename. See - // the object naming requirements + // FilenamePrefix: Optional. User-provided prefix for Cloud Storage + // filename. See the object naming requirements // (https://cloud.google.com/storage/docs/objects#naming). FilenamePrefix string `json:"filenamePrefix,omitempty"` - // FilenameSuffix: User-provided suffix for Cloud Storage filename. See - // the object naming requirements + // FilenameSuffix: Optional. User-provided suffix for Cloud Storage + // filename. See the object naming requirements // (https://cloud.google.com/storage/docs/objects#naming). FilenameSuffix string `json:"filenameSuffix,omitempty"` - // MaxBytes: The maximum bytes that can be written to a Cloud Storage - // file before a new file is created. Min 1 KB, max 10 GiB. The + // MaxBytes: Optional. The maximum bytes that can be written to a Cloud + // Storage file before a new file is created. Min 1 KB, max 10 GiB. The // max_bytes limit may be exceeded in cases where messages are larger // than the limit. MaxBytes int64 `json:"maxBytes,omitempty,string"` - // MaxDuration: The maximum duration that can elapse before a new Cloud - // Storage file is created. Min 1 minute, max 10 minutes, default 5 - // minutes. May not exceed the subscription's acknowledgement deadline. + // MaxDuration: Optional. The maximum duration that can elapse before a + // new Cloud Storage file is created. Min 1 minute, max 10 minutes, + // default 5 minutes. May not exceed the subscription's acknowledgement + // deadline. MaxDuration string `json:"maxDuration,omitempty"` // State: Output only. An output-only field that indicates whether or @@ -484,8 +486,8 @@ type CloudStorageConfig struct { // does not exist. State string `json:"state,omitempty"` - // TextConfig: If set, message data will be written to Cloud Storage in - // text format. + // TextConfig: Optional. If set, message data will be written to Cloud + // Storage in text format. TextConfig *TextConfig `json:"textConfig,omitempty"` // ForceSendFields is a list of field names (e.g. "AvroConfig") to @@ -541,7 +543,7 @@ func (s *CommitSchemaRequest) MarshalJSON() ([]byte, error) { // CreateSnapshotRequest: Request for the `CreateSnapshot` method. type CreateSnapshotRequest struct { - // Labels: See Creating and managing labels + // Labels: Optional. See Creating and managing labels // (https://cloud.google.com/pubsub/docs/labels). Labels map[string]string `json:"labels,omitempty"` @@ -583,9 +585,9 @@ func (s *CreateSnapshotRequest) MarshalJSON() ([]byte, error) { // any of the fields fails at subscription creation/updation, the // create/update subscription request will fail. type DeadLetterPolicy struct { - // DeadLetterTopic: The name of the topic to which dead letter messages - // should be published. Format is - // `projects/{project}/topics/{topic}`.The Cloud Pub/Sub service account + // DeadLetterTopic: Optional. The name of the topic to which dead letter + // messages should be published. Format is + // `projects/{project}/topics/{topic}`.The Pub/Sub service account // associated with the enclosing subscription's parent project (i.e., // service-{project_number}@gcp-sa-pubsub.iam.gserviceaccount.com) must // have permission to Publish() to this topic. The operation will fail @@ -594,14 +596,14 @@ type DeadLetterPolicy struct { // topic with no subscriptions are lost. DeadLetterTopic string `json:"deadLetterTopic,omitempty"` - // MaxDeliveryAttempts: The maximum number of delivery attempts for any - // message. The value must be between 5 and 100. The number of delivery - // attempts is defined as 1 + (the sum of number of NACKs and number of - // times the acknowledgement deadline has been exceeded for the - // message). A NACK is any call to ModifyAckDeadline with a 0 deadline. - // Note that client libraries may automatically extend ack_deadlines. - // This field will be honored on a best effort basis. If this parameter - // is 0, a default value of 5 is used. + // MaxDeliveryAttempts: Optional. The maximum number of delivery + // attempts for any message. The value must be between 5 and 100. The + // number of delivery attempts is defined as 1 + (the sum of number of + // NACKs and number of times the acknowledgement deadline has been + // exceeded for the message). A NACK is any call to ModifyAckDeadline + // with a 0 deadline. Note that client libraries may automatically + // extend ack_deadlines. This field will be honored on a best effort + // basis. If this parameter is 0, a default value of 5 is used. MaxDeliveryAttempts int64 `json:"maxDeliveryAttempts,omitempty"` // ForceSendFields is a list of field names (e.g. "DeadLetterTopic") to @@ -650,12 +652,12 @@ type Empty struct { // ExpirationPolicy: A policy that specifies the conditions for resource // expiration (i.e., automatic resource deletion). type ExpirationPolicy struct { - // Ttl: Specifies the "time-to-live" duration for an associated - // resource. The resource expires if it is not active for a period of - // `ttl`. The definition of "activity" depends on the type of the - // associated resource. The minimum and maximum allowed values for `ttl` - // depend on the type of the associated resource, as well. If `ttl` is - // not set, the associated resource never expires. + // Ttl: Optional. Specifies the "time-to-live" duration for an + // associated resource. The resource expires if it is not active for a + // period of `ttl`. The definition of "activity" depends on the type of + // the associated resource. The minimum and maximum allowed values for + // `ttl` depend on the type of the associated resource, as well. If + // `ttl` is not set, the associated resource never expires. Ttl string `json:"ttl,omitempty"` // ForceSendFields is a list of field names (e.g. "Ttl") to @@ -817,12 +819,12 @@ func (s *ListSchemasResponse) MarshalJSON() ([]byte, error) { // ListSnapshotsResponse: Response for the `ListSnapshots` method. type ListSnapshotsResponse struct { - // NextPageToken: If not empty, indicates that there may be more - // snapshot that match the request; this value should be passed in a new - // `ListSnapshotsRequest`. + // NextPageToken: Optional. If not empty, indicates that there may be + // more snapshot that match the request; this value should be passed in + // a new `ListSnapshotsRequest`. NextPageToken string `json:"nextPageToken,omitempty"` - // Snapshots: The resulting snapshots. + // Snapshots: Optional. The resulting snapshots. Snapshots []*Snapshot `json:"snapshots,omitempty"` // ServerResponse contains the HTTP response code and headers from the @@ -855,12 +857,12 @@ func (s *ListSnapshotsResponse) MarshalJSON() ([]byte, error) { // ListSubscriptionsResponse: Response for the `ListSubscriptions` // method. type ListSubscriptionsResponse struct { - // NextPageToken: If not empty, indicates that there may be more - // subscriptions that match the request; this value should be passed in - // a new `ListSubscriptionsRequest` to get more subscriptions. + // NextPageToken: Optional. If not empty, indicates that there may be + // more subscriptions that match the request; this value should be + // passed in a new `ListSubscriptionsRequest` to get more subscriptions. NextPageToken string `json:"nextPageToken,omitempty"` - // Subscriptions: The subscriptions that match the request. + // Subscriptions: Optional. The subscriptions that match the request. Subscriptions []*Subscription `json:"subscriptions,omitempty"` // ServerResponse contains the HTTP response code and headers from the @@ -893,12 +895,13 @@ func (s *ListSubscriptionsResponse) MarshalJSON() ([]byte, error) { // ListTopicSnapshotsResponse: Response for the `ListTopicSnapshots` // method. type ListTopicSnapshotsResponse struct { - // NextPageToken: If not empty, indicates that there may be more - // snapshots that match the request; this value should be passed in a - // new `ListTopicSnapshotsRequest` to get more snapshots. + // NextPageToken: Optional. If not empty, indicates that there may be + // more snapshots that match the request; this value should be passed in + // a new `ListTopicSnapshotsRequest` to get more snapshots. NextPageToken string `json:"nextPageToken,omitempty"` - // Snapshots: The names of the snapshots that match the request. + // Snapshots: Optional. The names of the snapshots that match the + // request. Snapshots []string `json:"snapshots,omitempty"` // ServerResponse contains the HTTP response code and headers from the @@ -931,13 +934,14 @@ func (s *ListTopicSnapshotsResponse) MarshalJSON() ([]byte, error) { // ListTopicSubscriptionsResponse: Response for the // `ListTopicSubscriptions` method. type ListTopicSubscriptionsResponse struct { - // NextPageToken: If not empty, indicates that there may be more - // subscriptions that match the request; this value should be passed in - // a new `ListTopicSubscriptionsRequest` to get more subscriptions. + // NextPageToken: Optional. If not empty, indicates that there may be + // more subscriptions that match the request; this value should be + // passed in a new `ListTopicSubscriptionsRequest` to get more + // subscriptions. NextPageToken string `json:"nextPageToken,omitempty"` - // Subscriptions: The names of subscriptions attached to the topic - // specified in the request. + // Subscriptions: Optional. The names of subscriptions attached to the + // topic specified in the request. Subscriptions []string `json:"subscriptions,omitempty"` // ServerResponse contains the HTTP response code and headers from the @@ -969,12 +973,12 @@ func (s *ListTopicSubscriptionsResponse) MarshalJSON() ([]byte, error) { // ListTopicsResponse: Response for the `ListTopics` method. type ListTopicsResponse struct { - // NextPageToken: If not empty, indicates that there may be more topics - // that match the request; this value should be passed in a new - // `ListTopicsRequest`. + // NextPageToken: Optional. If not empty, indicates that there may be + // more topics that match the request; this value should be passed in a + // new `ListTopicsRequest`. NextPageToken string `json:"nextPageToken,omitempty"` - // Topics: The resulting topics. + // Topics: Optional. The resulting topics. Topics []*Topic `json:"topics,omitempty"` // ServerResponse contains the HTTP response code and headers from the @@ -1007,12 +1011,12 @@ func (s *ListTopicsResponse) MarshalJSON() ([]byte, error) { // MessageStoragePolicy: A policy constraining the storage of messages // published to the topic. type MessageStoragePolicy struct { - // AllowedPersistenceRegions: A list of IDs of GCP regions where - // messages that are published to the topic may be persisted in storage. - // Messages published by publishers running in non-allowed GCP regions - // (or running outside of GCP altogether) will be routed for storage in - // one of the allowed regions. An empty list means that no regions are - // allowed, and is not a valid configuration. + // AllowedPersistenceRegions: Optional. A list of IDs of GCP regions + // where messages that are published to the topic may be persisted in + // storage. Messages published by publishers running in non-allowed GCP + // regions (or running outside of GCP altogether) will be routed for + // storage in one of the allowed regions. An empty list means that no + // regions are allowed, and is not a valid configuration. AllowedPersistenceRegions []string `json:"allowedPersistenceRegions,omitempty"` // ForceSendFields is a list of field names (e.g. @@ -1114,9 +1118,9 @@ func (s *ModifyPushConfigRequest) MarshalJSON() ([]byte, error) { // NoWrapper: Sets the `data` field as the HTTP body for delivery. type NoWrapper struct { - // WriteMetadata: When true, writes the Pub/Sub message metadata to - // `x-goog-pubsub-:` headers of the HTTP request. Writes the Pub/Sub - // message attributes to `:` headers of the HTTP request. + // WriteMetadata: Optional. When true, writes the Pub/Sub message + // metadata to `x-goog-pubsub-:` headers of the HTTP request. Writes the + // Pub/Sub message attributes to `:` headers of the HTTP request. WriteMetadata bool `json:"writeMetadata,omitempty"` // ForceSendFields is a list of field names (e.g. "WriteMetadata") to @@ -1146,8 +1150,8 @@ func (s *NoWrapper) MarshalJSON() ([]byte, error) { // Connect token // (https://developers.google.com/identity/protocols/OpenIDConnect). type OidcToken struct { - // Audience: Audience to be used when generating OIDC token. The - // audience claim identifies the recipients that the JWT is intended + // Audience: Optional. Audience to be used when generating OIDC token. + // The audience claim identifies the recipients that the JWT is intended // for. The audience value is a single case-sensitive string. Having // multiple values (array) for the audience field is not supported. More // info about the OIDC JWT token audience here: @@ -1155,7 +1159,7 @@ type OidcToken struct { // specified, the Push endpoint URL will be used. Audience string `json:"audience,omitempty"` - // ServiceAccountEmail: Service account email + // ServiceAccountEmail: Optional. Service account email // (https://cloud.google.com/iam/docs/service-accounts) used for // generating the OIDC token. For more information on setting up // authentication, see Push subscriptions @@ -1321,9 +1325,9 @@ func (s *PublishRequest) MarshalJSON() ([]byte, error) { // PublishResponse: Response for the `Publish` method. type PublishResponse struct { - // MessageIds: The server-assigned ID of each published message, in the - // same order as the messages in the request. IDs are guaranteed to be - // unique within the topic. + // MessageIds: Optional. The server-assigned ID of each published + // message, in the same order as the messages in the request. IDs are + // guaranteed to be unique within the topic. MessageIds []string `json:"messageIds,omitempty"` // ServerResponse contains the HTTP response code and headers from the @@ -1363,24 +1367,24 @@ func (s *PublishResponse) MarshalJSON() ([]byte, error) { // (https://cloud.google.com/pubsub/quotas) for more information about // message limits. type PubsubMessage struct { - // Attributes: Attributes for this message. If this field is empty, the - // message must contain non-empty data. This can be used to filter - // messages on the subscription. + // Attributes: Optional. Attributes for this message. If this field is + // empty, the message must contain non-empty data. This can be used to + // filter messages on the subscription. Attributes map[string]string `json:"attributes,omitempty"` - // Data: The message data field. If this field is empty, the message - // must contain at least one attribute. + // Data: Optional. The message data field. If this field is empty, the + // message must contain at least one attribute. Data string `json:"data,omitempty"` - // MessageId: ID of this message, assigned by the server when the - // message is published. Guaranteed to be unique within the topic. This - // value may be read by a subscriber that receives a `PubsubMessage` via - // a `Pull` call or a push delivery. It must not be populated by the - // publisher in a `Publish` call. + // MessageId: Optional. ID of this message, assigned by the server when + // the message is published. Guaranteed to be unique within the topic. + // This value may be read by a subscriber that receives a + // `PubsubMessage` via a `Pull` call or a push delivery. It must not be + // populated by the publisher in a `Publish` call. MessageId string `json:"messageId,omitempty"` - // OrderingKey: If non-empty, identifies related messages for which - // publish order should be respected. If a `Subscription` has + // OrderingKey: Optional. If non-empty, identifies related messages for + // which publish order should be respected. If a `Subscription` has // `enable_message_ordering` set to `true`, messages published with the // same non-empty `ordering_key` value will be delivered to subscribers // in the order in which they are received by the Pub/Sub system. All @@ -1389,9 +1393,9 @@ type PubsubMessage struct { // messages (https://cloud.google.com/pubsub/docs/ordering). OrderingKey string `json:"orderingKey,omitempty"` - // PublishTime: The time at which the message was published, populated - // by the server when it receives the `Publish` call. It must not be - // populated by the publisher in a `Publish` call. + // PublishTime: Optional. The time at which the message was published, + // populated by the server when it receives the `Publish` call. It must + // not be populated by the publisher in a `Publish` call. PublishTime string `json:"publishTime,omitempty"` // ForceSendFields is a list of field names (e.g. "Attributes") to @@ -1464,12 +1468,12 @@ func (s *PullRequest) MarshalJSON() ([]byte, error) { // PullResponse: Response for the `Pull` method. type PullResponse struct { - // ReceivedMessages: Received Pub/Sub messages. The list will be empty - // if there are no more messages available in the backlog, or if no - // messages could be returned before the request timeout. For JSON, the - // response can be entirely empty. The Pub/Sub system may return fewer - // than the `maxMessages` requested even if there are more messages - // available in the backlog. + // ReceivedMessages: Optional. Received Pub/Sub messages. The list will + // be empty if there are no more messages available in the backlog, or + // if no messages could be returned before the request timeout. For + // JSON, the response can be entirely empty. The Pub/Sub system may + // return fewer than the `maxMessages` requested even if there are more + // messages available in the backlog. ReceivedMessages []*ReceivedMessage `json:"receivedMessages,omitempty"` // ServerResponse contains the HTTP response code and headers from the @@ -1502,15 +1506,15 @@ func (s *PullResponse) MarshalJSON() ([]byte, error) { // PushConfig: Configuration for a push delivery endpoint. type PushConfig struct { - // Attributes: Endpoint configuration attributes that can be used to - // control different aspects of the message delivery. The only currently - // supported attribute is `x-goog-version`, which you can use to change - // the format of the pushed message. This attribute indicates the - // version of the data expected by the endpoint. This controls the shape - // of the pushed message (i.e., its fields and metadata). If not present - // during the `CreateSubscription` call, it will default to the version - // of the Pub/Sub API used to make such call. If not present in a - // `ModifyPushConfig` call, its value will not be changed. + // Attributes: Optional. Endpoint configuration attributes that can be + // used to control different aspects of the message delivery. The only + // currently supported attribute is `x-goog-version`, which you can use + // to change the format of the pushed message. This attribute indicates + // the version of the data expected by the endpoint. This controls the + // shape of the pushed message (i.e., its fields and metadata). If not + // present during the `CreateSubscription` call, it will default to the + // version of the Pub/Sub API used to make such call. If not present in + // a `ModifyPushConfig` call, its value will not be changed. // `GetSubscription` calls will always return a valid version, even if // the subscription was created without this attribute. The only // supported values for the `x-goog-version` attribute are: * `v1beta1`: @@ -1519,21 +1523,22 @@ type PushConfig struct { // example: `attributes { "x-goog-version": "v1" }` Attributes map[string]string `json:"attributes,omitempty"` - // NoWrapper: When set, the payload to the push endpoint is not wrapped. + // NoWrapper: Optional. When set, the payload to the push endpoint is + // not wrapped. NoWrapper *NoWrapper `json:"noWrapper,omitempty"` - // OidcToken: If specified, Pub/Sub will generate and attach an OIDC JWT - // token as an `Authorization` header in the HTTP request for every - // pushed message. + // OidcToken: Optional. If specified, Pub/Sub will generate and attach + // an OIDC JWT token as an `Authorization` header in the HTTP request + // for every pushed message. OidcToken *OidcToken `json:"oidcToken,omitempty"` - // PubsubWrapper: When set, the payload to the push endpoint is in the - // form of the JSON representation of a PubsubMessage + // PubsubWrapper: Optional. When set, the payload to the push endpoint + // is in the form of the JSON representation of a PubsubMessage // (https://cloud.google.com/pubsub/docs/reference/rpc/google.pubsub.v1#pubsubmessage). PubsubWrapper *PubsubWrapper `json:"pubsubWrapper,omitempty"` - // PushEndpoint: A URL locating the endpoint to which messages should be - // pushed. For example, a Webhook endpoint might use + // PushEndpoint: Optional. A URL locating the endpoint to which messages + // should be pushed. For example, a Webhook endpoint might use // `https://example.com/push`. PushEndpoint string `json:"pushEndpoint,omitempty"` @@ -1562,15 +1567,16 @@ func (s *PushConfig) MarshalJSON() ([]byte, error) { // ReceivedMessage: A message and its corresponding acknowledgment ID. type ReceivedMessage struct { - // AckId: This ID can be used to acknowledge the received message. + // AckId: Optional. This ID can be used to acknowledge the received + // message. AckId string `json:"ackId,omitempty"` - // DeliveryAttempt: The approximate number of times that Cloud Pub/Sub - // has attempted to deliver the associated message to a subscriber. More - // precisely, this is 1 + (number of NACKs) + (number of ack_deadline - // exceeds) for this message. A NACK is any call to ModifyAckDeadline - // with a 0 deadline. An ack_deadline exceeds event is whenever a - // message is not acknowledged within ack_deadline. Note that + // DeliveryAttempt: Optional. The approximate number of times that + // Pub/Sub has attempted to deliver the associated message to a + // subscriber. More precisely, this is 1 + (number of NACKs) + (number + // of ack_deadline exceeds) for this message. A NACK is any call to + // ModifyAckDeadline with a 0 deadline. An ack_deadline exceeds event is + // whenever a message is not acknowledged within ack_deadline. Note that // ack_deadline is initially Subscription.ackDeadlineSeconds, but may // get extended automatically by the client library. Upon the first // delivery of a given message, `delivery_attempt` will have a value of @@ -1578,7 +1584,7 @@ type ReceivedMessage struct { // DeadLetterPolicy is not set on the subscription, this will be 0. DeliveryAttempt int64 `json:"deliveryAttempt,omitempty"` - // Message: The message. + // Message: Optional. The message. Message *PubsubMessage `json:"message,omitempty"` // ForceSendFields is a list of field names (e.g. "AckId") to @@ -1604,9 +1610,9 @@ func (s *ReceivedMessage) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// RetryPolicy: A policy that specifies how Cloud Pub/Sub retries -// message delivery. Retry delay will be exponential based on provided -// minimum and maximum backoffs. +// RetryPolicy: A policy that specifies how Pub/Sub retries message +// delivery. Retry delay will be exponential based on provided minimum +// and maximum backoffs. // https://en.wikipedia.org/wiki/Exponential_backoff. RetryPolicy will // be triggered on NACKs or acknowledgement deadline exceeded events for // a given message. Retry Policy is implemented on a best effort basis. @@ -1614,14 +1620,14 @@ func (s *ReceivedMessage) MarshalJSON() ([]byte, error) { // configuration. That is, delay can be more or less than configured // backoff. type RetryPolicy struct { - // MaximumBackoff: The maximum delay between consecutive deliveries of a - // given message. Value should be between 0 and 600 seconds. Defaults to - // 600 seconds. + // MaximumBackoff: Optional. The maximum delay between consecutive + // deliveries of a given message. Value should be between 0 and 600 + // seconds. Defaults to 600 seconds. MaximumBackoff string `json:"maximumBackoff,omitempty"` - // MinimumBackoff: The minimum delay between consecutive deliveries of a - // given message. Value should be between 0 and 600 seconds. Defaults to - // 10 seconds. + // MinimumBackoff: Optional. The minimum delay between consecutive + // deliveries of a given message. Value should be between 0 and 600 + // seconds. Defaults to 10 seconds. MinimumBackoff string `json:"minimumBackoff,omitempty"` // ForceSendFields is a list of field names (e.g. "MaximumBackoff") to @@ -1733,7 +1739,8 @@ func (s *Schema) MarshalJSON() ([]byte, error) { // SchemaSettings: Settings for validating messages published against a // schema. type SchemaSettings struct { - // Encoding: The encoding of messages validated against `schema`. + // Encoding: Optional. The encoding of messages validated against + // `schema`. // // Possible values: // "ENCODING_UNSPECIFIED" - Unspecified @@ -1742,14 +1749,14 @@ type SchemaSettings struct { // schema types, binary encoding may not be available. Encoding string `json:"encoding,omitempty"` - // FirstRevisionId: The minimum (inclusive) revision allowed for - // validating messages. If empty or not present, allow any revision to - // be validated against last_revision or any revision created before. + // FirstRevisionId: Optional. The minimum (inclusive) revision allowed + // for validating messages. If empty or not present, allow any revision + // to be validated against last_revision or any revision created before. FirstRevisionId string `json:"firstRevisionId,omitempty"` - // LastRevisionId: The maximum (inclusive) revision allowed for - // validating messages. If empty or not present, allow any revision to - // be validated against first_revision or any revision created after. + // LastRevisionId: Optional. The maximum (inclusive) revision allowed + // for validating messages. If empty or not present, allow any revision + // to be validated against first_revision or any revision created after. LastRevisionId string `json:"lastRevisionId,omitempty"` // Schema: Required. The name of the schema that messages published @@ -1783,22 +1790,22 @@ func (s *SchemaSettings) MarshalJSON() ([]byte, error) { // SeekRequest: Request for the `Seek` method. type SeekRequest struct { - // Snapshot: The snapshot to seek to. The snapshot's topic must be the - // same as that of the provided subscription. Format is + // Snapshot: Optional. The snapshot to seek to. The snapshot's topic + // must be the same as that of the provided subscription. Format is // `projects/{project}/snapshots/{snap}`. Snapshot string `json:"snapshot,omitempty"` - // Time: The time to seek to. Messages retained in the subscription that - // were published before this time are marked as acknowledged, and - // messages retained in the subscription that were published after this - // time are marked as unacknowledged. Note that this operation affects - // only those messages retained in the subscription (configured by the - // combination of `message_retention_duration` and - // `retain_acked_messages`). For example, if `time` corresponds to a - // point before the message retention window (or to a point before the - // system's notion of the subscription creation time), only retained - // messages will be marked as unacknowledged, and already-expunged - // messages will not be restored. + // Time: Optional. The time to seek to. Messages retained in the + // subscription that were published before this time are marked as + // acknowledged, and messages retained in the subscription that were + // published after this time are marked as unacknowledged. Note that + // this operation affects only those messages retained in the + // subscription (configured by the combination of + // `message_retention_duration` and `retain_acked_messages`). For + // example, if `time` corresponds to a point before the message + // retention window (or to a point before the system's notion of the + // subscription creation time), only retained messages will be marked as + // unacknowledged, and already-expunged messages will not be restored. Time string `json:"time,omitempty"` // ForceSendFields is a list of field names (e.g. "Snapshot") to @@ -1869,28 +1876,28 @@ func (s *SetIamPolicyRequest) MarshalJSON() ([]byte, error) { // you can set the acknowledgment state of messages in an existing // subscription to the state captured by a snapshot. type Snapshot struct { - // ExpireTime: The snapshot is guaranteed to exist up until this time. A - // newly-created snapshot expires no later than 7 days from the time of - // its creation. Its exact lifetime is determined at creation by the - // existing backlog in the source subscription. Specifically, the - // lifetime of the snapshot is `7 days - (age of oldest unacked message - // in the subscription)`. For example, consider a subscription whose - // oldest unacked message is 3 days old. If a snapshot is created from - // this subscription, the snapshot -- which will always capture this - // 3-day-old backlog as long as the snapshot exists -- will expire in 4 - // days. The service will refuse to create a snapshot that would expire - // in less than 1 hour after creation. + // ExpireTime: Optional. The snapshot is guaranteed to exist up until + // this time. A newly-created snapshot expires no later than 7 days from + // the time of its creation. Its exact lifetime is determined at + // creation by the existing backlog in the source subscription. + // Specifically, the lifetime of the snapshot is `7 days - (age of + // oldest unacked message in the subscription)`. For example, consider a + // subscription whose oldest unacked message is 3 days old. If a + // snapshot is created from this subscription, the snapshot -- which + // will always capture this 3-day-old backlog as long as the snapshot + // exists -- will expire in 4 days. The service will refuse to create a + // snapshot that would expire in less than 1 hour after creation. ExpireTime string `json:"expireTime,omitempty"` - // Labels: See [Creating and managing labels] + // Labels: Optional. See [Creating and managing labels] // (https://cloud.google.com/pubsub/docs/labels). Labels map[string]string `json:"labels,omitempty"` - // Name: The name of the snapshot. + // Name: Optional. The name of the snapshot. Name string `json:"name,omitempty"` - // Topic: The name of the topic from which this snapshot is retaining - // messages. + // Topic: Optional. The name of the topic from which this snapshot is + // retaining messages. Topic string `json:"topic,omitempty"` // ServerResponse contains the HTTP response code and headers from the @@ -1925,88 +1932,90 @@ func (s *Snapshot) MarshalJSON() ([]byte, error) { // subscriber will pull and ack messages using API methods. At most one // of these fields may be set. type Subscription struct { - // AckDeadlineSeconds: The approximate amount of time (on a best-effort - // basis) Pub/Sub waits for the subscriber to acknowledge receipt before - // resending the message. In the interval after the message is delivered - // and before it is acknowledged, it is considered to be _outstanding_. - // During that time period, the message will not be redelivered (on a - // best-effort basis). For pull subscriptions, this value is used as the - // initial value for the ack deadline. To override this value for a - // given message, call `ModifyAckDeadline` with the corresponding - // `ack_id` if using non-streaming pull or send the `ack_id` in a - // `StreamingModifyAckDeadlineRequest` if using streaming pull. The - // minimum custom deadline you can specify is 10 seconds. The maximum - // custom deadline you can specify is 600 seconds (10 minutes). If this - // parameter is 0, a default value of 10 seconds is used. For push - // delivery, this value is also used to set the request timeout for the - // call to the push endpoint. If the subscriber never acknowledges the - // message, the Pub/Sub system will eventually redeliver the message. + // AckDeadlineSeconds: Optional. The approximate amount of time (on a + // best-effort basis) Pub/Sub waits for the subscriber to acknowledge + // receipt before resending the message. In the interval after the + // message is delivered and before it is acknowledged, it is considered + // to be _outstanding_. During that time period, the message will not be + // redelivered (on a best-effort basis). For pull subscriptions, this + // value is used as the initial value for the ack deadline. To override + // this value for a given message, call `ModifyAckDeadline` with the + // corresponding `ack_id` if using non-streaming pull or send the + // `ack_id` in a `StreamingModifyAckDeadlineRequest` if using streaming + // pull. The minimum custom deadline you can specify is 10 seconds. The + // maximum custom deadline you can specify is 600 seconds (10 minutes). + // If this parameter is 0, a default value of 10 seconds is used. For + // push delivery, this value is also used to set the request timeout for + // the call to the push endpoint. If the subscriber never acknowledges + // the message, the Pub/Sub system will eventually redeliver the + // message. AckDeadlineSeconds int64 `json:"ackDeadlineSeconds,omitempty"` - // BigqueryConfig: If delivery to BigQuery is used with this + // BigqueryConfig: Optional. If delivery to BigQuery is used with this // subscription, this field is used to configure it. BigqueryConfig *BigQueryConfig `json:"bigqueryConfig,omitempty"` - // CloudStorageConfig: If delivery to Google Cloud Storage is used with - // this subscription, this field is used to configure it. + // CloudStorageConfig: Optional. If delivery to Google Cloud Storage is + // used with this subscription, this field is used to configure it. CloudStorageConfig *CloudStorageConfig `json:"cloudStorageConfig,omitempty"` - // DeadLetterPolicy: A policy that specifies the conditions for dead - // lettering messages in this subscription. If dead_letter_policy is not - // set, dead lettering is disabled. The Cloud Pub/Sub service account - // associated with this subscriptions's parent project (i.e., + // DeadLetterPolicy: Optional. A policy that specifies the conditions + // for dead lettering messages in this subscription. If + // dead_letter_policy is not set, dead lettering is disabled. The + // Pub/Sub service account associated with this subscriptions's parent + // project (i.e., // service-{project_number}@gcp-sa-pubsub.iam.gserviceaccount.com) must // have permission to Acknowledge() messages on this subscription. DeadLetterPolicy *DeadLetterPolicy `json:"deadLetterPolicy,omitempty"` - // Detached: Indicates whether the subscription is detached from its - // topic. Detached subscriptions don't receive messages from their topic - // and don't retain any backlog. `Pull` and `StreamingPull` requests - // will return FAILED_PRECONDITION. If the subscription is a push - // subscription, pushes to the endpoint will not be made. + // Detached: Optional. Indicates whether the subscription is detached + // from its topic. Detached subscriptions don't receive messages from + // their topic and don't retain any backlog. `Pull` and `StreamingPull` + // requests will return FAILED_PRECONDITION. If the subscription is a + // push subscription, pushes to the endpoint will not be made. Detached bool `json:"detached,omitempty"` - // EnableExactlyOnceDelivery: If true, Pub/Sub provides the following - // guarantees for the delivery of a message with a given value of - // `message_id` on this subscription: * The message sent to a subscriber - // is guaranteed not to be resent before the message's acknowledgement - // deadline expires. * An acknowledged message will not be resent to a - // subscriber. Note that subscribers may still receive multiple copies - // of a message when `enable_exactly_once_delivery` is true if the - // message was published multiple times by a publisher client. These - // copies are considered distinct by Pub/Sub and have distinct - // `message_id` values. + // EnableExactlyOnceDelivery: Optional. If true, Pub/Sub provides the + // following guarantees for the delivery of a message with a given value + // of `message_id` on this subscription: * The message sent to a + // subscriber is guaranteed not to be resent before the message's + // acknowledgement deadline expires. * An acknowledged message will not + // be resent to a subscriber. Note that subscribers may still receive + // multiple copies of a message when `enable_exactly_once_delivery` is + // true if the message was published multiple times by a publisher + // client. These copies are considered distinct by Pub/Sub and have + // distinct `message_id` values. EnableExactlyOnceDelivery bool `json:"enableExactlyOnceDelivery,omitempty"` - // EnableMessageOrdering: If true, messages published with the same - // `ordering_key` in `PubsubMessage` will be delivered to the + // EnableMessageOrdering: Optional. If true, messages published with the + // same `ordering_key` in `PubsubMessage` will be delivered to the // subscribers in the order in which they are received by the Pub/Sub // system. Otherwise, they may be delivered in any order. EnableMessageOrdering bool `json:"enableMessageOrdering,omitempty"` - // ExpirationPolicy: A policy that specifies the conditions for this - // subscription's expiration. A subscription is considered active as - // long as any connected subscriber is successfully consuming messages - // from the subscription or is issuing operations on the subscription. - // If `expiration_policy` is not set, a *default policy* with `ttl` of - // 31 days will be used. The minimum allowed value for + // ExpirationPolicy: Optional. A policy that specifies the conditions + // for this subscription's expiration. A subscription is considered + // active as long as any connected subscriber is successfully consuming + // messages from the subscription or is issuing operations on the + // subscription. If `expiration_policy` is not set, a *default policy* + // with `ttl` of 31 days will be used. The minimum allowed value for // `expiration_policy.ttl` is 1 day. If `expiration_policy` is set, but // `expiration_policy.ttl` is not set, the subscription never expires. ExpirationPolicy *ExpirationPolicy `json:"expirationPolicy,omitempty"` - // Filter: An expression written in the Pub/Sub filter language - // (https://cloud.google.com/pubsub/docs/filtering). If non-empty, then - // only `PubsubMessage`s whose `attributes` field matches the filter are - // delivered on this subscription. If empty, then no messages are - // filtered out. + // Filter: Optional. An expression written in the Pub/Sub filter + // language (https://cloud.google.com/pubsub/docs/filtering). If + // non-empty, then only `PubsubMessage`s whose `attributes` field + // matches the filter are delivered on this subscription. If empty, then + // no messages are filtered out. Filter string `json:"filter,omitempty"` - // Labels: See Creating and managing labels + // Labels: Optional. See Creating and managing labels // (https://cloud.google.com/pubsub/docs/labels). Labels map[string]string `json:"labels,omitempty"` - // MessageRetentionDuration: How long to retain unacknowledged messages - // in the subscription's backlog, from the moment a message is + // MessageRetentionDuration: Optional. How long to retain unacknowledged + // messages in the subscription's backlog, from the moment a message is // published. If `retain_acked_messages` is true, then this also // configures the retention of acknowledged messages, and thus // configures how far back in time a `Seek` can be done. Defaults to 7 @@ -2021,25 +2030,25 @@ type Subscription struct { // and 255 characters in length, and it must not start with "goog". Name string `json:"name,omitempty"` - // PushConfig: If push delivery is used with this subscription, this - // field is used to configure it. + // PushConfig: Optional. If push delivery is used with this + // subscription, this field is used to configure it. PushConfig *PushConfig `json:"pushConfig,omitempty"` - // RetainAckedMessages: Indicates whether to retain acknowledged - // messages. If true, then messages are not expunged from the - // subscription's backlog, even if they are acknowledged, until they + // RetainAckedMessages: Optional. Indicates whether to retain + // acknowledged messages. If true, then messages are not expunged from + // the subscription's backlog, even if they are acknowledged, until they // fall out of the `message_retention_duration` window. This must be // true if you would like to [`Seek` to a timestamp] // (https://cloud.google.com/pubsub/docs/replay-overview#seek_to_a_time) // in the past to replay previously-acknowledged messages. RetainAckedMessages bool `json:"retainAckedMessages,omitempty"` - // RetryPolicy: A policy that specifies how Pub/Sub retries message - // delivery for this subscription. If not set, the default retry policy - // is applied. This generally implies that messages will be retried as - // soon as possible for healthy subscribers. RetryPolicy will be - // triggered on NACKs or acknowledgement deadline exceeded events for a - // given message. + // RetryPolicy: Optional. A policy that specifies how Pub/Sub retries + // message delivery for this subscription. If not set, the default retry + // policy is applied. This generally implies that messages will be + // retried as soon as possible for healthy subscribers. RetryPolicy will + // be triggered on NACKs or acknowledgement deadline exceeded events for + // a given message. RetryPolicy *RetryPolicy `json:"retryPolicy,omitempty"` // State: Output only. An output-only field indicating whether or not @@ -2171,18 +2180,18 @@ type TextConfig struct { // Topic: A topic resource. type Topic struct { - // KmsKeyName: The resource name of the Cloud KMS CryptoKey to be used - // to protect access to messages published on this topic. The expected - // format is `projects/*/locations/*/keyRings/*/cryptoKeys/*`. + // KmsKeyName: Optional. The resource name of the Cloud KMS CryptoKey to + // be used to protect access to messages published on this topic. The + // expected format is `projects/*/locations/*/keyRings/*/cryptoKeys/*`. KmsKeyName string `json:"kmsKeyName,omitempty"` - // Labels: See [Creating and managing labels] + // Labels: Optional. See [Creating and managing labels] // (https://cloud.google.com/pubsub/docs/labels). Labels map[string]string `json:"labels,omitempty"` - // MessageRetentionDuration: Indicates the minimum duration to retain a - // message after it is published to the topic. If this field is set, - // messages published to the topic in the last + // MessageRetentionDuration: Optional. Indicates the minimum duration to + // retain a message after it is published to the topic. If this field is + // set, messages published to the topic in the last // `message_retention_duration` are always available to subscribers. For // instance, it allows any attached subscription to seek to a timestamp // (https://cloud.google.com/pubsub/docs/replay-overview#seek_to_a_time) @@ -2191,9 +2200,9 @@ type Topic struct { // subscriptions. Cannot be more than 31 days or less than 10 minutes. MessageRetentionDuration string `json:"messageRetentionDuration,omitempty"` - // MessageStoragePolicy: Policy constraining the set of Google Cloud - // Platform regions where messages published to the topic may be stored. - // If not present, then no constraints are in effect. + // MessageStoragePolicy: Optional. Policy constraining the set of Google + // Cloud Platform regions where messages published to the topic may be + // stored. If not present, then no constraints are in effect. MessageStoragePolicy *MessageStoragePolicy `json:"messageStoragePolicy,omitempty"` // Name: Required. The name of the topic. It must have the format @@ -2204,13 +2213,13 @@ type Topic struct { // in length, and it must not start with "goog". Name string `json:"name,omitempty"` - // SatisfiesPzs: Reserved for future use. This field is set only in - // responses from the server; it is ignored if it is set in any + // SatisfiesPzs: Optional. Reserved for future use. This field is set + // only in responses from the server; it is ignored if it is set in any // requests. SatisfiesPzs bool `json:"satisfiesPzs,omitempty"` - // SchemaSettings: Settings for validating messages published against a - // schema. + // SchemaSettings: Optional. Settings for validating messages published + // against a schema. SchemaSettings *SchemaSettings `json:"schemaSettings,omitempty"` // ServerResponse contains the HTTP response code and headers from the @@ -5349,13 +5358,13 @@ func (c *ProjectsSnapshotsListCall) Do(opts ...googleapi.CallOption) (*ListSnaps // ], // "parameters": { // "pageSize": { - // "description": "Maximum number of snapshots to return.", + // "description": "Optional. Maximum number of snapshots to return.", // "format": "int32", // "location": "query", // "type": "integer" // }, // "pageToken": { - // "description": "The value returned by the last `ListSnapshotsResponse`; indicates that this is a continuation of a prior `ListSnapshots` call, and that the system should return the next page of data.", + // "description": "Optional. The value returned by the last `ListSnapshotsResponse`; indicates that this is a continuation of a prior `ListSnapshots` call, and that the system should return the next page of data.", // "location": "query", // "type": "string" // }, @@ -5417,7 +5426,7 @@ type ProjectsSnapshotsPatchCall struct { // you can set the acknowledgment state of messages in an existing // subscription to the state captured by a snapshot. // -// - name: The name of the snapshot. +// - name: Optional. The name of the snapshot. func (r *ProjectsSnapshotsService) Patch(name string, updatesnapshotrequest *UpdateSnapshotRequest) *ProjectsSnapshotsPatchCall { c := &ProjectsSnapshotsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.name = name @@ -5525,7 +5534,7 @@ func (c *ProjectsSnapshotsPatchCall) Do(opts ...googleapi.CallOption) (*Snapshot // ], // "parameters": { // "name": { - // "description": "The name of the snapshot.", + // "description": "Optional. The name of the snapshot.", // "location": "path", // "pattern": "^projects/[^/]+/snapshots/[^/]+$", // "required": true, @@ -6900,13 +6909,13 @@ func (c *ProjectsSubscriptionsListCall) Do(opts ...googleapi.CallOption) (*ListS // ], // "parameters": { // "pageSize": { - // "description": "Maximum number of subscriptions to return.", + // "description": "Optional. Maximum number of subscriptions to return.", // "format": "int32", // "location": "query", // "type": "integer" // }, // "pageToken": { - // "description": "The value returned by the last `ListSubscriptionsResponse`; indicates that this is a continuation of a prior `ListSubscriptions` call, and that the system should return the next page of data.", + // "description": "Optional. The value returned by the last `ListSubscriptionsResponse`; indicates that this is a continuation of a prior `ListSubscriptions` call, and that the system should return the next page of data.", // "location": "query", // "type": "string" // }, @@ -8749,13 +8758,13 @@ func (c *ProjectsTopicsListCall) Do(opts ...googleapi.CallOption) (*ListTopicsRe // ], // "parameters": { // "pageSize": { - // "description": "Maximum number of topics to return.", + // "description": "Optional. Maximum number of topics to return.", // "format": "int32", // "location": "query", // "type": "integer" // }, // "pageToken": { - // "description": "The value returned by the last `ListTopicsResponse`; indicates that this is a continuation of a prior `ListTopics` call, and that the system should return the next page of data.", + // "description": "Optional. The value returned by the last `ListTopicsResponse`; indicates that this is a continuation of a prior `ListTopics` call, and that the system should return the next page of data.", // "location": "query", // "type": "string" // }, @@ -9542,13 +9551,13 @@ func (c *ProjectsTopicsSnapshotsListCall) Do(opts ...googleapi.CallOption) (*Lis // ], // "parameters": { // "pageSize": { - // "description": "Maximum number of snapshot names to return.", + // "description": "Optional. Maximum number of snapshot names to return.", // "format": "int32", // "location": "query", // "type": "integer" // }, // "pageToken": { - // "description": "The value returned by the last `ListTopicSnapshotsResponse`; indicates that this is a continuation of a prior `ListTopicSnapshots` call, and that the system should return the next page of data.", + // "description": "Optional. The value returned by the last `ListTopicSnapshotsResponse`; indicates that this is a continuation of a prior `ListTopicSnapshots` call, and that the system should return the next page of data.", // "location": "query", // "type": "string" // }, @@ -9738,13 +9747,13 @@ func (c *ProjectsTopicsSubscriptionsListCall) Do(opts ...googleapi.CallOption) ( // ], // "parameters": { // "pageSize": { - // "description": "Maximum number of subscription names to return.", + // "description": "Optional. Maximum number of subscription names to return.", // "format": "int32", // "location": "query", // "type": "integer" // }, // "pageToken": { - // "description": "The value returned by the last `ListTopicSubscriptionsResponse`; indicates that this is a continuation of a prior `ListTopicSubscriptions` call, and that the system should return the next page of data.", + // "description": "Optional. The value returned by the last `ListTopicSubscriptionsResponse`; indicates that this is a continuation of a prior `ListTopicSubscriptions` call, and that the system should return the next page of data.", // "location": "query", // "type": "string" // }, diff --git a/retail/v2/retail-api.json b/retail/v2/retail-api.json index 1c609eeb9df..532cdf094ed 100644 --- a/retail/v2/retail-api.json +++ b/retail/v2/retail-api.json @@ -2059,7 +2059,7 @@ } } }, - "revision": "20230609", + "revision": "20230622", "rootUrl": "https://retail.googleapis.com/", "schemas": { "GoogleApiHttpBody": { @@ -3638,7 +3638,7 @@ "type": "string" }, "brands": { - "description": "The brands of the product. A maximum of 30 brands are allowed. Each brand must be a UTF-8 encoded string with a length limit of 1,000 characters. Otherwise, an INVALID_ARGUMENT error is returned. Corresponding properties: Google Merchant Center property [brand](https://support.google.com/merchants/answer/6324351). Schema.org property [Product.brand](https://schema.org/brand).", + "description": "The brands of the product. A maximum of 30 brands are allowed unless overridden via pantheon UI. Each brand must be a UTF-8 encoded string with a length limit of 1,000 characters. Otherwise, an INVALID_ARGUMENT error is returned. Corresponding properties: Google Merchant Center property [brand](https://support.google.com/merchants/answer/6324351). Schema.org property [Product.brand](https://schema.org/brand).", "items": { "type": "string" }, diff --git a/retail/v2/retail-gen.go b/retail/v2/retail-gen.go index 150887241d6..f72488c2d2b 100644 --- a/retail/v2/retail-gen.go +++ b/retail/v2/retail-gen.go @@ -3348,12 +3348,13 @@ type GoogleCloudRetailV2Product struct { // Type.PRIMARY and Type.COLLECTION, and ignored for Type.VARIANT. AvailableTime string `json:"availableTime,omitempty"` - // Brands: The brands of the product. A maximum of 30 brands are - // allowed. Each brand must be a UTF-8 encoded string with a length - // limit of 1,000 characters. Otherwise, an INVALID_ARGUMENT error is - // returned. Corresponding properties: Google Merchant Center property - // brand (https://support.google.com/merchants/answer/6324351). - // Schema.org property Product.brand (https://schema.org/brand). + // Brands: The brands of the product. A maximum of 30 brands are allowed + // unless overridden via pantheon UI. Each brand must be a UTF-8 encoded + // string with a length limit of 1,000 characters. Otherwise, an + // INVALID_ARGUMENT error is returned. Corresponding properties: Google + // Merchant Center property brand + // (https://support.google.com/merchants/answer/6324351). Schema.org + // property Product.brand (https://schema.org/brand). Brands []string `json:"brands,omitempty"` // Categories: Product categories. This field is repeated for supporting diff --git a/retail/v2alpha/retail-api.json b/retail/v2alpha/retail-api.json index efa8cf73330..f63ae75e8fb 100644 --- a/retail/v2alpha/retail-api.json +++ b/retail/v2alpha/retail-api.json @@ -2217,7 +2217,7 @@ } } }, - "revision": "20230609", + "revision": "20230622", "rootUrl": "https://retail.googleapis.com/", "schemas": { "GoogleApiHttpBody": { @@ -4740,7 +4740,7 @@ "type": "string" }, "brands": { - "description": "The brands of the product. A maximum of 30 brands are allowed. Each brand must be a UTF-8 encoded string with a length limit of 1,000 characters. Otherwise, an INVALID_ARGUMENT error is returned. Corresponding properties: Google Merchant Center property [brand](https://support.google.com/merchants/answer/6324351). Schema.org property [Product.brand](https://schema.org/brand).", + "description": "The brands of the product. A maximum of 30 brands are allowed unless overridden via pantheon UI. Each brand must be a UTF-8 encoded string with a length limit of 1,000 characters. Otherwise, an INVALID_ARGUMENT error is returned. Corresponding properties: Google Merchant Center property [brand](https://support.google.com/merchants/answer/6324351). Schema.org property [Product.brand](https://schema.org/brand).", "items": { "type": "string" }, diff --git a/retail/v2alpha/retail-gen.go b/retail/v2alpha/retail-gen.go index 237a8b1f999..7aae457a6b1 100644 --- a/retail/v2alpha/retail-gen.go +++ b/retail/v2alpha/retail-gen.go @@ -5102,12 +5102,13 @@ type GoogleCloudRetailV2alphaProduct struct { // Type.PRIMARY and Type.COLLECTION, and ignored for Type.VARIANT. AvailableTime string `json:"availableTime,omitempty"` - // Brands: The brands of the product. A maximum of 30 brands are - // allowed. Each brand must be a UTF-8 encoded string with a length - // limit of 1,000 characters. Otherwise, an INVALID_ARGUMENT error is - // returned. Corresponding properties: Google Merchant Center property - // brand (https://support.google.com/merchants/answer/6324351). - // Schema.org property Product.brand (https://schema.org/brand). + // Brands: The brands of the product. A maximum of 30 brands are allowed + // unless overridden via pantheon UI. Each brand must be a UTF-8 encoded + // string with a length limit of 1,000 characters. Otherwise, an + // INVALID_ARGUMENT error is returned. Corresponding properties: Google + // Merchant Center property brand + // (https://support.google.com/merchants/answer/6324351). Schema.org + // property Product.brand (https://schema.org/brand). Brands []string `json:"brands,omitempty"` // Categories: Product categories. This field is repeated for supporting diff --git a/retail/v2beta/retail-api.json b/retail/v2beta/retail-api.json index cd1ad286859..b82cf76af9c 100644 --- a/retail/v2beta/retail-api.json +++ b/retail/v2beta/retail-api.json @@ -2087,7 +2087,7 @@ } } }, - "revision": "20230609", + "revision": "20230622", "rootUrl": "https://retail.googleapis.com/", "schemas": { "GoogleApiHttpBody": { @@ -5257,7 +5257,7 @@ "type": "string" }, "brands": { - "description": "The brands of the product. A maximum of 30 brands are allowed. Each brand must be a UTF-8 encoded string with a length limit of 1,000 characters. Otherwise, an INVALID_ARGUMENT error is returned. Corresponding properties: Google Merchant Center property [brand](https://support.google.com/merchants/answer/6324351). Schema.org property [Product.brand](https://schema.org/brand).", + "description": "The brands of the product. A maximum of 30 brands are allowed unless overridden via pantheon UI. Each brand must be a UTF-8 encoded string with a length limit of 1,000 characters. Otherwise, an INVALID_ARGUMENT error is returned. Corresponding properties: Google Merchant Center property [brand](https://support.google.com/merchants/answer/6324351). Schema.org property [Product.brand](https://schema.org/brand).", "items": { "type": "string" }, diff --git a/retail/v2beta/retail-gen.go b/retail/v2beta/retail-gen.go index 137683da0ec..1a291bdfa95 100644 --- a/retail/v2beta/retail-gen.go +++ b/retail/v2beta/retail-gen.go @@ -6193,12 +6193,13 @@ type GoogleCloudRetailV2betaProduct struct { // Type.PRIMARY and Type.COLLECTION, and ignored for Type.VARIANT. AvailableTime string `json:"availableTime,omitempty"` - // Brands: The brands of the product. A maximum of 30 brands are - // allowed. Each brand must be a UTF-8 encoded string with a length - // limit of 1,000 characters. Otherwise, an INVALID_ARGUMENT error is - // returned. Corresponding properties: Google Merchant Center property - // brand (https://support.google.com/merchants/answer/6324351). - // Schema.org property Product.brand (https://schema.org/brand). + // Brands: The brands of the product. A maximum of 30 brands are allowed + // unless overridden via pantheon UI. Each brand must be a UTF-8 encoded + // string with a length limit of 1,000 characters. Otherwise, an + // INVALID_ARGUMENT error is returned. Corresponding properties: Google + // Merchant Center property brand + // (https://support.google.com/merchants/answer/6324351). Schema.org + // property Product.brand (https://schema.org/brand). Brands []string `json:"brands,omitempty"` // Categories: Product categories. This field is repeated for supporting diff --git a/run/v1/run-api.json b/run/v1/run-api.json index a8887eff6a9..dad521077c1 100644 --- a/run/v1/run-api.json +++ b/run/v1/run-api.json @@ -2289,7 +2289,7 @@ } } }, - "revision": "20230611", + "revision": "20230625", "rootUrl": "https://run.googleapis.com/", "schemas": { "Addressable": { @@ -2359,6 +2359,7 @@ "type": "string" }, "name": { + "deprecated": true, "description": "Deprecated Read only. Full path to the `AuthorizedDomain` resource in the API. Example: `projects/myproject/authorizedDomains/example.com`.", "type": "string" } @@ -2399,6 +2400,7 @@ "properties": { "localObjectReference": { "$ref": "LocalObjectReference", + "deprecated": true, "description": "This field should not be used directly as it is meant to be inlined directly into the message. Use the \"name\" field instead." }, "name": { @@ -2422,6 +2424,7 @@ }, "localObjectReference": { "$ref": "LocalObjectReference", + "deprecated": true, "description": "Not supported by Cloud Run." }, "name": { @@ -4058,6 +4061,7 @@ "properties": { "localObjectReference": { "$ref": "LocalObjectReference", + "deprecated": true, "description": "This field should not be used directly as it is meant to be inlined directly into the message. Use the \"name\" field instead." }, "name": { @@ -4081,6 +4085,7 @@ }, "localObjectReference": { "$ref": "LocalObjectReference", + "deprecated": true, "description": "This field should not be used directly as it is meant to be inlined directly into the message. Use the \"name\" field instead." }, "name": { @@ -4508,6 +4513,7 @@ "id": "TrafficTarget", "properties": { "configurationName": { + "deprecated": true, "description": "[Deprecated] Not supported in Cloud Run. It must be empty.", "type": "string" }, diff --git a/sasportal/v1alpha1/sasportal-api.json b/sasportal/v1alpha1/sasportal-api.json index 656227e7105..545d01e3da1 100644 --- a/sasportal/v1alpha1/sasportal-api.json +++ b/sasportal/v1alpha1/sasportal-api.json @@ -109,6 +109,22 @@ "resources": { "customers": { "methods": { + "checkHasProvisionedDeployment": { + "description": "Checks whether a SAS deployment for the authentication context exists.", + "flatPath": "v1alpha1/customers:checkHasProvisionedDeployment", + "httpMethod": "GET", + "id": "sasportal.customers.checkHasProvisionedDeployment", + "parameterOrder": [], + "parameters": {}, + "path": "v1alpha1/customers:checkHasProvisionedDeployment", + "response": { + "$ref": "SasPortalCheckHasProvisionedDeploymentResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/sasportal" + ] + }, "get": { "description": "Returns a requested customer.", "flatPath": "v1alpha1/customers/{customersId}", @@ -163,6 +179,25 @@ "https://www.googleapis.com/auth/sasportal" ] }, + "migrateOrganization": { + "description": "Migrates a SAS organization to the cloud. This will create GCP projects for each deployment and associate them. The SAS Organization is linked to the gcp project that called the command. go/sas-legacy-customer-migration", + "flatPath": "v1alpha1/customers:migrateOrganization", + "httpMethod": "POST", + "id": "sasportal.customers.migrateOrganization", + "parameterOrder": [], + "parameters": {}, + "path": "v1alpha1/customers:migrateOrganization", + "request": { + "$ref": "SasPortalMigrateOrganizationRequest" + }, + "response": { + "$ref": "SasPortalOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/sasportal" + ] + }, "patch": { "description": "Updates an existing customer.", "flatPath": "v1alpha1/customers/{customersId}", @@ -2582,7 +2617,7 @@ } } }, - "revision": "20230606", + "revision": "20230625", "rootUrl": "https://sasportal.googleapis.com/", "schemas": { "SasPortalAssignment": { @@ -2619,6 +2654,17 @@ }, "type": "object" }, + "SasPortalCheckHasProvisionedDeploymentResponse": { + "description": "Response for [CheckHasProvisionedDeployment]. [spectrum.sas.portal.v1alpha1.Provisioning.CheckHasProvisionedDeployment].", + "id": "SasPortalCheckHasProvisionedDeploymentResponse", + "properties": { + "hasProvisionedDeployment": { + "description": "Whether a SAS deployment for the authentication context exists.", + "type": "boolean" + } + }, + "type": "object" + }, "SasPortalCreateSignedDeviceRequest": { "description": "Request for CreateSignedDevice.", "id": "SasPortalCreateSignedDeviceRequest", @@ -2688,6 +2734,21 @@ }, "type": "object" }, + "SasPortalDeploymentAssociation": { + "description": "Association between a gcp project and a SAS user id.", + "id": "SasPortalDeploymentAssociation", + "properties": { + "gcpProjectId": { + "description": "GCP project id of the associated project.", + "type": "string" + }, + "userId": { + "description": "User id of the deployment.", + "type": "string" + } + }, + "type": "object" + }, "SasPortalDevice": { "id": "SasPortalDevice", "properties": { @@ -3243,6 +3304,58 @@ }, "type": "object" }, + "SasPortalMigrateOrganizationMetadata": { + "description": "Long-running operation metadata message returned by the MigrateOrganization.", + "id": "SasPortalMigrateOrganizationMetadata", + "properties": { + "operationState": { + "description": "Output only. Current operation state", + "enum": [ + "OPERATION_STATE_UNSPECIFIED", + "OPERATION_STATE_PENDING", + "OPERATION_STATE_RUNNING", + "OPERATION_STATE_SUCCEEDED", + "OPERATION_STATE_FAILED" + ], + "enumDescriptions": [ + "Unspecified.", + "Pending (Not started).", + "In-progress.", + "Done successfully.", + "Done with errors." + ], + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "SasPortalMigrateOrganizationRequest": { + "description": "Request for [MigrateOrganization]. [spectrum.sas.portal.v1alpha1.Provisioning.MigrateOrganization]. GCP Project, Organization Info, and caller's GAIA ID should be retrieved from the RPC handler, and used to check authorization on SAS Portal organization and to create GCP Projects.", + "id": "SasPortalMigrateOrganizationRequest", + "properties": { + "organizationId": { + "description": "Required. Id of the SAS organization to be migrated.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "SasPortalMigrateOrganizationResponse": { + "description": "Response for [MigrateOrganization]. [spectrum.sas.portal.v1alpha1.Provisioning.MigrateOrganization].", + "id": "SasPortalMigrateOrganizationResponse", + "properties": { + "deploymentAssociation": { + "description": "Optional. A list of deployment association that were created for the migration, or current associations if they already exist.", + "items": { + "$ref": "SasPortalDeploymentAssociation" + }, + "type": "array" + } + }, + "type": "object" + }, "SasPortalMoveDeploymentRequest": { "description": "Request for MoveDeployment.", "id": "SasPortalMoveDeploymentRequest", diff --git a/sasportal/v1alpha1/sasportal-gen.go b/sasportal/v1alpha1/sasportal-gen.go index 04223797024..7945b32169b 100644 --- a/sasportal/v1alpha1/sasportal-gen.go +++ b/sasportal/v1alpha1/sasportal-gen.go @@ -464,6 +464,44 @@ func (s *SasPortalChannelWithScore) UnmarshalJSON(data []byte) error { return nil } +// SasPortalCheckHasProvisionedDeploymentResponse: Response for +// [CheckHasProvisionedDeployment]. +// [spectrum.sas.portal.v1alpha1.Provisioning.CheckHasProvisionedDeployme +// nt]. +type SasPortalCheckHasProvisionedDeploymentResponse struct { + // HasProvisionedDeployment: Whether a SAS deployment for the + // authentication context exists. + HasProvisionedDeployment bool `json:"hasProvisionedDeployment,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. + // "HasProvisionedDeployment") 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. "HasProvisionedDeployment") + // 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 *SasPortalCheckHasProvisionedDeploymentResponse) MarshalJSON() ([]byte, error) { + type NoMethod SasPortalCheckHasProvisionedDeploymentResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // SasPortalCreateSignedDeviceRequest: Request for CreateSignedDevice. type SasPortalCreateSignedDeviceRequest struct { // EncodedDevice: Required. JSON Web Token signed using a CPI private @@ -580,6 +618,38 @@ func (s *SasPortalDeployment) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// SasPortalDeploymentAssociation: Association between a gcp project and +// a SAS user id. +type SasPortalDeploymentAssociation struct { + // GcpProjectId: GCP project id of the associated project. + GcpProjectId string `json:"gcpProjectId,omitempty"` + + // UserId: User id of the deployment. + UserId string `json:"userId,omitempty"` + + // ForceSendFields is a list of field names (e.g. "GcpProjectId") 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. "GcpProjectId") 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 *SasPortalDeploymentAssociation) MarshalJSON() ([]byte, error) { + type NoMethod SasPortalDeploymentAssociation + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + type SasPortalDevice struct { // ActiveConfig: Output only. Current configuration of the device as // registered to the SAS. @@ -1401,6 +1471,111 @@ func (s *SasPortalListNodesResponse) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// SasPortalMigrateOrganizationMetadata: Long-running operation metadata +// message returned by the MigrateOrganization. +type SasPortalMigrateOrganizationMetadata struct { + // OperationState: Output only. Current operation state + // + // Possible values: + // "OPERATION_STATE_UNSPECIFIED" - Unspecified. + // "OPERATION_STATE_PENDING" - Pending (Not started). + // "OPERATION_STATE_RUNNING" - In-progress. + // "OPERATION_STATE_SUCCEEDED" - Done successfully. + // "OPERATION_STATE_FAILED" - Done with errors. + OperationState string `json:"operationState,omitempty"` + + // ForceSendFields is a list of field names (e.g. "OperationState") 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. "OperationState") 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 *SasPortalMigrateOrganizationMetadata) MarshalJSON() ([]byte, error) { + type NoMethod SasPortalMigrateOrganizationMetadata + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// SasPortalMigrateOrganizationRequest: Request for +// [MigrateOrganization]. +// [spectrum.sas.portal.v1alpha1.Provisioning.MigrateOrganization]. GCP +// Project, Organization Info, and caller's GAIA ID should be retrieved +// from the RPC handler, and used to check authorization on SAS Portal +// organization and to create GCP Projects. +type SasPortalMigrateOrganizationRequest struct { + // OrganizationId: Required. Id of the SAS organization to be migrated. + OrganizationId int64 `json:"organizationId,omitempty,string"` + + // ForceSendFields is a list of field names (e.g. "OrganizationId") 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. "OrganizationId") 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 *SasPortalMigrateOrganizationRequest) MarshalJSON() ([]byte, error) { + type NoMethod SasPortalMigrateOrganizationRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// SasPortalMigrateOrganizationResponse: Response for +// [MigrateOrganization]. +// [spectrum.sas.portal.v1alpha1.Provisioning.MigrateOrganization]. +type SasPortalMigrateOrganizationResponse struct { + // DeploymentAssociation: Optional. A list of deployment association + // that were created for the migration, or current associations if they + // already exist. + DeploymentAssociation []*SasPortalDeploymentAssociation `json:"deploymentAssociation,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "DeploymentAssociation") 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. "DeploymentAssociation") 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 *SasPortalMigrateOrganizationResponse) MarshalJSON() ([]byte, error) { + type NoMethod SasPortalMigrateOrganizationResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // SasPortalMoveDeploymentRequest: Request for MoveDeployment. type SasPortalMoveDeploymentRequest struct { // Destination: Required. The name of the new parent resource node or @@ -2027,6 +2202,139 @@ type SasPortalValidateInstallerResponse struct { googleapi.ServerResponse `json:"-"` } +// method id "sasportal.customers.checkHasProvisionedDeployment": + +type CustomersCheckHasProvisionedDeploymentCall struct { + s *Service + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// CheckHasProvisionedDeployment: Checks whether a SAS deployment for +// the authentication context exists. +func (r *CustomersService) CheckHasProvisionedDeployment() *CustomersCheckHasProvisionedDeploymentCall { + c := &CustomersCheckHasProvisionedDeploymentCall{s: r.s, urlParams_: make(gensupport.URLParams)} + 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 *CustomersCheckHasProvisionedDeploymentCall) Fields(s ...googleapi.Field) *CustomersCheckHasProvisionedDeploymentCall { + 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 *CustomersCheckHasProvisionedDeploymentCall) IfNoneMatch(entityTag string) *CustomersCheckHasProvisionedDeploymentCall { + 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 *CustomersCheckHasProvisionedDeploymentCall) Context(ctx context.Context) *CustomersCheckHasProvisionedDeploymentCall { + 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 *CustomersCheckHasProvisionedDeploymentCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *CustomersCheckHasProvisionedDeploymentCall) 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, "v1alpha1/customers:checkHasProvisionedDeployment") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("GET", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "sasportal.customers.checkHasProvisionedDeployment" call. +// Exactly one of *SasPortalCheckHasProvisionedDeploymentResponse or +// error will be non-nil. Any non-2xx status code is an error. Response +// headers are in either +// *SasPortalCheckHasProvisionedDeploymentResponse.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 *CustomersCheckHasProvisionedDeploymentCall) Do(opts ...googleapi.CallOption) (*SasPortalCheckHasProvisionedDeploymentResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &SasPortalCheckHasProvisionedDeploymentResponse{ + 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": "Checks whether a SAS deployment for the authentication context exists.", + // "flatPath": "v1alpha1/customers:checkHasProvisionedDeployment", + // "httpMethod": "GET", + // "id": "sasportal.customers.checkHasProvisionedDeployment", + // "parameterOrder": [], + // "parameters": {}, + // "path": "v1alpha1/customers:checkHasProvisionedDeployment", + // "response": { + // "$ref": "SasPortalCheckHasProvisionedDeploymentResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/sasportal" + // ] + // } + +} + // method id "sasportal.customers.get": type CustomersGetCall struct { @@ -2352,6 +2660,135 @@ func (c *CustomersListCall) Pages(ctx context.Context, f func(*SasPortalListCust } } +// method id "sasportal.customers.migrateOrganization": + +type CustomersMigrateOrganizationCall struct { + s *Service + sasportalmigrateorganizationrequest *SasPortalMigrateOrganizationRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// MigrateOrganization: Migrates a SAS organization to the cloud. This +// will create GCP projects for each deployment and associate them. The +// SAS Organization is linked to the gcp project that called the +// command. go/sas-legacy-customer-migration +func (r *CustomersService) MigrateOrganization(sasportalmigrateorganizationrequest *SasPortalMigrateOrganizationRequest) *CustomersMigrateOrganizationCall { + c := &CustomersMigrateOrganizationCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.sasportalmigrateorganizationrequest = sasportalmigrateorganizationrequest + 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 *CustomersMigrateOrganizationCall) Fields(s ...googleapi.Field) *CustomersMigrateOrganizationCall { + 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 *CustomersMigrateOrganizationCall) Context(ctx context.Context) *CustomersMigrateOrganizationCall { + 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 *CustomersMigrateOrganizationCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *CustomersMigrateOrganizationCall) 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.sasportalmigrateorganizationrequest) + 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, "v1alpha1/customers:migrateOrganization") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("POST", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "sasportal.customers.migrateOrganization" call. +// Exactly one of *SasPortalOperation or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *SasPortalOperation.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 *CustomersMigrateOrganizationCall) Do(opts ...googleapi.CallOption) (*SasPortalOperation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &SasPortalOperation{ + 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": "Migrates a SAS organization to the cloud. This will create GCP projects for each deployment and associate them. The SAS Organization is linked to the gcp project that called the command. go/sas-legacy-customer-migration", + // "flatPath": "v1alpha1/customers:migrateOrganization", + // "httpMethod": "POST", + // "id": "sasportal.customers.migrateOrganization", + // "parameterOrder": [], + // "parameters": {}, + // "path": "v1alpha1/customers:migrateOrganization", + // "request": { + // "$ref": "SasPortalMigrateOrganizationRequest" + // }, + // "response": { + // "$ref": "SasPortalOperation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/sasportal" + // ] + // } + +} + // method id "sasportal.customers.patch": type CustomersPatchCall struct { diff --git a/searchads360/v0/searchads360-api.json b/searchads360/v0/searchads360-api.json index c05106c26f7..7b97bba024f 100644 --- a/searchads360/v0/searchads360-api.json +++ b/searchads360/v0/searchads360-api.json @@ -106,6 +106,23 @@ "protocol": "rest", "resources": { "customers": { + "methods": { + "listAccessibleCustomers": { + "description": "Returns resource names of customers directly accessible by the user authenticating the call. List of thrown errors: [AuthenticationError]() [AuthorizationError]() [HeaderError]() [InternalError]() [QuotaError]() [RequestError]()", + "flatPath": "v0/customers:listAccessibleCustomers", + "httpMethod": "GET", + "id": "searchads360.customers.listAccessibleCustomers", + "parameterOrder": [], + "parameters": {}, + "path": "v0/customers:listAccessibleCustomers", + "response": { + "$ref": "GoogleAdsSearchads360V0Services__ListAccessibleCustomersResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/doubleclicksearch" + ] + } + }, "resources": { "customColumns": { "methods": { @@ -243,7 +260,7 @@ } } }, - "revision": "20230504", + "revision": "20230625", "rootUrl": "https://searchads360.googleapis.com/", "schemas": { "GoogleAdsSearchads360V0Common__AgeRangeInfo": { @@ -959,6 +976,33 @@ }, "type": "object" }, + "GoogleAdsSearchads360V0Common__MobileAppAsset": { + "description": "An asset representing a mobile app.", + "id": "GoogleAdsSearchads360V0Common__MobileAppAsset", + "properties": { + "appId": { + "description": "Required. A string that uniquely identifies a mobile application. It should just contain the platform native id, like \"com.android.ebay\" for Android or \"12345689\" for iOS.", + "type": "string" + }, + "appStore": { + "description": "Required. The application store that distributes this specific app.", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "APPLE_APP_STORE", + "GOOGLE_APP_STORE" + ], + "enumDescriptions": [ + "Not specified.", + "Used for return value only. Represents value unknown in this version.", + "Mobile app vendor for Apple app store.", + "Mobile app vendor for Google app store." + ], + "type": "string" + } + }, + "type": "object" + }, "GoogleAdsSearchads360V0Common__PercentCpc": { "description": "A bidding strategy where bids are a fraction of the advertised price for some good or service.", "id": "GoogleAdsSearchads360V0Common__PercentCpc", @@ -1108,6 +1152,30 @@ "description": "Segment only fields.", "id": "GoogleAdsSearchads360V0Common__Segments", "properties": { + "adNetworkType": { + "description": "Ad network type.", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "SEARCH", + "SEARCH_PARTNERS", + "CONTENT", + "YOUTUBE_SEARCH", + "YOUTUBE_WATCH", + "MIXED" + ], + "enumDescriptions": [ + "Not specified.", + "The value is unknown in this version.", + "Google search.", + "Search partners.", + "Display Network.", + "YouTube Search.", + "YouTube Videos", + "Cross-network." + ], + "type": "string" + }, "conversionAction": { "description": "Resource name of the conversion action.", "type": "string" @@ -1645,6 +1713,22 @@ ], "type": "string" }, + "customColumnError": { + "description": "The reasons for the custom column error", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "CUSTOM_COLUMN_NOT_FOUND", + "CUSTOM_COLUMN_NOT_AVAILABLE" + ], + "enumDescriptions": [ + "Enum unspecified.", + "The received error code is not known in this version.", + "The custom column has not been found.", + "The custom column is not available." + ], + "type": "string" + }, "dateError": { "description": "The reasons for the date error", "enum": [ @@ -3133,6 +3217,176 @@ }, "type": "object" }, + "GoogleAdsSearchads360V0Resources__Asset": { + "description": "Asset is a part of an ad which can be shared across multiple ads. It can be an image (ImageAsset), a video (YoutubeVideoAsset), etc. Assets are immutable and cannot be removed. To stop an asset from serving, remove the asset from the entity that is using it.", + "id": "GoogleAdsSearchads360V0Resources__Asset", + "properties": { + "creationTime": { + "description": "Output only. The timestamp when this asset was created. The timestamp is in the customer's time zone and in \"yyyy-MM-dd HH:mm:ss\" format.", + "readOnly": true, + "type": "string" + }, + "engineStatus": { + "description": "Output only. The Engine Status for an asset.", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "SERVING", + "SERVING_LIMITED", + "DISAPPROVED", + "DISABLED", + "REMOVED" + ], + "enumDescriptions": [ + "Not specified.", + "Used for return value only. Represents value unknown in this version.", + "The asset is active.", + "The asset is active limited.", + "The asset is disapproved (not eligible).", + "The asset is inactive (pending).", + "The asset has been removed." + ], + "readOnly": true, + "type": "string" + }, + "finalUrls": { + "description": "A list of possible final URLs after all cross domain redirects.", + "items": { + "type": "string" + }, + "type": "array" + }, + "id": { + "description": "Output only. The ID of the asset.", + "format": "int64", + "readOnly": true, + "type": "string" + }, + "lastModifiedTime": { + "description": "Output only. The datetime when this asset was last modified. The datetime is in the customer's time zone and in \"yyyy-MM-dd HH:mm:ss.ssssss\" format.", + "readOnly": true, + "type": "string" + }, + "mobileAppAsset": { + "$ref": "GoogleAdsSearchads360V0Common__MobileAppAsset", + "description": "A mobile app asset." + }, + "resourceName": { + "description": "Immutable. The resource name of the asset. Asset resource names have the form: `customers/{customer_id}/assets/{asset_id}`", + "type": "string" + }, + "status": { + "description": "Output only. The status of the asset.", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "ENABLED", + "REMOVED", + "ARCHIVED", + "PENDING_SYSTEM_GENERATED" + ], + "enumDescriptions": [ + "The status has not been specified.", + "The received value is not known in this version. This is a response-only value.", + "The asset is enabled.", + "The asset is removed.", + "The asset is archived.", + "The asset is system generated pending user review." + ], + "readOnly": true, + "type": "string" + }, + "trackingUrlTemplate": { + "description": "URL template for constructing a tracking URL.", + "type": "string" + }, + "type": { + "description": "Output only. Type of the asset.", + "enum": [ + "UNSPECIFIED", + "UNKNOWN", + "YOUTUBE_VIDEO", + "MEDIA_BUNDLE", + "IMAGE", + "TEXT", + "LEAD_FORM", + "BOOK_ON_GOOGLE", + "PROMOTION", + "CALLOUT", + "STRUCTURED_SNIPPET", + "SITELINK", + "PAGE_FEED", + "DYNAMIC_EDUCATION", + "MOBILE_APP", + "HOTEL_CALLOUT", + "CALL", + "PRICE", + "CALL_TO_ACTION", + "DYNAMIC_REAL_ESTATE", + "DYNAMIC_CUSTOM", + "DYNAMIC_HOTELS_AND_RENTALS", + "DYNAMIC_FLIGHTS", + "DISCOVERY_CAROUSEL_CARD", + "DYNAMIC_TRAVEL", + "DYNAMIC_LOCAL", + "DYNAMIC_JOBS", + "LOCATION", + "HOTEL_PROPERTY" + ], + "enumDescriptions": [ + "Not specified.", + "Used for return value only. Represents value unknown in this version.", + "YouTube video asset.", + "Media bundle asset.", + "Image asset.", + "Text asset.", + "Lead form asset.", + "Book on Google asset.", + "Promotion asset.", + "Callout asset.", + "Structured Snippet asset.", + "Sitelink asset.", + "Page Feed asset.", + "Dynamic Education asset.", + "Mobile app asset.", + "Hotel callout asset.", + "Call asset.", + "Price asset.", + "Call to action asset.", + "Dynamic real estate asset.", + "Dynamic custom asset.", + "Dynamic hotels and rentals asset.", + "Dynamic flights asset.", + "Discovery Carousel Card asset.", + "Dynamic travel asset.", + "Dynamic local asset.", + "Dynamic jobs asset.", + "Location asset.", + "Hotel property asset." + ], + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "GoogleAdsSearchads360V0Resources__AssetSet": { + "description": "An asset set representing a collection of assets. Use AssetSetAsset to link an asset to the asset set.", + "id": "GoogleAdsSearchads360V0Resources__AssetSet", + "properties": { + "id": { + "description": "Output only. The ID of the asset set.", + "format": "int64", + "readOnly": true, + "type": "string" + }, + "resourceName": { + "description": "Immutable. The resource name of the asset set. Asset set resource names have the form: `customers/{customer_id}/assetSets/{asset_set_id}`", + "type": "string" + } + }, + "type": "object" + }, "GoogleAdsSearchads360V0Resources__BiddingStrategy": { "description": "A bidding strategy.", "id": "GoogleAdsSearchads360V0Resources__BiddingStrategy", @@ -4194,7 +4448,11 @@ "SMART_CAMPAIGN_MAP_DIRECTIONS", "SMART_CAMPAIGN_TRACKED_CALLS", "STORE_VISITS", - "WEBPAGE_CODELESS" + "WEBPAGE_CODELESS", + "UNIVERSAL_ANALYTICS_GOAL", + "UNIVERSAL_ANALYTICS_TRANSACTION", + "GOOGLE_ANALYTICS_4_CUSTOM", + "GOOGLE_ANALYTICS_4_PURCHASE" ], "enumDescriptions": [ "Not specified.", @@ -4234,7 +4492,11 @@ "The user requests directions to a business location within Google Maps. Smart campaign only. Read only.", "Call conversions that occur on Smart campaign Ads with call tracking setup, using Smart campaign custom criteria. Read only.", "Conversions that occur when a user visits an advertiser's retail store. Read only.", - "Conversions created from website events (such as form submissions or page loads), that don't use individually coded event snippets." + "Conversions created from website events (such as form submissions or page loads), that don't use individually coded event snippets.", + "Conversions that come from linked Universal Analytics goals.", + "Conversions that come from linked Universal Analytics transactions.", + "Conversions that come from linked Google Analytics 4 custom event conversions.", + "Conversions that come from linked Google Analytics 4 purchase conversions." ], "type": "string" }, @@ -5000,6 +5262,20 @@ }, "type": "object" }, + "GoogleAdsSearchads360V0Services__ListAccessibleCustomersResponse": { + "description": "Response message for CustomerService.ListAccessibleCustomers.", + "id": "GoogleAdsSearchads360V0Services__ListAccessibleCustomersResponse", + "properties": { + "resourceNames": { + "description": "Resource name of customers directly accessible by the user authenticating the call.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, "GoogleAdsSearchads360V0Services__ListCustomColumnsResponse": { "description": "Response message for fetching all custom columns associated with a customer.", "id": "GoogleAdsSearchads360V0Services__ListCustomColumnsResponse", @@ -5054,6 +5330,14 @@ "$ref": "GoogleAdsSearchads360V0Resources__AgeRangeView", "description": "The age range view referenced in the query." }, + "asset": { + "$ref": "GoogleAdsSearchads360V0Resources__Asset", + "description": "The asset referenced in the query." + }, + "assetSet": { + "$ref": "GoogleAdsSearchads360V0Resources__AssetSet", + "description": "The asset set referenced in the query." + }, "biddingStrategy": { "$ref": "GoogleAdsSearchads360V0Resources__BiddingStrategy", "description": "The bidding strategy referenced in the query." diff --git a/searchads360/v0/searchads360-gen.go b/searchads360/v0/searchads360-gen.go index 0500dcca483..b5f184aa76a 100644 --- a/searchads360/v0/searchads360-gen.go +++ b/searchads360/v0/searchads360-gen.go @@ -1257,6 +1257,48 @@ func (s *GoogleAdsSearchads360V0Common__Metrics) UnmarshalJSON(data []byte) erro return nil } +// GoogleAdsSearchads360V0Common__MobileAppAsset: An asset representing +// a mobile app. +type GoogleAdsSearchads360V0Common__MobileAppAsset struct { + // AppId: Required. A string that uniquely identifies a mobile + // application. It should just contain the platform native id, like + // "com.android.ebay" for Android or "12345689" for iOS. + AppId string `json:"appId,omitempty"` + + // AppStore: Required. The application store that distributes this + // specific app. + // + // Possible values: + // "UNSPECIFIED" - Not specified. + // "UNKNOWN" - Used for return value only. Represents value unknown in + // this version. + // "APPLE_APP_STORE" - Mobile app vendor for Apple app store. + // "GOOGLE_APP_STORE" - Mobile app vendor for Google app store. + AppStore string `json:"appStore,omitempty"` + + // ForceSendFields is a list of field names (e.g. "AppId") 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. "AppId") 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 *GoogleAdsSearchads360V0Common__MobileAppAsset) MarshalJSON() ([]byte, error) { + type NoMethod GoogleAdsSearchads360V0Common__MobileAppAsset + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // GoogleAdsSearchads360V0Common__PercentCpc: A bidding strategy where // bids are a fraction of the advertised price for some good or service. type GoogleAdsSearchads360V0Common__PercentCpc struct { @@ -1499,6 +1541,19 @@ func (s *GoogleAdsSearchads360V0Common__SearchAds360TextAdInfo) MarshalJSON() ([ // GoogleAdsSearchads360V0Common__Segments: Segment only fields. type GoogleAdsSearchads360V0Common__Segments struct { + // AdNetworkType: Ad network type. + // + // Possible values: + // "UNSPECIFIED" - Not specified. + // "UNKNOWN" - The value is unknown in this version. + // "SEARCH" - Google search. + // "SEARCH_PARTNERS" - Search partners. + // "CONTENT" - Display Network. + // "YOUTUBE_SEARCH" - YouTube Search. + // "YOUTUBE_WATCH" - YouTube Videos + // "MIXED" - Cross-network. + AdNetworkType string `json:"adNetworkType,omitempty"` + // ConversionAction: Resource name of the conversion action. ConversionAction string `json:"conversionAction,omitempty"` @@ -1602,7 +1657,7 @@ type GoogleAdsSearchads360V0Common__Segments struct { // Year: Year, formatted as yyyy. Year int64 `json:"year,omitempty"` - // ForceSendFields is a list of field names (e.g. "ConversionAction") to + // ForceSendFields is a list of field names (e.g. "AdNetworkType") 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 @@ -1610,13 +1665,12 @@ type GoogleAdsSearchads360V0Common__Segments struct { // This may be used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "ConversionAction") 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. "AdNetworkType") 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:"-"` } @@ -2298,6 +2352,15 @@ type GoogleAdsSearchads360V0Errors__ErrorCode struct { // metrics queried. AuthorizationError string `json:"authorizationError,omitempty"` + // CustomColumnError: The reasons for the custom column error + // + // Possible values: + // "UNSPECIFIED" - Enum unspecified. + // "UNKNOWN" - The received error code is not known in this version. + // "CUSTOM_COLUMN_NOT_FOUND" - The custom column has not been found. + // "CUSTOM_COLUMN_NOT_AVAILABLE" - The custom column is not available. + CustomColumnError string `json:"customColumnError,omitempty"` + // DateError: The reasons for the date error // // Possible values: @@ -4123,6 +4186,159 @@ func (s *GoogleAdsSearchads360V0Resources__AgeRangeView) MarshalJSON() ([]byte, return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// GoogleAdsSearchads360V0Resources__Asset: Asset is a part of an ad +// which can be shared across multiple ads. It can be an image +// (ImageAsset), a video (YoutubeVideoAsset), etc. Assets are immutable +// and cannot be removed. To stop an asset from serving, remove the +// asset from the entity that is using it. +type GoogleAdsSearchads360V0Resources__Asset struct { + // CreationTime: Output only. The timestamp when this asset was created. + // The timestamp is in the customer's time zone and in "yyyy-MM-dd + // HH:mm:ss" format. + CreationTime string `json:"creationTime,omitempty"` + + // EngineStatus: Output only. The Engine Status for an asset. + // + // Possible values: + // "UNSPECIFIED" - Not specified. + // "UNKNOWN" - Used for return value only. Represents value unknown in + // this version. + // "SERVING" - The asset is active. + // "SERVING_LIMITED" - The asset is active limited. + // "DISAPPROVED" - The asset is disapproved (not eligible). + // "DISABLED" - The asset is inactive (pending). + // "REMOVED" - The asset has been removed. + EngineStatus string `json:"engineStatus,omitempty"` + + // FinalUrls: A list of possible final URLs after all cross domain + // redirects. + FinalUrls []string `json:"finalUrls,omitempty"` + + // Id: Output only. The ID of the asset. + Id int64 `json:"id,omitempty,string"` + + // LastModifiedTime: Output only. The datetime when this asset was last + // modified. The datetime is in the customer's time zone and in + // "yyyy-MM-dd HH:mm:ss.ssssss" format. + LastModifiedTime string `json:"lastModifiedTime,omitempty"` + + // MobileAppAsset: A mobile app asset. + MobileAppAsset *GoogleAdsSearchads360V0Common__MobileAppAsset `json:"mobileAppAsset,omitempty"` + + // ResourceName: Immutable. The resource name of the asset. Asset + // resource names have the form: + // `customers/{customer_id}/assets/{asset_id}` + ResourceName string `json:"resourceName,omitempty"` + + // Status: Output only. The status of the asset. + // + // Possible values: + // "UNSPECIFIED" - The status has not been specified. + // "UNKNOWN" - The received value is not known in this version. This + // is a response-only value. + // "ENABLED" - The asset is enabled. + // "REMOVED" - The asset is removed. + // "ARCHIVED" - The asset is archived. + // "PENDING_SYSTEM_GENERATED" - The asset is system generated pending + // user review. + Status string `json:"status,omitempty"` + + // TrackingUrlTemplate: URL template for constructing a tracking URL. + TrackingUrlTemplate string `json:"trackingUrlTemplate,omitempty"` + + // Type: Output only. Type of the asset. + // + // Possible values: + // "UNSPECIFIED" - Not specified. + // "UNKNOWN" - Used for return value only. Represents value unknown in + // this version. + // "YOUTUBE_VIDEO" - YouTube video asset. + // "MEDIA_BUNDLE" - Media bundle asset. + // "IMAGE" - Image asset. + // "TEXT" - Text asset. + // "LEAD_FORM" - Lead form asset. + // "BOOK_ON_GOOGLE" - Book on Google asset. + // "PROMOTION" - Promotion asset. + // "CALLOUT" - Callout asset. + // "STRUCTURED_SNIPPET" - Structured Snippet asset. + // "SITELINK" - Sitelink asset. + // "PAGE_FEED" - Page Feed asset. + // "DYNAMIC_EDUCATION" - Dynamic Education asset. + // "MOBILE_APP" - Mobile app asset. + // "HOTEL_CALLOUT" - Hotel callout asset. + // "CALL" - Call asset. + // "PRICE" - Price asset. + // "CALL_TO_ACTION" - Call to action asset. + // "DYNAMIC_REAL_ESTATE" - Dynamic real estate asset. + // "DYNAMIC_CUSTOM" - Dynamic custom asset. + // "DYNAMIC_HOTELS_AND_RENTALS" - Dynamic hotels and rentals asset. + // "DYNAMIC_FLIGHTS" - Dynamic flights asset. + // "DISCOVERY_CAROUSEL_CARD" - Discovery Carousel Card asset. + // "DYNAMIC_TRAVEL" - Dynamic travel asset. + // "DYNAMIC_LOCAL" - Dynamic local asset. + // "DYNAMIC_JOBS" - Dynamic jobs asset. + // "LOCATION" - Location asset. + // "HOTEL_PROPERTY" - Hotel property asset. + Type string `json:"type,omitempty"` + + // ForceSendFields is a list of field names (e.g. "CreationTime") 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. "CreationTime") 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 *GoogleAdsSearchads360V0Resources__Asset) MarshalJSON() ([]byte, error) { + type NoMethod GoogleAdsSearchads360V0Resources__Asset + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleAdsSearchads360V0Resources__AssetSet: An asset set representing +// a collection of assets. Use AssetSetAsset to link an asset to the +// asset set. +type GoogleAdsSearchads360V0Resources__AssetSet struct { + // Id: Output only. The ID of the asset set. + Id int64 `json:"id,omitempty,string"` + + // ResourceName: Immutable. The resource name of the asset set. Asset + // set resource names have the form: + // `customers/{customer_id}/assetSets/{asset_set_id}` + ResourceName string `json:"resourceName,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Id") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Id") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleAdsSearchads360V0Resources__AssetSet) MarshalJSON() ([]byte, error) { + type NoMethod GoogleAdsSearchads360V0Resources__AssetSet + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // GoogleAdsSearchads360V0Resources__BiddingStrategy: A bidding // strategy. type GoogleAdsSearchads360V0Resources__BiddingStrategy struct { @@ -5270,6 +5486,14 @@ type GoogleAdsSearchads360V0Resources__ConversionAction struct { // "WEBPAGE_CODELESS" - Conversions created from website events (such // as form submissions or page loads), that don't use individually coded // event snippets. + // "UNIVERSAL_ANALYTICS_GOAL" - Conversions that come from linked + // Universal Analytics goals. + // "UNIVERSAL_ANALYTICS_TRANSACTION" - Conversions that come from + // linked Universal Analytics transactions. + // "GOOGLE_ANALYTICS_4_CUSTOM" - Conversions that come from linked + // Google Analytics 4 custom event conversions. + // "GOOGLE_ANALYTICS_4_PURCHASE" - Conversions that come from linked + // Google Analytics 4 purchase conversions. Type string `json:"type,omitempty"` // ValueSettings: Settings related to the value for conversion events @@ -6246,6 +6470,40 @@ func (s *GoogleAdsSearchads360V0Services__CustomColumnHeader) MarshalJSON() ([]b return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// GoogleAdsSearchads360V0Services__ListAccessibleCustomersResponse: +// Response message for CustomerService.ListAccessibleCustomers. +type GoogleAdsSearchads360V0Services__ListAccessibleCustomersResponse struct { + // ResourceNames: Resource name of customers directly accessible by the + // user authenticating the call. + ResourceNames []string `json:"resourceNames,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "ResourceNames") 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. "ResourceNames") 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 *GoogleAdsSearchads360V0Services__ListAccessibleCustomersResponse) MarshalJSON() ([]byte, error) { + type NoMethod GoogleAdsSearchads360V0Services__ListAccessibleCustomersResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // GoogleAdsSearchads360V0Services__ListCustomColumnsResponse: Response // message for fetching all custom columns associated with a customer. type GoogleAdsSearchads360V0Services__ListCustomColumnsResponse struct { @@ -6311,6 +6569,12 @@ type GoogleAdsSearchads360V0Services__SearchAds360Row struct { // AgeRangeView: The age range view referenced in the query. AgeRangeView *GoogleAdsSearchads360V0Resources__AgeRangeView `json:"ageRangeView,omitempty"` + // Asset: The asset referenced in the query. + Asset *GoogleAdsSearchads360V0Resources__Asset `json:"asset,omitempty"` + + // AssetSet: The asset set referenced in the query. + AssetSet *GoogleAdsSearchads360V0Resources__AssetSet `json:"assetSet,omitempty"` + // BiddingStrategy: The bidding strategy referenced in the query. BiddingStrategy *GoogleAdsSearchads360V0Resources__BiddingStrategy `json:"biddingStrategy,omitempty"` @@ -6604,6 +6868,141 @@ func (s *GoogleAdsSearchads360V0Services__SearchSearchAds360Response) MarshalJSO return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// method id "searchads360.customers.listAccessibleCustomers": + +type CustomersListAccessibleCustomersCall struct { + s *Service + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// ListAccessibleCustomers: Returns resource names of customers directly +// accessible by the user authenticating the call. List of thrown +// errors: AuthenticationError () [AuthorizationError]() HeaderError () +// [InternalError]() QuotaError () [RequestError]() +func (r *CustomersService) ListAccessibleCustomers() *CustomersListAccessibleCustomersCall { + c := &CustomersListAccessibleCustomersCall{s: r.s, urlParams_: make(gensupport.URLParams)} + 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 *CustomersListAccessibleCustomersCall) Fields(s ...googleapi.Field) *CustomersListAccessibleCustomersCall { + 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 *CustomersListAccessibleCustomersCall) IfNoneMatch(entityTag string) *CustomersListAccessibleCustomersCall { + 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 *CustomersListAccessibleCustomersCall) Context(ctx context.Context) *CustomersListAccessibleCustomersCall { + 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 *CustomersListAccessibleCustomersCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *CustomersListAccessibleCustomersCall) 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, "v0/customers:listAccessibleCustomers") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("GET", urls, body) + if err != nil { + return nil, err + } + req.Header = reqHeaders + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "searchads360.customers.listAccessibleCustomers" call. +// Exactly one of +// *GoogleAdsSearchads360V0Services__ListAccessibleCustomersResponse or +// error will be non-nil. Any non-2xx status code is an error. Response +// headers are in either +// *GoogleAdsSearchads360V0Services__ListAccessibleCustomersResponse.Serv +// erResponse.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 *CustomersListAccessibleCustomersCall) Do(opts ...googleapi.CallOption) (*GoogleAdsSearchads360V0Services__ListAccessibleCustomersResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &GoogleAdsSearchads360V0Services__ListAccessibleCustomersResponse{ + 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 resource names of customers directly accessible by the user authenticating the call. List of thrown errors: [AuthenticationError]() [AuthorizationError]() [HeaderError]() [InternalError]() [QuotaError]() [RequestError]()", + // "flatPath": "v0/customers:listAccessibleCustomers", + // "httpMethod": "GET", + // "id": "searchads360.customers.listAccessibleCustomers", + // "parameterOrder": [], + // "parameters": {}, + // "path": "v0/customers:listAccessibleCustomers", + // "response": { + // "$ref": "GoogleAdsSearchads360V0Services__ListAccessibleCustomersResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/doubleclicksearch" + // ] + // } + +} + // method id "searchads360.customers.customColumns.get": type CustomersCustomColumnsGetCall struct { diff --git a/searchconsole/v1/searchconsole-api.json b/searchconsole/v1/searchconsole-api.json index 80ce11f5311..9e620f9f94e 100644 --- a/searchconsole/v1/searchconsole-api.json +++ b/searchconsole/v1/searchconsole-api.json @@ -400,7 +400,7 @@ } } }, - "revision": "20220816", + "revision": "20230701", "rootUrl": "https://searchconsole.googleapis.com/", "schemas": { "AmpInspectionResult": { @@ -1416,6 +1416,15 @@ "PATTERN_SITEMAP", "OCEANFRONT" ], + "enumDeprecated": [ + false, + false, + false, + false, + false, + true, + true + ], "enumDescriptions": [ "", "", @@ -1440,6 +1449,7 @@ "id": "WmxSitemapContent", "properties": { "indexed": { + "deprecated": true, "description": "*Deprecated; do not use.*", "format": "int64", "type": "string" @@ -1462,6 +1472,17 @@ "IOS_APP", "DATA_FEED_ELEMENT" ], + "enumDeprecated": [ + false, + false, + false, + false, + false, + false, + true, + false, + true + ], "enumDescriptions": [ "", "", diff --git a/servicenetworking/v1/servicenetworking-api.json b/servicenetworking/v1/servicenetworking-api.json index 874a4b6f065..48cbbf0d3aa 100644 --- a/servicenetworking/v1/servicenetworking-api.json +++ b/servicenetworking/v1/servicenetworking-api.json @@ -865,7 +865,7 @@ } } }, - "revision": "20230611", + "revision": "20230703", "rootUrl": "https://servicenetworking.googleapis.com/", "schemas": { "AddDnsRecordSetMetadata": { @@ -1247,6 +1247,7 @@ "type": "string" }, "minDeadline": { + "deprecated": true, "description": "Deprecated, do not use.", "format": "double", "type": "number" @@ -1438,6 +1439,7 @@ "type": "array" }, "referenceDocsUri": { + "deprecated": true, "description": "Link to automatically generated reference documentation. Example: https://cloud.google.com/nodejs/docs/reference/asset/latest", "type": "string" } @@ -1899,6 +1901,7 @@ "id": "Endpoint", "properties": { "aliases": { + "deprecated": true, "description": "Unimplemented. Dot not use. DEPRECATED: This field is no longer supported. Instead of using aliases, please specify multiple google.api.Endpoint for each of the intended aliases. Additional names that this endpoint will be hosted on.", "items": { "type": "string" @@ -2636,6 +2639,7 @@ "type": "string" }, "launchStage": { + "deprecated": true, "description": "Deprecated. Must use the MetricDescriptor.launch_stage instead.", "enum": [ "LAUNCH_STAGE_UNSPECIFIED", @@ -2939,7 +2943,7 @@ "type": "string" }, "role": { - "description": "Required. Role to apply. Only allowlisted roles can be used at the specified granularity. The role must be one of the following: - 'roles/container.hostServiceAgentUser' applied on the shared VPC host project - 'roles/compute.securityAdmin' applied on the shared VPC host project", + "description": "Required. Role to apply. Only allowlisted roles can be used at the specified granularity. The role must be one of the following: - 'roles/container.hostServiceAgentUser' applied on the shared VPC host project - 'roles/compute.securityAdmin' applied on the shared VPC host project - 'roles/compute.networkAdmin' applied on the shared VPC host project - 'roles/compute.xpnAdmin' applied on the shared VPC host project - 'roles/dns.admin' applied on the shared VPC host project", "type": "string" } }, diff --git a/servicenetworking/v1/servicenetworking-gen.go b/servicenetworking/v1/servicenetworking-gen.go index 4bad62e4b8f..d23aaf6aa5c 100644 --- a/servicenetworking/v1/servicenetworking-gen.go +++ b/servicenetworking/v1/servicenetworking-gen.go @@ -4215,7 +4215,10 @@ type PolicyBinding struct { // the specified granularity. The role must be one of the following: - // 'roles/container.hostServiceAgentUser' applied on the shared VPC host // project - 'roles/compute.securityAdmin' applied on the shared VPC - // host project + // host project - 'roles/compute.networkAdmin' applied on the shared VPC + // host project - 'roles/compute.xpnAdmin' applied on the shared VPC + // host project - 'roles/dns.admin' applied on the shared VPC host + // project Role string `json:"role,omitempty"` // ForceSendFields is a list of field names (e.g. "Member") to diff --git a/servicenetworking/v1beta/servicenetworking-api.json b/servicenetworking/v1beta/servicenetworking-api.json index 0610c7e0bc0..10cc4cb7cb7 100644 --- a/servicenetworking/v1beta/servicenetworking-api.json +++ b/servicenetworking/v1beta/servicenetworking-api.json @@ -307,7 +307,7 @@ } } }, - "revision": "20230611", + "revision": "20230703", "rootUrl": "https://servicenetworking.googleapis.com/", "schemas": { "AddDnsRecordSetMetadata": { @@ -586,6 +586,7 @@ "type": "string" }, "minDeadline": { + "deprecated": true, "description": "Deprecated, do not use.", "format": "double", "type": "number" @@ -771,6 +772,7 @@ "type": "array" }, "referenceDocsUri": { + "deprecated": true, "description": "Link to automatically generated reference documentation. Example: https://cloud.google.com/nodejs/docs/reference/asset/latest", "type": "string" } @@ -1181,6 +1183,7 @@ "id": "Endpoint", "properties": { "aliases": { + "deprecated": true, "description": "Unimplemented. Dot not use. DEPRECATED: This field is no longer supported. Instead of using aliases, please specify multiple google.api.Endpoint for each of the intended aliases. Additional names that this endpoint will be hosted on.", "items": { "type": "string" @@ -1886,6 +1889,7 @@ "type": "string" }, "launchStage": { + "deprecated": true, "description": "Deprecated. Must use the MetricDescriptor.launch_stage instead.", "enum": [ "LAUNCH_STAGE_UNSPECIFIED", @@ -2189,7 +2193,7 @@ "type": "string" }, "role": { - "description": "Required. Role to apply. Only allowlisted roles can be used at the specified granularity. The role must be one of the following: - 'roles/container.hostServiceAgentUser' applied on the shared VPC host project - 'roles/compute.securityAdmin' applied on the shared VPC host project", + "description": "Required. Role to apply. Only allowlisted roles can be used at the specified granularity. The role must be one of the following: - 'roles/container.hostServiceAgentUser' applied on the shared VPC host project - 'roles/compute.securityAdmin' applied on the shared VPC host project - 'roles/compute.networkAdmin' applied on the shared VPC host project - 'roles/compute.xpnAdmin' applied on the shared VPC host project - 'roles/dns.admin' applied on the shared VPC host project", "type": "string" } }, diff --git a/servicenetworking/v1beta/servicenetworking-gen.go b/servicenetworking/v1beta/servicenetworking-gen.go index 1bd99e20339..a8b7d1f41e7 100644 --- a/servicenetworking/v1beta/servicenetworking-gen.go +++ b/servicenetworking/v1beta/servicenetworking-gen.go @@ -3712,7 +3712,10 @@ type PolicyBinding struct { // the specified granularity. The role must be one of the following: - // 'roles/container.hostServiceAgentUser' applied on the shared VPC host // project - 'roles/compute.securityAdmin' applied on the shared VPC - // host project + // host project - 'roles/compute.networkAdmin' applied on the shared VPC + // host project - 'roles/compute.xpnAdmin' applied on the shared VPC + // host project - 'roles/dns.admin' applied on the shared VPC host + // project Role string `json:"role,omitempty"` // ForceSendFields is a list of field names (e.g. "Member") to diff --git a/sqladmin/v1/sqladmin-api.json b/sqladmin/v1/sqladmin-api.json index 05c2ea68bd8..204e4891620 100644 --- a/sqladmin/v1/sqladmin-api.json +++ b/sqladmin/v1/sqladmin-api.json @@ -1495,6 +1495,38 @@ "https://www.googleapis.com/auth/sqlservice.admin" ] }, + "getLatestRecoveryTime": { + "description": "Get Latest Recovery Time for a given instance.", + "flatPath": "v1/projects/{project}/instances/{instance}/getLatestRecoveryTime", + "httpMethod": "GET", + "id": "sql.projects.instances.getLatestRecoveryTime", + "parameterOrder": [ + "project", + "instance" + ], + "parameters": { + "instance": { + "description": "Cloud SQL instance ID. This does not include the project ID.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID of the project that contains the instance.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "v1/projects/{project}/instances/{instance}/getLatestRecoveryTime", + "response": { + "$ref": "SqlInstancesGetLatestRecoveryTimeResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/sqlservice.admin" + ] + }, "performDiskShrink": { "description": "Perform Disk Shrink on primary instance.", "flatPath": "v1/projects/{project}/instances/{instance}/performDiskShrink", @@ -2090,7 +2122,7 @@ } } }, - "revision": "20230607", + "revision": "20230627", "rootUrl": "https://sqladmin.googleapis.com/", "schemas": { "AclEntry": { @@ -2470,6 +2502,10 @@ "description": "Timestamp, if specified, identifies the time to which the source instance is cloned.", "format": "google-datetime", "type": "string" + }, + "preferredZone": { + "description": "Optional. (Point-in-time recovery for PostgreSQL only) Clone to an instance in the specified zone. If no zone is specified, clone to the same zone as the source instance.", + "type": "string" } }, "type": "object" @@ -2486,6 +2522,12 @@ "SECOND_GEN", "EXTERNAL" ], + "enumDeprecated": [ + false, + true, + false, + false + ], "enumDescriptions": [ "This is an unknown backend type for instance.", "V1 speckle instance.", @@ -2535,6 +2577,45 @@ "SQLSERVER_2022_EXPRESS", "SQLSERVER_2022_WEB" ], + "enumDeprecated": [ + false, + true, + true, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + true, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], "enumDescriptions": [ "This is an unknown database version.", "The database version is MySQL 5.1.", @@ -2602,6 +2683,17 @@ }, "type": "object" }, + "DataCacheConfig": { + "description": "Data cache configurations.", + "id": "DataCacheConfig", + "properties": { + "dataCacheEnabled": { + "description": "Whether data cache is enabled for the instance.", + "type": "boolean" + } + }, + "type": "object" + }, "Database": { "description": "Represents a SQL database on the Cloud SQL instance.", "id": "Database", @@ -2679,6 +2771,12 @@ "SECOND_GEN", "EXTERNAL" ], + "enumDeprecated": [ + false, + true, + false, + false + ], "enumDescriptions": [ "This is an unknown backend type for instance.", "V1 speckle instance.", @@ -2698,6 +2796,7 @@ "type": "string" }, "currentDiskSize": { + "deprecated": true, "description": "The current disk usage of the instance in bytes. This property has been deprecated. Use the \"cloudsql.googleapis.com/database/disk/bytes_used\" metric in Cloud Monitoring API instead. Please see [this announcement](https://groups.google.com/d/msg/google-cloud-sql-announce/I_7-F9EBhT0/BtvFtdFeAgAJ) for details.", "format": "int64", "type": "string" @@ -2748,6 +2847,45 @@ "SQLSERVER_2022_EXPRESS", "SQLSERVER_2022_WEB" ], + "enumDeprecated": [ + false, + true, + true, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + true, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], "enumDescriptions": [ "This is an unknown database version.", "The database version is MySQL 5.1.", @@ -2843,6 +2981,7 @@ "type": "array" }, "ipv6Address": { + "deprecated": true, "description": "The IPv6 address assigned to the instance. (Deprecated) This property was applicable only to First Generation instances.", "type": "string" }, @@ -2859,6 +2998,7 @@ "type": "string" }, "maxDiskSize": { + "deprecated": true, "description": "The maximum disk size of the instance in bytes.", "format": "int64", "type": "string" @@ -2938,6 +3078,16 @@ "FAILED", "ONLINE_MAINTENANCE" ], + "enumDeprecated": [ + false, + false, + false, + false, + false, + false, + false, + true + ], "enumDescriptions": [ "The state of the instance is unknown.", "The instance is running, or has been stopped by owner.", @@ -3142,6 +3292,7 @@ "type": "string" }, "copyOnly": { + "deprecated": true, "description": "Deprecated: copy_only is deprecated. Use differential_base instead", "type": "boolean" }, @@ -3330,6 +3481,45 @@ "SQLSERVER_2022_EXPRESS", "SQLSERVER_2022_WEB" ], + "enumDeprecated": [ + false, + true, + true, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + true, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], "enumDescriptions": [ "This is an unknown database version.", "The database version is MySQL 5.1.", @@ -3871,6 +4061,7 @@ "id": "LocationPreference", "properties": { "followGaeApplication": { + "deprecated": true, "description": "The App Engine application to follow, it must be in the same region as the Cloud SQL instance. WARNING: Changing this might restart the instance.", "type": "string" }, @@ -4115,6 +4306,47 @@ "REENCRYPT", "SWITCHOVER" ], + "enumDeprecated": [ + false, + false, + false, + false, + false, + false, + false, + true, + true, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + true, + true, + true, + false, + false, + false, + false, + false, + false + ], "enumDescriptions": [ "Unknown operation type.", "Imports data into a Cloud SQL instance.", @@ -4471,6 +4703,12 @@ "NEVER", "ON_DEMAND" ], + "enumDeprecated": [ + false, + false, + false, + true + ], "enumDescriptions": [ "Unknown activation plan.", "The instance is always up and running.", @@ -4488,6 +4726,7 @@ "description": "Specifies advance machine configuration for the instance relevant only for SQL Server." }, "authorizedGaeApplications": { + "deprecated": true, "description": "The App Engine app IDs that can access this instance. (Deprecated) Applied to First Generation instances only.", "items": { "type": "string" @@ -4531,9 +4770,14 @@ "type": "string" }, "crashSafeReplicationEnabled": { + "deprecated": true, "description": "Configuration specific to read replica instances. Indicates whether database flags for crash-safe replication are enabled. This property was only applicable to First Generation instances.", "type": "boolean" }, + "dataCacheConfig": { + "$ref": "DataCacheConfig", + "description": "Configuration for data cache." + }, "dataDiskSizeGb": { "description": "The size of data disk, in GB. The data disk size minimum is 10GB.", "format": "int64", @@ -4547,6 +4791,12 @@ "PD_HDD", "OBSOLETE_LOCAL_SSD" ], + "enumDeprecated": [ + false, + false, + false, + true + ], "enumDescriptions": [ "This is an unknown data disk type.", "An SSD data disk.", @@ -4577,6 +4827,20 @@ }, "type": "array" }, + "edition": { + "description": "Optional. The edition of the instance.", + "enum": [ + "EDITION_UNSPECIFIED", + "ENTERPRISE", + "ENTERPRISE_PLUS" + ], + "enumDescriptions": [ + "The instance did not specify the edition.", + "The instance is an enterprise edition.", + "The instance is an Enterprise Plus edition." + ], + "type": "string" + }, "insightsConfig": { "$ref": "InsightsConfig", "description": "Insights configuration, for now relevant only for Postgres." @@ -4616,6 +4880,7 @@ "type": "string" }, "replicationType": { + "deprecated": true, "description": "The type of replication this instance uses. This can be either `ASYNCHRONOUS` or `SYNCHRONOUS`. (Deprecated) This property was only applicable to First Generation instances.", "enum": [ "SQL_REPLICATION_TYPE_UNSPECIFIED", @@ -4728,7 +4993,8 @@ "RISKY_BACKUP_ADMIN_PRIVILEGE", "INSUFFICIENT_GCS_PERMISSIONS", "INVALID_FILE_INFO", - "UNSUPPORTED_DATABASE_SETTINGS" + "UNSUPPORTED_DATABASE_SETTINGS", + "MYSQL_PARALLEL_IMPORT_INSUFFICIENT_PRIVILEGE" ], "enumDescriptions": [ "", @@ -4764,7 +5030,8 @@ "Additional BACKUP_ADMIN privilege is granted to the replication user which may lock source MySQL 8 instance for DDLs during initial sync.", "The Cloud Storage bucket is missing necessary permissions.", "The Cloud Storage bucket has an error in the file or contains invalid file information.", - "The source instance has unsupported database settings for migration." + "The source instance has unsupported database settings for migration.", + "The replication user is missing parallel import specific privileges. (e.g. LOCK TABLES) for MySQL." ], "type": "string" } @@ -4791,6 +5058,22 @@ }, "type": "object" }, + "SqlInstancesGetLatestRecoveryTimeResponse": { + "description": "Instance get latest recovery time response.", + "id": "SqlInstancesGetLatestRecoveryTimeResponse", + "properties": { + "kind": { + "description": "This is always `sql#getLatestRecoveryTime`.", + "type": "string" + }, + "latestRecoveryTime": { + "description": "Timestamp, identifies the latest recovery time of the source instance.", + "format": "google-datetime", + "type": "string" + } + }, + "type": "object" + }, "SqlInstancesRescheduleMaintenanceRequestBody": { "description": "Reschedule options for maintenance windows.", "id": "SqlInstancesRescheduleMaintenanceRequestBody", @@ -4942,6 +5225,7 @@ "id": "SqlScheduledMaintenance", "properties": { "canDefer": { + "deprecated": true, "type": "boolean" }, "canReschedule": { @@ -5345,6 +5629,7 @@ "type": "string" }, "nextPageToken": { + "deprecated": true, "description": "Unused.", "type": "string" } diff --git a/sqladmin/v1/sqladmin-gen.go b/sqladmin/v1/sqladmin-gen.go index 922fa040621..667c087cbd6 100644 --- a/sqladmin/v1/sqladmin-gen.go +++ b/sqladmin/v1/sqladmin-gen.go @@ -790,6 +790,11 @@ type CloneContext struct { // the source instance is cloned. PointInTime string `json:"pointInTime,omitempty"` + // PreferredZone: Optional. (Point-in-time recovery for PostgreSQL only) + // Clone to an instance in the specified zone. If no zone is specified, + // clone to the same zone as the source instance. + PreferredZone string `json:"preferredZone,omitempty"` + // ForceSendFields is a list of field names (e.g. "AllocatedIpRange") to // unconditionally include in API requests. By default, fields with // empty or default values are omitted from API requests. However, any @@ -946,6 +951,35 @@ func (s *ConnectSettings) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// DataCacheConfig: Data cache configurations. +type DataCacheConfig struct { + // DataCacheEnabled: Whether data cache is enabled for the instance. + DataCacheEnabled bool `json:"dataCacheEnabled,omitempty"` + + // ForceSendFields is a list of field names (e.g. "DataCacheEnabled") 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. "DataCacheEnabled") 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 *DataCacheConfig) MarshalJSON() ([]byte, error) { + type NoMethod DataCacheConfig + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // Database: Represents a SQL database on the Cloud SQL instance. type Database struct { // Charset: The Cloud SQL charset value. @@ -3834,6 +3868,9 @@ type Settings struct { // Generation instances. CrashSafeReplicationEnabled bool `json:"crashSafeReplicationEnabled,omitempty"` + // DataCacheConfig: Configuration for data cache. + DataCacheConfig *DataCacheConfig `json:"dataCacheConfig,omitempty"` + // DataDiskSizeGb: The size of data disk, in GB. The data disk size // minimum is 10GB. DataDiskSizeGb int64 `json:"dataDiskSizeGb,omitempty,string"` @@ -3865,6 +3902,14 @@ type Settings struct { // DenyMaintenancePeriods: Deny maintenance periods DenyMaintenancePeriods []*DenyMaintenancePeriod `json:"denyMaintenancePeriods,omitempty"` + // Edition: Optional. The edition of the instance. + // + // Possible values: + // "EDITION_UNSPECIFIED" - The instance did not specify the edition. + // "ENTERPRISE" - The instance is an enterprise edition. + // "ENTERPRISE_PLUS" - The instance is an Enterprise Plus edition. + Edition string `json:"edition,omitempty"` + // InsightsConfig: Insights configuration, for now relevant only for // Postgres. InsightsConfig *InsightsConfig `json:"insightsConfig,omitempty"` @@ -4081,6 +4126,9 @@ type SqlExternalSyncSettingError struct { // file or contains invalid file information. // "UNSUPPORTED_DATABASE_SETTINGS" - The source instance has // unsupported database settings for migration. + // "MYSQL_PARALLEL_IMPORT_INSUFFICIENT_PRIVILEGE" - The replication + // user is missing parallel import specific privileges. (e.g. LOCK + // TABLES) for MySQL. Type string `json:"type,omitempty"` // ForceSendFields is a list of field names (e.g. "Detail") to @@ -4146,6 +4194,43 @@ func (s *SqlInstancesGetDiskShrinkConfigResponse) MarshalJSON() ([]byte, error) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// SqlInstancesGetLatestRecoveryTimeResponse: Instance get latest +// recovery time response. +type SqlInstancesGetLatestRecoveryTimeResponse struct { + // Kind: This is always `sql#getLatestRecoveryTime`. + Kind string `json:"kind,omitempty"` + + // LatestRecoveryTime: Timestamp, identifies the latest recovery time of + // the source instance. + LatestRecoveryTime string `json:"latestRecoveryTime,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "Kind") 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. "Kind") 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 *SqlInstancesGetLatestRecoveryTimeResponse) MarshalJSON() ([]byte, error) { + type NoMethod SqlInstancesGetLatestRecoveryTimeResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // SqlInstancesRescheduleMaintenanceRequestBody: Reschedule options for // maintenance windows. type SqlInstancesRescheduleMaintenanceRequestBody struct { @@ -11260,6 +11345,166 @@ func (c *ProjectsInstancesGetDiskShrinkConfigCall) Do(opts ...googleapi.CallOpti } +// method id "sql.projects.instances.getLatestRecoveryTime": + +type ProjectsInstancesGetLatestRecoveryTimeCall struct { + s *Service + project string + instance string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// GetLatestRecoveryTime: Get Latest Recovery Time for a given instance. +// +// - instance: Cloud SQL instance ID. This does not include the project +// ID. +// - project: Project ID of the project that contains the instance. +func (r *ProjectsInstancesService) GetLatestRecoveryTime(project string, instance string) *ProjectsInstancesGetLatestRecoveryTimeCall { + c := &ProjectsInstancesGetLatestRecoveryTimeCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.project = project + c.instance = instance + 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 *ProjectsInstancesGetLatestRecoveryTimeCall) Fields(s ...googleapi.Field) *ProjectsInstancesGetLatestRecoveryTimeCall { + 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 *ProjectsInstancesGetLatestRecoveryTimeCall) IfNoneMatch(entityTag string) *ProjectsInstancesGetLatestRecoveryTimeCall { + 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 *ProjectsInstancesGetLatestRecoveryTimeCall) Context(ctx context.Context) *ProjectsInstancesGetLatestRecoveryTimeCall { + 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 *ProjectsInstancesGetLatestRecoveryTimeCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsInstancesGetLatestRecoveryTimeCall) 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/projects/{project}/instances/{instance}/getLatestRecoveryTime") + 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{ + "project": c.project, + "instance": c.instance, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "sql.projects.instances.getLatestRecoveryTime" call. +// Exactly one of *SqlInstancesGetLatestRecoveryTimeResponse or error +// will be non-nil. Any non-2xx status code is an error. Response +// headers are in either +// *SqlInstancesGetLatestRecoveryTimeResponse.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 *ProjectsInstancesGetLatestRecoveryTimeCall) Do(opts ...googleapi.CallOption) (*SqlInstancesGetLatestRecoveryTimeResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &SqlInstancesGetLatestRecoveryTimeResponse{ + 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": "Get Latest Recovery Time for a given instance.", + // "flatPath": "v1/projects/{project}/instances/{instance}/getLatestRecoveryTime", + // "httpMethod": "GET", + // "id": "sql.projects.instances.getLatestRecoveryTime", + // "parameterOrder": [ + // "project", + // "instance" + // ], + // "parameters": { + // "instance": { + // "description": "Cloud SQL instance ID. This does not include the project ID.", + // "location": "path", + // "required": true, + // "type": "string" + // }, + // "project": { + // "description": "Project ID of the project that contains the instance.", + // "location": "path", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/projects/{project}/instances/{instance}/getLatestRecoveryTime", + // "response": { + // "$ref": "SqlInstancesGetLatestRecoveryTimeResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/sqlservice.admin" + // ] + // } + +} + // method id "sql.projects.instances.performDiskShrink": type ProjectsInstancesPerformDiskShrinkCall struct { diff --git a/sqladmin/v1beta4/sqladmin-api.json b/sqladmin/v1beta4/sqladmin-api.json index 2b0cd6721ca..7885a612e47 100644 --- a/sqladmin/v1beta4/sqladmin-api.json +++ b/sqladmin/v1beta4/sqladmin-api.json @@ -1495,6 +1495,38 @@ "https://www.googleapis.com/auth/sqlservice.admin" ] }, + "getLatestRecoveryTime": { + "description": "Get Latest Recovery Time for a given instance.", + "flatPath": "sql/v1beta4/projects/{project}/instances/{instance}/getLatestRecoveryTime", + "httpMethod": "GET", + "id": "sql.projects.instances.getLatestRecoveryTime", + "parameterOrder": [ + "project", + "instance" + ], + "parameters": { + "instance": { + "description": "Cloud SQL instance ID. This does not include the project ID.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID of the project that contains the instance.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "sql/v1beta4/projects/{project}/instances/{instance}/getLatestRecoveryTime", + "response": { + "$ref": "SqlInstancesGetLatestRecoveryTimeResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/sqlservice.admin" + ] + }, "performDiskShrink": { "description": "Perform Disk Shrink on primary instance.", "flatPath": "sql/v1beta4/projects/{project}/instances/{instance}/performDiskShrink", @@ -2090,7 +2122,7 @@ } } }, - "revision": "20230607", + "revision": "20230627", "rootUrl": "https://sqladmin.googleapis.com/", "schemas": { "AclEntry": { @@ -2470,6 +2502,10 @@ "description": "Timestamp, if specified, identifies the time to which the source instance is cloned.", "format": "google-datetime", "type": "string" + }, + "preferredZone": { + "description": "Optional. (Point-in-time recovery for PostgreSQL only) Clone to an instance in the specified zone. If no zone is specified, clone to the same zone as the source instance.", + "type": "string" } }, "type": "object" @@ -2486,6 +2522,12 @@ "SECOND_GEN", "EXTERNAL" ], + "enumDeprecated": [ + false, + true, + false, + false + ], "enumDescriptions": [ "This is an unknown backend type for instance.", "V1 speckle instance.", @@ -2535,6 +2577,45 @@ "SQLSERVER_2022_EXPRESS", "SQLSERVER_2022_WEB" ], + "enumDeprecated": [ + false, + true, + true, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + true, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], "enumDescriptions": [ "This is an unknown database version.", "The database version is MySQL 5.1.", @@ -2602,6 +2683,17 @@ }, "type": "object" }, + "DataCacheConfig": { + "description": "Data cache configurations.", + "id": "DataCacheConfig", + "properties": { + "dataCacheEnabled": { + "description": "Whether data cache is enabled for the instance.", + "type": "boolean" + } + }, + "type": "object" + }, "Database": { "description": "Represents a SQL database on the Cloud SQL instance.", "id": "Database", @@ -2679,6 +2771,12 @@ "SECOND_GEN", "EXTERNAL" ], + "enumDeprecated": [ + false, + true, + false, + false + ], "enumDescriptions": [ "This is an unknown backend type for instance.", "V1 speckle instance.", @@ -2698,6 +2796,7 @@ "type": "string" }, "currentDiskSize": { + "deprecated": true, "description": "The current disk usage of the instance in bytes. This property has been deprecated. Use the \"cloudsql.googleapis.com/database/disk/bytes_used\" metric in Cloud Monitoring API instead. Please see [this announcement](https://groups.google.com/d/msg/google-cloud-sql-announce/I_7-F9EBhT0/BtvFtdFeAgAJ) for details.", "format": "int64", "type": "string" @@ -2748,6 +2847,45 @@ "SQLSERVER_2022_EXPRESS", "SQLSERVER_2022_WEB" ], + "enumDeprecated": [ + false, + true, + true, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + true, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], "enumDescriptions": [ "This is an unknown database version.", "The database version is MySQL 5.1.", @@ -2843,6 +2981,7 @@ "type": "array" }, "ipv6Address": { + "deprecated": true, "description": "The IPv6 address assigned to the instance. (Deprecated) This property was applicable only to First Generation instances.", "type": "string" }, @@ -2859,6 +2998,7 @@ "type": "string" }, "maxDiskSize": { + "deprecated": true, "description": "The maximum disk size of the instance in bytes.", "format": "int64", "type": "string" @@ -2938,6 +3078,16 @@ "FAILED", "ONLINE_MAINTENANCE" ], + "enumDeprecated": [ + false, + false, + false, + false, + false, + false, + false, + true + ], "enumDescriptions": [ "The state of the instance is unknown.", "The instance is running, or has been stopped by owner.", @@ -3142,6 +3292,7 @@ "type": "string" }, "copyOnly": { + "deprecated": true, "description": "Deprecated: copy_only is deprecated. Use differential_base instead", "type": "boolean" }, @@ -3330,6 +3481,45 @@ "SQLSERVER_2022_EXPRESS", "SQLSERVER_2022_WEB" ], + "enumDeprecated": [ + false, + true, + true, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + true, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false + ], "enumDescriptions": [ "This is an unknown database version.", "The database version is MySQL 5.1.", @@ -3871,6 +4061,7 @@ "id": "LocationPreference", "properties": { "followGaeApplication": { + "deprecated": true, "description": "The App Engine application to follow, it must be in the same region as the Cloud SQL instance. WARNING: Changing this might restart the instance.", "type": "string" }, @@ -4115,6 +4306,47 @@ "REENCRYPT", "SWITCHOVER" ], + "enumDeprecated": [ + false, + false, + false, + false, + false, + false, + false, + true, + true, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + false, + true, + true, + true, + false, + false, + false, + false, + false, + false + ], "enumDescriptions": [ "Unknown operation type.", "Imports data into a Cloud SQL instance.", @@ -4471,6 +4703,12 @@ "NEVER", "ON_DEMAND" ], + "enumDeprecated": [ + false, + false, + false, + true + ], "enumDescriptions": [ "Unknown activation plan.", "The instance is always up and running.", @@ -4488,6 +4726,7 @@ "description": "Specifies advance machine configuration for the instance relevant only for SQL Server." }, "authorizedGaeApplications": { + "deprecated": true, "description": "The App Engine app IDs that can access this instance. (Deprecated) Applied to First Generation instances only.", "items": { "type": "string" @@ -4531,9 +4770,14 @@ "type": "string" }, "crashSafeReplicationEnabled": { + "deprecated": true, "description": "Configuration specific to read replica instances. Indicates whether database flags for crash-safe replication are enabled. This property was only applicable to First Generation instances.", "type": "boolean" }, + "dataCacheConfig": { + "$ref": "DataCacheConfig", + "description": "Configuration for data cache." + }, "dataDiskSizeGb": { "description": "The size of data disk, in GB. The data disk size minimum is 10GB.", "format": "int64", @@ -4547,6 +4791,12 @@ "PD_HDD", "OBSOLETE_LOCAL_SSD" ], + "enumDeprecated": [ + false, + false, + false, + true + ], "enumDescriptions": [ "This is an unknown data disk type.", "An SSD data disk.", @@ -4577,6 +4827,20 @@ }, "type": "array" }, + "edition": { + "description": "Optional. The edition of the instance.", + "enum": [ + "EDITION_UNSPECIFIED", + "ENTERPRISE", + "ENTERPRISE_PLUS" + ], + "enumDescriptions": [ + "The instance did not specify the edition.", + "The instance is an enterprise edition.", + "The instance is an Enterprise Plus edition." + ], + "type": "string" + }, "insightsConfig": { "$ref": "InsightsConfig", "description": "Insights configuration, for now relevant only for Postgres." @@ -4616,6 +4880,7 @@ "type": "string" }, "replicationType": { + "deprecated": true, "description": "The type of replication this instance uses. This can be either `ASYNCHRONOUS` or `SYNCHRONOUS`. (Deprecated) This property was only applicable to First Generation instances.", "enum": [ "SQL_REPLICATION_TYPE_UNSPECIFIED", @@ -4728,7 +4993,8 @@ "RISKY_BACKUP_ADMIN_PRIVILEGE", "INSUFFICIENT_GCS_PERMISSIONS", "INVALID_FILE_INFO", - "UNSUPPORTED_DATABASE_SETTINGS" + "UNSUPPORTED_DATABASE_SETTINGS", + "MYSQL_PARALLEL_IMPORT_INSUFFICIENT_PRIVILEGE" ], "enumDescriptions": [ "", @@ -4764,7 +5030,8 @@ "Additional BACKUP_ADMIN privilege is granted to the replication user which may lock source MySQL 8 instance for DDLs during initial sync.", "The Cloud Storage bucket is missing necessary permissions.", "The Cloud Storage bucket has an error in the file or contains invalid file information.", - "The source instance has unsupported database settings for migration." + "The source instance has unsupported database settings for migration.", + "The replication user is missing parallel import specific privileges. (e.g. LOCK TABLES) for MySQL." ], "type": "string" } @@ -4791,6 +5058,22 @@ }, "type": "object" }, + "SqlInstancesGetLatestRecoveryTimeResponse": { + "description": "Instance get latest recovery time response.", + "id": "SqlInstancesGetLatestRecoveryTimeResponse", + "properties": { + "kind": { + "description": "This is always `sql#getLatestRecoveryTime`.", + "type": "string" + }, + "latestRecoveryTime": { + "description": "Timestamp, identifies the latest recovery time of the source instance.", + "format": "google-datetime", + "type": "string" + } + }, + "type": "object" + }, "SqlInstancesRescheduleMaintenanceRequestBody": { "description": "Reschedule options for maintenance windows.", "id": "SqlInstancesRescheduleMaintenanceRequestBody", @@ -4940,6 +5223,7 @@ "id": "SqlScheduledMaintenance", "properties": { "canDefer": { + "deprecated": true, "type": "boolean" }, "canReschedule": { @@ -5343,6 +5627,7 @@ "type": "string" }, "nextPageToken": { + "deprecated": true, "description": "Unused.", "type": "string" } diff --git a/sqladmin/v1beta4/sqladmin-gen.go b/sqladmin/v1beta4/sqladmin-gen.go index 350e560ec78..b66ec18cdad 100644 --- a/sqladmin/v1beta4/sqladmin-gen.go +++ b/sqladmin/v1beta4/sqladmin-gen.go @@ -790,6 +790,11 @@ type CloneContext struct { // the source instance is cloned. PointInTime string `json:"pointInTime,omitempty"` + // PreferredZone: Optional. (Point-in-time recovery for PostgreSQL only) + // Clone to an instance in the specified zone. If no zone is specified, + // clone to the same zone as the source instance. + PreferredZone string `json:"preferredZone,omitempty"` + // ForceSendFields is a list of field names (e.g. "AllocatedIpRange") to // unconditionally include in API requests. By default, fields with // empty or default values are omitted from API requests. However, any @@ -945,6 +950,35 @@ func (s *ConnectSettings) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// DataCacheConfig: Data cache configurations. +type DataCacheConfig struct { + // DataCacheEnabled: Whether data cache is enabled for the instance. + DataCacheEnabled bool `json:"dataCacheEnabled,omitempty"` + + // ForceSendFields is a list of field names (e.g. "DataCacheEnabled") 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. "DataCacheEnabled") 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 *DataCacheConfig) MarshalJSON() ([]byte, error) { + type NoMethod DataCacheConfig + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // Database: Represents a SQL database on the Cloud SQL instance. type Database struct { // Charset: The Cloud SQL charset value. @@ -3833,6 +3867,9 @@ type Settings struct { // Generation instances. CrashSafeReplicationEnabled bool `json:"crashSafeReplicationEnabled,omitempty"` + // DataCacheConfig: Configuration for data cache. + DataCacheConfig *DataCacheConfig `json:"dataCacheConfig,omitempty"` + // DataDiskSizeGb: The size of data disk, in GB. The data disk size // minimum is 10GB. DataDiskSizeGb int64 `json:"dataDiskSizeGb,omitempty,string"` @@ -3864,6 +3901,14 @@ type Settings struct { // DenyMaintenancePeriods: Deny maintenance periods DenyMaintenancePeriods []*DenyMaintenancePeriod `json:"denyMaintenancePeriods,omitempty"` + // Edition: Optional. The edition of the instance. + // + // Possible values: + // "EDITION_UNSPECIFIED" - The instance did not specify the edition. + // "ENTERPRISE" - The instance is an enterprise edition. + // "ENTERPRISE_PLUS" - The instance is an Enterprise Plus edition. + Edition string `json:"edition,omitempty"` + // InsightsConfig: Insights configuration, for now relevant only for // Postgres. InsightsConfig *InsightsConfig `json:"insightsConfig,omitempty"` @@ -4080,6 +4125,9 @@ type SqlExternalSyncSettingError struct { // file or contains invalid file information. // "UNSUPPORTED_DATABASE_SETTINGS" - The source instance has // unsupported database settings for migration. + // "MYSQL_PARALLEL_IMPORT_INSUFFICIENT_PRIVILEGE" - The replication + // user is missing parallel import specific privileges. (e.g. LOCK + // TABLES) for MySQL. Type string `json:"type,omitempty"` // ForceSendFields is a list of field names (e.g. "Detail") to @@ -4145,6 +4193,43 @@ func (s *SqlInstancesGetDiskShrinkConfigResponse) MarshalJSON() ([]byte, error) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// SqlInstancesGetLatestRecoveryTimeResponse: Instance get latest +// recovery time response. +type SqlInstancesGetLatestRecoveryTimeResponse struct { + // Kind: This is always `sql#getLatestRecoveryTime`. + Kind string `json:"kind,omitempty"` + + // LatestRecoveryTime: Timestamp, identifies the latest recovery time of + // the source instance. + LatestRecoveryTime string `json:"latestRecoveryTime,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "Kind") 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. "Kind") 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 *SqlInstancesGetLatestRecoveryTimeResponse) MarshalJSON() ([]byte, error) { + type NoMethod SqlInstancesGetLatestRecoveryTimeResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // SqlInstancesRescheduleMaintenanceRequestBody: Reschedule options for // maintenance windows. type SqlInstancesRescheduleMaintenanceRequestBody struct { @@ -11255,6 +11340,166 @@ func (c *ProjectsInstancesGetDiskShrinkConfigCall) Do(opts ...googleapi.CallOpti } +// method id "sql.projects.instances.getLatestRecoveryTime": + +type ProjectsInstancesGetLatestRecoveryTimeCall struct { + s *Service + project string + instance string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// GetLatestRecoveryTime: Get Latest Recovery Time for a given instance. +// +// - instance: Cloud SQL instance ID. This does not include the project +// ID. +// - project: Project ID of the project that contains the instance. +func (r *ProjectsInstancesService) GetLatestRecoveryTime(project string, instance string) *ProjectsInstancesGetLatestRecoveryTimeCall { + c := &ProjectsInstancesGetLatestRecoveryTimeCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.project = project + c.instance = instance + 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 *ProjectsInstancesGetLatestRecoveryTimeCall) Fields(s ...googleapi.Field) *ProjectsInstancesGetLatestRecoveryTimeCall { + 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 *ProjectsInstancesGetLatestRecoveryTimeCall) IfNoneMatch(entityTag string) *ProjectsInstancesGetLatestRecoveryTimeCall { + 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 *ProjectsInstancesGetLatestRecoveryTimeCall) Context(ctx context.Context) *ProjectsInstancesGetLatestRecoveryTimeCall { + 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 *ProjectsInstancesGetLatestRecoveryTimeCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsInstancesGetLatestRecoveryTimeCall) 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, "sql/v1beta4/projects/{project}/instances/{instance}/getLatestRecoveryTime") + 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{ + "project": c.project, + "instance": c.instance, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "sql.projects.instances.getLatestRecoveryTime" call. +// Exactly one of *SqlInstancesGetLatestRecoveryTimeResponse or error +// will be non-nil. Any non-2xx status code is an error. Response +// headers are in either +// *SqlInstancesGetLatestRecoveryTimeResponse.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 *ProjectsInstancesGetLatestRecoveryTimeCall) Do(opts ...googleapi.CallOption) (*SqlInstancesGetLatestRecoveryTimeResponse, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &SqlInstancesGetLatestRecoveryTimeResponse{ + 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": "Get Latest Recovery Time for a given instance.", + // "flatPath": "sql/v1beta4/projects/{project}/instances/{instance}/getLatestRecoveryTime", + // "httpMethod": "GET", + // "id": "sql.projects.instances.getLatestRecoveryTime", + // "parameterOrder": [ + // "project", + // "instance" + // ], + // "parameters": { + // "instance": { + // "description": "Cloud SQL instance ID. This does not include the project ID.", + // "location": "path", + // "required": true, + // "type": "string" + // }, + // "project": { + // "description": "Project ID of the project that contains the instance.", + // "location": "path", + // "required": true, + // "type": "string" + // } + // }, + // "path": "sql/v1beta4/projects/{project}/instances/{instance}/getLatestRecoveryTime", + // "response": { + // "$ref": "SqlInstancesGetLatestRecoveryTimeResponse" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/sqlservice.admin" + // ] + // } + +} + // method id "sql.projects.instances.performDiskShrink": type ProjectsInstancesPerformDiskShrinkCall struct { diff --git a/streetviewpublish/v1/streetviewpublish-api.json b/streetviewpublish/v1/streetviewpublish-api.json index 25554ca1a2e..2310083f2bf 100644 --- a/streetviewpublish/v1/streetviewpublish-api.json +++ b/streetviewpublish/v1/streetviewpublish-api.json @@ -377,7 +377,7 @@ "parameterOrder": [], "parameters": { "filter": { - "description": "Optional. The filter expression. For example: `imagery_type=SPHERICAL`. The filters supported are: `imagery_type`, `processing_state`, `min_latitude`, `max_latitude`, `min_longitude`, `max_longitude`, `filename_query`, `min_capture_time_seconds`, `max_capture_time_seconds`, and `takedown`. See https://google.aip.dev/160 for more information. Filename queries should sent as a Phrase in order to support multiple words and special characters by adding escaped quotes. Ex: filename_query=\"example of a phrase.mp4\"", + "description": "Optional. The filter expression. For example: `imagery_type=SPHERICAL`. The filters supported are: `imagery_type`, `processing_state`, `min_latitude`, `max_latitude`, `min_longitude`, `max_longitude`, `filename_query`, `min_capture_time_seconds`, `max_capture_time_seconds. See https://google.aip.dev/160 for more information. Filename queries should sent as a Phrase in order to support multiple words and special characters by adding escaped quotes. Ex: filename_query=\"example of a phrase.mp4\"", "location": "query", "type": "string" }, @@ -534,7 +534,7 @@ } } }, - "revision": "20230618", + "revision": "20230702", "rootUrl": "https://streetviewpublish.googleapis.com/", "schemas": { "BatchDeletePhotosRequest": { @@ -1155,11 +1155,6 @@ "description": "Output only. A rectangular box that encapsulates every image in this photo sequence.", "readOnly": true }, - "takedown": { - "description": "Output only. Set if a Photo within the PhotoSequence contains a takedown.", - "readOnly": true, - "type": "boolean" - }, "uploadReference": { "$ref": "UploadRef", "description": "Input only. Required when creating photo sequence. The resource name where the bytes of the photo sequence (in the form of video) are uploaded." diff --git a/streetviewpublish/v1/streetviewpublish-gen.go b/streetviewpublish/v1/streetviewpublish-gen.go index 44b799d9196..59e18820559 100644 --- a/streetviewpublish/v1/streetviewpublish-gen.go +++ b/streetviewpublish/v1/streetviewpublish-gen.go @@ -1200,10 +1200,6 @@ type PhotoSequence struct { // every image in this photo sequence. SequenceBounds *LatLngBounds `json:"sequenceBounds,omitempty"` - // Takedown: Output only. Set if a Photo within the PhotoSequence - // contains a takedown. - Takedown bool `json:"takedown,omitempty"` - // UploadReference: Input only. Required when creating photo sequence. // The resource name where the bytes of the photo sequence (in the form // of video) are uploaded. @@ -2985,10 +2981,10 @@ func (r *PhotoSequencesService) List() *PhotoSequencesListCall { // For example: `imagery_type=SPHERICAL`. The filters supported are: // `imagery_type`, `processing_state`, `min_latitude`, `max_latitude`, // `min_longitude`, `max_longitude`, `filename_query`, -// `min_capture_time_seconds`, `max_capture_time_seconds`, and -// `takedown`. See https://google.aip.dev/160 for more information. -// Filename queries should sent as a Phrase in order to support multiple -// words and special characters by adding escaped quotes. Ex: +// `min_capture_time_seconds`, `max_capture_time_seconds. See +// https://google.aip.dev/160 for more information. Filename queries +// should sent as a Phrase in order to support multiple words and +// special characters by adding escaped quotes. Ex: // filename_query="example of a phrase.mp4" func (c *PhotoSequencesListCall) Filter(filter string) *PhotoSequencesListCall { c.urlParams_.Set("filter", filter) @@ -3116,7 +3112,7 @@ func (c *PhotoSequencesListCall) Do(opts ...googleapi.CallOption) (*ListPhotoSeq // "parameterOrder": [], // "parameters": { // "filter": { - // "description": "Optional. The filter expression. For example: `imagery_type=SPHERICAL`. The filters supported are: `imagery_type`, `processing_state`, `min_latitude`, `max_latitude`, `min_longitude`, `max_longitude`, `filename_query`, `min_capture_time_seconds`, `max_capture_time_seconds`, and `takedown`. See https://google.aip.dev/160 for more information. Filename queries should sent as a Phrase in order to support multiple words and special characters by adding escaped quotes. Ex: filename_query=\"example of a phrase.mp4\"", + // "description": "Optional. The filter expression. For example: `imagery_type=SPHERICAL`. The filters supported are: `imagery_type`, `processing_state`, `min_latitude`, `max_latitude`, `min_longitude`, `max_longitude`, `filename_query`, `min_capture_time_seconds`, `max_capture_time_seconds. See https://google.aip.dev/160 for more information. Filename queries should sent as a Phrase in order to support multiple words and special characters by adding escaped quotes. Ex: filename_query=\"example of a phrase.mp4\"", // "location": "query", // "type": "string" // }, diff --git a/toolresults/v1beta3/toolresults-api.json b/toolresults/v1beta3/toolresults-api.json index c35c0dc7040..97595ee663e 100644 --- a/toolresults/v1beta3/toolresults-api.json +++ b/toolresults/v1beta3/toolresults-api.json @@ -1463,7 +1463,7 @@ } } }, - "revision": "20230410", + "revision": "20230703", "rootUrl": "https://toolresults.googleapis.com/", "schemas": { "ANR": { @@ -3587,6 +3587,7 @@ }, "stackTrace": { "$ref": "StackTrace", + "deprecated": true, "description": "Deprecated in favor of stack trace fields inside specific warnings." }, "type": { diff --git a/transcoder/v1/transcoder-api.json b/transcoder/v1/transcoder-api.json index 25b201bee32..28bb9493a3f 100644 --- a/transcoder/v1/transcoder-api.json +++ b/transcoder/v1/transcoder-api.json @@ -385,7 +385,7 @@ } } }, - "revision": "20230607", + "revision": "20230621", "rootUrl": "https://transcoder.googleapis.com/", "schemas": { "AdBreak": { @@ -400,6 +400,12 @@ }, "type": "object" }, + "Aes128Encryption": { + "description": "Configuration for AES-128 encryption.", + "id": "Aes128Encryption", + "properties": {}, + "type": "object" + }, "Animation": { "description": "Animation types.", "id": "Animation", @@ -604,6 +610,12 @@ }, "type": "object" }, + "Clearkey": { + "description": "Clearkey configuration.", + "id": "Clearkey", + "properties": {}, + "type": "object" + }, "Color": { "description": "Color preprocessing configuration. **Note:** This configuration is not supported.", "id": "Color", @@ -721,6 +733,29 @@ }, "type": "object" }, + "DrmSystems": { + "description": "Defines configuration for DRM systems in use.", + "id": "DrmSystems", + "properties": { + "clearkey": { + "$ref": "Clearkey", + "description": "Clearkey configuration." + }, + "fairplay": { + "$ref": "Fairplay", + "description": "Fairplay configuration." + }, + "playready": { + "$ref": "Playready", + "description": "Playready configuration." + }, + "widevine": { + "$ref": "Widevine", + "description": "Widevine configuration." + } + }, + "type": "object" + }, "EditAtom": { "description": "Edit atom.", "id": "EditAtom", @@ -778,6 +813,43 @@ "properties": {}, "type": "object" }, + "Encryption": { + "description": "Encryption settings.", + "id": "Encryption", + "properties": { + "aes128": { + "$ref": "Aes128Encryption", + "description": "Configuration for AES-128 encryption." + }, + "drmSystems": { + "$ref": "DrmSystems", + "description": "Required. DRM system(s) to use; at least one must be specified. If a DRM system is omitted, it is considered disabled." + }, + "id": { + "description": "Required. Identifier for this set of encryption options.", + "type": "string" + }, + "mpegCenc": { + "$ref": "MpegCommonEncryption", + "description": "Configuration for MPEG Common Encryption (MPEG-CENC)." + }, + "sampleAes": { + "$ref": "SampleAesEncryption", + "description": "Configuration for SAMPLE-AES encryption." + }, + "secretManagerKeySource": { + "$ref": "SecretManagerSource", + "description": "Keys are stored in Google Secret Manager." + } + }, + "type": "object" + }, + "Fairplay": { + "description": "Fairplay configuration.", + "id": "Fairplay", + "properties": {}, + "type": "object" + }, "H264CodecSettings": { "description": "H264 codec settings.", "id": "H264CodecSettings", @@ -1013,6 +1085,11 @@ "description": "Transcoding job resource.", "id": "Job", "properties": { + "batchModePriority": { + "description": "The processing priority of a batch job. This field can only be set for batch mode jobs, and the default value is 0. This value cannot be negative. Higher values correspond to higher priorities for the job.", + "format": "int32", + "type": "integer" + }, "config": { "$ref": "JobConfig", "description": "The configuration for this job." @@ -1063,6 +1140,20 @@ "description": "The resource name of the job. Format: `projects/{project_number}/locations/{location}/jobs/{job}`", "type": "string" }, + "optimization": { + "description": "Optional. The optimization strategy of the job. The default is `AUTODETECT`.", + "enum": [ + "OPTIMIZATION_STRATEGY_UNSPECIFIED", + "AUTODETECT", + "DISABLED" + ], + "enumDescriptions": [ + "The optimization strategy is not specified.", + "Prioritize job processing speed.", + "Disable all optimizations." + ], + "type": "string" + }, "outputUri": { "description": "Input only. Specify the `output_uri` to populate an empty `Job.config.output.uri` or `JobTemplate.config.output.uri` when using template. URI for the output file(s). For example, `gs://my-bucket/outputs/`. See [Supported input and output formats](https://cloud.google.com/transcoder/docs/concepts/supported-input-and-output-formats).", "type": "string" @@ -1129,6 +1220,13 @@ }, "type": "array" }, + "encryptions": { + "description": "List of encryption configurations for the content. Each configuration has an ID. Specify this ID in the MuxStream.encryption_id field to indicate the configuration to use for that `MuxStream` output.", + "items": { + "$ref": "Encryption" + }, + "type": "array" + }, "inputs": { "description": "List of input assets stored in Cloud Storage.", "items": { @@ -1283,6 +1381,17 @@ }, "type": "object" }, + "MpegCommonEncryption": { + "description": "Configuration for MPEG Common Encryption (MPEG-CENC).", + "id": "MpegCommonEncryption", + "properties": { + "scheme": { + "description": "Required. Specify the encryption scheme. Supported encryption schemes: - `cenc` - `cbcs`", + "type": "string" + } + }, + "type": "object" + }, "MuxStream": { "description": "Multiplexing settings for output stream.", "id": "MuxStream", @@ -1298,6 +1407,10 @@ }, "type": "array" }, + "encryptionId": { + "description": "Identifier of the encryption configuration to use. If omitted, output will be unencrypted.", + "type": "string" + }, "fileName": { "description": "The name of the generated file. The default is `MuxStream.key` with the extension suffix corresponding to the `MuxStream.container`. Individual segments also have an incremental 10-digit zero-padded suffix starting from 0 before the extension, such as `mux_stream0000000123.ts`.", "type": "string" @@ -1386,6 +1499,12 @@ }, "type": "object" }, + "Playready": { + "description": "Playready configuration.", + "id": "Playready", + "properties": {}, + "type": "object" + }, "PreprocessingConfig": { "description": "Preprocessing configurations.", "id": "PreprocessingConfig", @@ -1432,6 +1551,23 @@ }, "type": "object" }, + "SampleAesEncryption": { + "description": "Configuration for SAMPLE-AES encryption.", + "id": "SampleAesEncryption", + "properties": {}, + "type": "object" + }, + "SecretManagerSource": { + "description": "Configuration for secrets stored in Google Secret Manager.", + "id": "SecretManagerSource", + "properties": { + "secretVersion": { + "description": "Required. The name of the Secret Version containing the encryption key in the following format: `projects/{project}/secrets/{secret_id}/versions/{version_number}` Note that only numbered versions are supported. Aliases like \"latest\" are not supported.", + "type": "string" + } + }, + "type": "object" + }, "SegmentSettings": { "description": "Segment settings for `ts`, `fmp4` and `vtt`.", "id": "SegmentSettings", @@ -1654,6 +1790,12 @@ }, "type": "object" }, + "Widevine": { + "description": "Widevine configuration.", + "id": "Widevine", + "properties": {}, + "type": "object" + }, "YadifConfig": { "description": "Yet Another Deinterlacing Filter Configuration.", "id": "YadifConfig", diff --git a/transcoder/v1/transcoder-gen.go b/transcoder/v1/transcoder-gen.go index f07d7e9e244..7ba5608de87 100644 --- a/transcoder/v1/transcoder-gen.go +++ b/transcoder/v1/transcoder-gen.go @@ -213,6 +213,10 @@ func (s *AdBreak) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// Aes128Encryption: Configuration for AES-128 encryption. +type Aes128Encryption struct { +} + // Animation: Animation types. type Animation struct { // AnimationEnd: End previous animation. @@ -590,6 +594,10 @@ func (s *BwdifConfig) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// Clearkey: Clearkey configuration. +type Clearkey struct { +} + // Color: Color preprocessing configuration. **Note:** This // configuration is not supported. type Color struct { @@ -857,6 +865,43 @@ func (s *Denoise) UnmarshalJSON(data []byte) error { return nil } +// DrmSystems: Defines configuration for DRM systems in use. +type DrmSystems struct { + // Clearkey: Clearkey configuration. + Clearkey *Clearkey `json:"clearkey,omitempty"` + + // Fairplay: Fairplay configuration. + Fairplay *Fairplay `json:"fairplay,omitempty"` + + // Playready: Playready configuration. + Playready *Playready `json:"playready,omitempty"` + + // Widevine: Widevine configuration. + Widevine *Widevine `json:"widevine,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Clearkey") 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. "Clearkey") 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 *DrmSystems) MarshalJSON() ([]byte, error) { + type NoMethod DrmSystems + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // EditAtom: Edit atom. type EditAtom struct { // EndTimeOffset: End time in seconds for the atom, relative to the @@ -950,6 +995,54 @@ type Empty struct { googleapi.ServerResponse `json:"-"` } +// Encryption: Encryption settings. +type Encryption struct { + // Aes128: Configuration for AES-128 encryption. + Aes128 *Aes128Encryption `json:"aes128,omitempty"` + + // DrmSystems: Required. DRM system(s) to use; at least one must be + // specified. If a DRM system is omitted, it is considered disabled. + DrmSystems *DrmSystems `json:"drmSystems,omitempty"` + + // Id: Required. Identifier for this set of encryption options. + Id string `json:"id,omitempty"` + + // MpegCenc: Configuration for MPEG Common Encryption (MPEG-CENC). + MpegCenc *MpegCommonEncryption `json:"mpegCenc,omitempty"` + + // SampleAes: Configuration for SAMPLE-AES encryption. + SampleAes *SampleAesEncryption `json:"sampleAes,omitempty"` + + // SecretManagerKeySource: Keys are stored in Google Secret Manager. + SecretManagerKeySource *SecretManagerSource `json:"secretManagerKeySource,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Aes128") 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. "Aes128") 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 *Encryption) MarshalJSON() ([]byte, error) { + type NoMethod Encryption + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// Fairplay: Fairplay configuration. +type Fairplay struct { +} + // H264CodecSettings: H264 codec settings. type H264CodecSettings struct { // AllowOpenGop: Specifies whether an open Group of Pictures (GOP) @@ -1368,6 +1461,12 @@ func (s *Input) MarshalJSON() ([]byte, error) { // Job: Transcoding job resource. type Job struct { + // BatchModePriority: The processing priority of a batch job. This field + // can only be set for batch mode jobs, and the default value is 0. This + // value cannot be negative. Higher values correspond to higher + // priorities for the job. + BatchModePriority int64 `json:"batchModePriority,omitempty"` + // Config: The configuration for this job. Config *JobConfig `json:"config,omitempty"` @@ -1411,6 +1510,16 @@ type Job struct { // `projects/{project_number}/locations/{location}/jobs/{job}` Name string `json:"name,omitempty"` + // Optimization: Optional. The optimization strategy of the job. The + // default is `AUTODETECT`. + // + // Possible values: + // "OPTIMIZATION_STRATEGY_UNSPECIFIED" - The optimization strategy is + // not specified. + // "AUTODETECT" - Prioritize job processing speed. + // "DISABLED" - Disable all optimizations. + Optimization string `json:"optimization,omitempty"` + // OutputUri: Input only. Specify the `output_uri` to populate an empty // `Job.config.output.uri` or `JobTemplate.config.output.uri` when using // template. URI for the output file(s). For example, @@ -1449,20 +1558,21 @@ type Job struct { // server. googleapi.ServerResponse `json:"-"` - // ForceSendFields is a list of field names (e.g. "Config") to - // unconditionally include in API requests. By default, fields with + // ForceSendFields is a list of field names (e.g. "BatchModePriority") + // 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. "Config") 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. "BatchModePriority") 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:"-"` } @@ -1485,6 +1595,12 @@ type JobConfig struct { // ElementaryStreams: List of elementary streams. ElementaryStreams []*ElementaryStream `json:"elementaryStreams,omitempty"` + // Encryptions: List of encryption configurations for the content. Each + // configuration has an ID. Specify this ID in the + // MuxStream.encryption_id field to indicate the configuration to use + // for that `MuxStream` output. + Encryptions []*Encryption `json:"encryptions,omitempty"` + // Inputs: List of input assets stored in Cloud Storage. Inputs []*Input `json:"inputs,omitempty"` @@ -1697,6 +1813,36 @@ func (s *Manifest) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// MpegCommonEncryption: Configuration for MPEG Common Encryption +// (MPEG-CENC). +type MpegCommonEncryption struct { + // Scheme: Required. Specify the encryption scheme. Supported encryption + // schemes: - `cenc` - `cbcs` + Scheme string `json:"scheme,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Scheme") 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. "Scheme") 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 *MpegCommonEncryption) MarshalJSON() ([]byte, error) { + type NoMethod MpegCommonEncryption + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // MuxStream: Multiplexing settings for output stream. type MuxStream struct { // Container: The container format. The default is `mp4` Supported @@ -1710,6 +1856,10 @@ type MuxStream struct { // this stream. ElementaryStreams []string `json:"elementaryStreams,omitempty"` + // EncryptionId: Identifier of the encryption configuration to use. If + // omitted, output will be unencrypted. + EncryptionId string `json:"encryptionId,omitempty"` + // FileName: The name of the generated file. The default is // `MuxStream.key` with the extension suffix corresponding to the // `MuxStream.container`. Individual segments also have an incremental @@ -1900,6 +2050,10 @@ func (s *Pad) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// Playready: Playready configuration. +type Playready struct { +} + // PreprocessingConfig: Preprocessing configurations. type PreprocessingConfig struct { // Audio: Audio preprocessing configuration. @@ -1975,6 +2129,43 @@ func (s *PubsubDestination) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// SampleAesEncryption: Configuration for SAMPLE-AES encryption. +type SampleAesEncryption struct { +} + +// SecretManagerSource: Configuration for secrets stored in Google +// Secret Manager. +type SecretManagerSource struct { + // SecretVersion: Required. The name of the Secret Version containing + // the encryption key in the following format: + // `projects/{project}/secrets/{secret_id}/versions/{version_number}` + // Note that only numbered versions are supported. Aliases like "latest" + // are not supported. + SecretVersion string `json:"secretVersion,omitempty"` + + // ForceSendFields is a list of field names (e.g. "SecretVersion") 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. "SecretVersion") 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 *SecretManagerSource) MarshalJSON() ([]byte, error) { + type NoMethod SecretManagerSource + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // SegmentSettings: Segment settings for `ts`, `fmp4` and `vtt`. type SegmentSettings struct { // IndividualSegments: Required. Create an individual segment file. The @@ -2368,6 +2559,10 @@ func (s *Vp9CodecSettings) UnmarshalJSON(data []byte) error { return nil } +// Widevine: Widevine configuration. +type Widevine struct { +} + // YadifConfig: Yet Another Deinterlacing Filter Configuration. type YadifConfig struct { // DeinterlaceAllFrames: Deinterlace all frames rather than just the diff --git a/vault/v1/vault-api.json b/vault/v1/vault-api.json index 1a43194fee0..7dc4207bf78 100644 --- a/vault/v1/vault-api.json +++ b/vault/v1/vault-api.json @@ -1193,7 +1193,7 @@ } } }, - "revision": "20230405", + "revision": "20230626", "rootUrl": "https://vault.googleapis.com/", "schemas": { "AccountCount": { @@ -1354,7 +1354,7 @@ "id": "CloudStorageFile", "properties": { "bucketName": { - "description": "The name of the Cloud Storage bucket for the export file. You can use this value in the [Cloud Storage JSON or XML APIs](https://cloud.google.com/storage/docs/apis), but not to list the bucket contents. Instead, you can [get individual export files](https://cloud.google.com/storage/docs/json_api/v1/objects/get) by object name.", + "description": "The name of the Cloud Storage bucket for the export file. You can use this value in the Cloud Storage [JSON API](https://cloud.google.com/storage/docs/json_api) or [XML API](https://cloud.google.com/storage/docs/xml-api), but not to list the bucket contents. Instead, you can [get individual export files](https://cloud.google.com/storage/docs/json_api/v1/objects/get) by object name.", "type": "string" }, "md5Hash": { @@ -1362,7 +1362,7 @@ "type": "string" }, "objectName": { - "description": "The name of the Cloud Storage object for the export file. You can use this value in the [Cloud Storage JSON or XML APIs](https://cloud.google.com/storage/docs/apis).", + "description": "The name of the Cloud Storage object for the export file. You can use this value in the Cloud Storage [JSON API](https://cloud.google.com/storage/docs/json_api) or [XML API](https://cloud.google.com/storage/docs/xml-api).", "type": "string" }, "size": { diff --git a/vault/v1/vault-gen.go b/vault/v1/vault-gen.go index 6229b2145e7..e4ba2642df6 100644 --- a/vault/v1/vault-gen.go +++ b/vault/v1/vault-gen.go @@ -500,8 +500,9 @@ func (s *CloseMatterResponse) MarshalJSON() ([]byte, error) { // CloudStorageFile: The export file in Cloud Storage type CloudStorageFile struct { // BucketName: The name of the Cloud Storage bucket for the export file. - // You can use this value in the Cloud Storage JSON or XML APIs - // (https://cloud.google.com/storage/docs/apis), but not to list the + // You can use this value in the Cloud Storage JSON API + // (https://cloud.google.com/storage/docs/json_api) or XML API + // (https://cloud.google.com/storage/docs/xml-api), but not to list the // bucket contents. Instead, you can get individual export files // (https://cloud.google.com/storage/docs/json_api/v1/objects/get) by // object name. @@ -511,8 +512,9 @@ type CloudStorageFile struct { Md5Hash string `json:"md5Hash,omitempty"` // ObjectName: The name of the Cloud Storage object for the export file. - // You can use this value in the Cloud Storage JSON or XML APIs - // (https://cloud.google.com/storage/docs/apis). + // You can use this value in the Cloud Storage JSON API + // (https://cloud.google.com/storage/docs/json_api) or XML API + // (https://cloud.google.com/storage/docs/xml-api). ObjectName string `json:"objectName,omitempty"` // Size: The export file size. diff --git a/vmmigration/v1/vmmigration-api.json b/vmmigration/v1/vmmigration-api.json index f60e39a2161..4b636edf5e9 100644 --- a/vmmigration/v1/vmmigration-api.json +++ b/vmmigration/v1/vmmigration-api.json @@ -1972,7 +1972,7 @@ } } }, - "revision": "20230518", + "revision": "20230622", "rootUrl": "https://vmmigration.googleapis.com/", "schemas": { "AccessKeyCredentials": { @@ -3890,6 +3890,7 @@ "type": "string" }, "progressPercent": { + "deprecated": true, "description": "The current progress in percentage of this cycle. Was replaced by 'steps' field, which breaks down the cycle progression more accurately.", "format": "int32", "type": "integer" diff --git a/vmmigration/v1alpha1/vmmigration-api.json b/vmmigration/v1alpha1/vmmigration-api.json index 66ea9115f10..c840f891279 100644 --- a/vmmigration/v1alpha1/vmmigration-api.json +++ b/vmmigration/v1alpha1/vmmigration-api.json @@ -1972,7 +1972,7 @@ } } }, - "revision": "20230518", + "revision": "20230622", "rootUrl": "https://vmmigration.googleapis.com/", "schemas": { "AccessKeyCredentials": { @@ -2389,6 +2389,7 @@ }, "computeEngineVmDetails": { "$ref": "TargetVMDetails", + "deprecated": true, "description": "Output only. Details of the VM in Compute Engine. Deprecated: Use compute_engine_target_details instead.", "readOnly": true }, @@ -2455,6 +2456,7 @@ }, "targetDetails": { "$ref": "TargetVMDetails", + "deprecated": true, "description": "Output only. Details of the VM to create as the target of this clone job. Deprecated: Use compute_engine_target_details instead.", "readOnly": true } @@ -2749,6 +2751,7 @@ "id": "ComputeScheduling", "properties": { "automaticRestart": { + "deprecated": true, "type": "boolean" }, "minNodeCpus": { @@ -2818,6 +2821,7 @@ }, "computeEngineVmDetails": { "$ref": "TargetVMDetails", + "deprecated": true, "description": "Output only. Details of the VM in Compute Engine. Deprecated: Use compute_engine_target_details instead.", "readOnly": true }, @@ -2844,6 +2848,7 @@ "type": "string" }, "progress": { + "deprecated": true, "description": "Output only. The current progress in percentage of the cutover job.", "format": "int32", "readOnly": true, @@ -2901,6 +2906,7 @@ }, "targetDetails": { "$ref": "TargetVMDetails", + "deprecated": true, "description": "Output only. Details of the VM to create as the target of this cutover job. Deprecated: Use compute_engine_target_details instead.", "readOnly": true } @@ -3513,6 +3519,7 @@ }, "computeEngineVmDefaults": { "$ref": "TargetVMDetails", + "deprecated": true, "description": "Details of the VM in Compute Engine. Deprecated: Use compute_engine_target_defaults instead." }, "createTime": { @@ -3636,6 +3643,7 @@ }, "targetDefaults": { "$ref": "TargetVMDetails", + "deprecated": true, "description": "The default configuration of the target VM that will be created in Google Cloud as a result of the migration. Deprecated: Use compute_engine_target_defaults instead." }, "updateTime": { @@ -3927,11 +3935,13 @@ "type": "string" }, "progress": { + "deprecated": true, "description": "The current progress in percentage of this cycle.", "format": "int32", "type": "integer" }, "progressPercent": { + "deprecated": true, "description": "The current progress in percentage of this cycle. Was replaced by 'steps' field, which breaks down the cycle progression more accurately.", "format": "int32", "type": "integer" @@ -4074,6 +4084,7 @@ }, "error": { "$ref": "Status", + "deprecated": true, "description": "Output only. Provides details on the state of the Source in case of an error.", "readOnly": true }, @@ -4183,6 +4194,7 @@ "type": "object" }, "TargetVMDetails": { + "deprecated": true, "description": "TargetVMDetails is a collection of details for creating a VM in a target Compute Engine project.", "id": "TargetVMDetails", "properties": { @@ -4293,6 +4305,7 @@ "type": "array" }, "project": { + "deprecated": true, "description": "Output only. The project in which to create the VM.", "readOnly": true, "type": "string" @@ -4454,6 +4467,7 @@ "type": "array" }, "vmsCount": { + "deprecated": true, "description": "Output only. Total number of VMs included in the report.", "format": "int32", "readOnly": true, @@ -4486,6 +4500,7 @@ "id": "VmUtilizationMetrics", "properties": { "cpuAverage": { + "deprecated": true, "description": "Average CPU usage, percent.", "format": "int32", "type": "integer" @@ -4496,6 +4511,7 @@ "type": "integer" }, "cpuMax": { + "deprecated": true, "description": "Max CPU usage, percent.", "format": "int32", "type": "integer" @@ -4506,6 +4522,7 @@ "type": "integer" }, "diskIoRateAverage": { + "deprecated": true, "description": "Average disk IO rate, in kilobytes per second.", "format": "int64", "type": "string" @@ -4516,6 +4533,7 @@ "type": "string" }, "diskIoRateMax": { + "deprecated": true, "description": "Max disk IO rate, in kilobytes per second.", "format": "int64", "type": "string" @@ -4526,6 +4544,7 @@ "type": "string" }, "memoryAverage": { + "deprecated": true, "description": "Average memory usage, percent.", "format": "int32", "type": "integer" @@ -4536,6 +4555,7 @@ "type": "integer" }, "memoryMax": { + "deprecated": true, "description": "Max memory usage, percent.", "format": "int32", "type": "integer" @@ -4546,6 +4566,7 @@ "type": "integer" }, "networkThroughputAverage": { + "deprecated": true, "description": "Average network throughput (combined transmit-rates and receive-rates), in kilobytes per second.", "format": "int64", "type": "string" @@ -4556,6 +4577,7 @@ "type": "string" }, "networkThroughputMax": { + "deprecated": true, "description": "Max network throughput (combined transmit-rates and receive-rates), in kilobytes per second.", "format": "int64", "type": "string" @@ -4615,6 +4637,7 @@ "type": "string" }, "committedStorage": { + "deprecated": true, "description": "The total size of the storage allocated to the VM in MB.", "format": "int64", "type": "string" diff --git a/workloadmanager/v1/workloadmanager-api.json b/workloadmanager/v1/workloadmanager-api.json index ecf11875356..c2a4af664ed 100644 --- a/workloadmanager/v1/workloadmanager-api.json +++ b/workloadmanager/v1/workloadmanager-api.json @@ -707,7 +707,7 @@ } } }, - "revision": "20230605", + "revision": "20230621", "rootUrl": "https://workloadmanager.googleapis.com/", "schemas": { "CancelOperationRequest": { @@ -1243,6 +1243,7 @@ "id": "ResourceStatus", "properties": { "rulesNewerVersions": { + "deprecated": true, "description": "Historical: Used before 2023-05-22 the new version of rule id if exists", "items": { "type": "string" @@ -1536,16 +1537,30 @@ }, "type": "object" }, - "SqlserverValidationValidationDetail": { - "description": "Message describing the Sqlserver validation metrics.", - "id": "SqlserverValidationValidationDetail", + "SqlserverValidationDetails": { + "description": "Message containing collected data names and values.", + "id": "SqlserverValidationDetails", "properties": { "fields": { "additionalProperties": { "type": "string" }, - "description": " pairs of metrics data: column name \u0026 column value.", + "description": "Required. Collected data is in format.", "type": "object" + } + }, + "type": "object" + }, + "SqlserverValidationValidationDetail": { + "description": "Message describing the Sqlserver validation metrics.", + "id": "SqlserverValidationValidationDetail", + "properties": { + "details": { + "description": "Required. Details wraps map that represents collected data names and values.", + "items": { + "$ref": "SqlserverValidationDetails" + }, + "type": "array" }, "type": { "description": "The Sqlserver system that the validation data is from.", diff --git a/workloadmanager/v1/workloadmanager-gen.go b/workloadmanager/v1/workloadmanager-gen.go index a5cfcd0ebd0..f4357649834 100644 --- a/workloadmanager/v1/workloadmanager-gen.go +++ b/workloadmanager/v1/workloadmanager-gen.go @@ -1460,11 +1460,41 @@ func (s *SqlserverValidation) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// SqlserverValidationDetails: Message containing collected data names +// and values. +type SqlserverValidationDetails struct { + // Fields: Required. Collected data is in format. + Fields map[string]string `json:"fields,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Fields") 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. "Fields") 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 *SqlserverValidationDetails) MarshalJSON() ([]byte, error) { + type NoMethod SqlserverValidationDetails + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // SqlserverValidationValidationDetail: Message describing the Sqlserver // validation metrics. type SqlserverValidationValidationDetail struct { - // Fields: pairs of metrics data: column name & column value. - Fields map[string]string `json:"fields,omitempty"` + // Details: Required. Details wraps map that represents collected data + // names and values. + Details []*SqlserverValidationDetails `json:"details,omitempty"` // Type: The Sqlserver system that the validation data is from. // @@ -1480,7 +1510,7 @@ type SqlserverValidationValidationDetail struct { // "DB_MAX_SERVER_MEMORY" - The MAX_SERVER_MEMORY table Type string `json:"type,omitempty"` - // ForceSendFields is a list of field names (e.g. "Fields") to + // ForceSendFields is a list of field names (e.g. "Details") to // unconditionally include in API requests. By default, fields with // empty or default values are omitted from API requests. However, any // non-pointer, non-interface field appearing in ForceSendFields will be @@ -1488,8 +1518,8 @@ type SqlserverValidationValidationDetail struct { // This may be used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "Fields") to include in API - // requests with the JSON null value. By default, fields with empty + // NullFields is a list of field names (e.g. "Details") to include in + // API requests with the JSON null value. By default, fields with empty // values are omitted from API requests. However, any field with an // empty value appearing in NullFields will be sent to the server as // null. It is an error if a field in this list has a non-empty value.