diff --git a/analyticsadmin/v1alpha/analyticsadmin-api.json b/analyticsadmin/v1alpha/analyticsadmin-api.json index c3d4e1229b8..43ee8e2d3ab 100644 --- a/analyticsadmin/v1alpha/analyticsadmin-api.json +++ b/analyticsadmin/v1alpha/analyticsadmin-api.json @@ -4356,7 +4356,7 @@ } } }, - "revision": "20230809", + "revision": "20230817", "rootUrl": "https://analyticsadmin.googleapis.com/", "schemas": { "GoogleAnalyticsAdminV1alphaAccessBetweenFilter": { @@ -5623,10 +5623,6 @@ "description": "If set true, enables daily data export to the linked Google Cloud project.", "type": "boolean" }, - "enterpriseExportEnabled": { - "description": "If set true, enables enterprise export to the linked Google Cloud project.", - "type": "boolean" - }, "excludedEvents": { "description": "The list of event names that will be excluded from exports.", "items": { @@ -5641,6 +5637,10 @@ }, "type": "array" }, + "freshDailyExportEnabled": { + "description": "If set true, enables fresh daily export to the linked Google Cloud project.", + "type": "boolean" + }, "includeAdvertisingId": { "description": "If set true, exported data will include advertising identifiers for mobile app streams.", "type": "boolean" diff --git a/analyticsadmin/v1alpha/analyticsadmin-gen.go b/analyticsadmin/v1alpha/analyticsadmin-gen.go index f00afd170dd..d8d6675b031 100644 --- a/analyticsadmin/v1alpha/analyticsadmin-gen.go +++ b/analyticsadmin/v1alpha/analyticsadmin-gen.go @@ -2790,10 +2790,6 @@ type GoogleAnalyticsAdminV1alphaBigQueryLink struct { // linked Google Cloud project. DailyExportEnabled bool `json:"dailyExportEnabled,omitempty"` - // EnterpriseExportEnabled: If set true, enables enterprise export to - // the linked Google Cloud project. - EnterpriseExportEnabled bool `json:"enterpriseExportEnabled,omitempty"` - // ExcludedEvents: The list of event names that will be excluded from // exports. ExcludedEvents []string `json:"excludedEvents,omitempty"` @@ -2804,6 +2800,10 @@ type GoogleAnalyticsAdminV1alphaBigQueryLink struct { // ['properties/1000/dataStreams/2000'] ExportStreams []string `json:"exportStreams,omitempty"` + // FreshDailyExportEnabled: If set true, enables fresh daily export to + // the linked Google Cloud project. + FreshDailyExportEnabled bool `json:"freshDailyExportEnabled,omitempty"` + // IncludeAdvertisingId: If set true, exported data will include // advertising identifiers for mobile app streams. IncludeAdvertisingId bool `json:"includeAdvertisingId,omitempty"` diff --git a/apigee/v1/apigee-api.json b/apigee/v1/apigee-api.json index f1fe2fa1c33..e218086b886 100644 --- a/apigee/v1/apigee-api.json +++ b/apigee/v1/apigee-api.json @@ -1597,7 +1597,7 @@ "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.", + "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`.", "flatPath": "v1/organizations/{organizationsId}/appgroups", "httpMethod": "POST", "id": "apigee.organizations.appgroups.create", @@ -1684,7 +1684,7 @@ ], "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\"", + "description": "The filter expression to be used to get the list of AppGroups, where filtering can be done on status, channelId or channelUri of the app group. Examples: filter=status=active\", filter=channelId=, filter=channelUri=", "location": "query", "type": "string" }, @@ -1716,7 +1716,7 @@ ] }, "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.", + "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. **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", @@ -2128,7 +2128,7 @@ "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.", + "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, appType and appGroup. Examples: \"developerEmail=foo@bar.com\", \"appType=AppGroup\", or \"appType=Developer\" \"filter\" is supported from ver 1.10.0 and above.", "location": "query", "type": "string" }, @@ -6416,13 +6416,13 @@ "type": "string" }, "pageSize": { - "description": "The maximum number of incidents to return. The service may return fewer than this value. If unspecified, at most 50 incidents will be returned.", + "description": "Optional. The maximum number of incidents to return. The service may return fewer than this value. If unspecified, at most 50 incidents will be returned.", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "A page token, received from a previous `ListSecurityIncident` call. Provide this to retrieve the subsequent page.", + "description": "Optional. A page token, received from a previous `ListSecurityIncident` call. Provide this to retrieve the subsequent page.", "location": "query", "type": "string" }, @@ -8601,6 +8601,64 @@ }, "securityProfiles": { "methods": { + "create": { + "description": "CreateSecurityProfile create a new custom security profile.", + "flatPath": "v1/organizations/{organizationsId}/securityProfiles", + "httpMethod": "POST", + "id": "apigee.organizations.securityProfiles.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. Name of organization. Format: organizations/{org}", + "location": "path", + "pattern": "^organizations/[^/]+$", + "required": true, + "type": "string" + }, + "securityProfileId": { + "description": "Required. The ID to use for the SecurityProfile, which will become the final component of the action's resource name. This value should be 4-63 characters, and valid characters are /(^[a-z]([a-z0-9-]{​0,61}[a-z0-9])?$/.", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+parent}/securityProfiles", + "request": { + "$ref": "GoogleCloudApigeeV1SecurityProfile" + }, + "response": { + "$ref": "GoogleCloudApigeeV1SecurityProfile" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "DeleteSecurityProfile delete a profile with all its revisions.", + "flatPath": "v1/organizations/{organizationsId}/securityProfiles/{securityProfilesId}", + "httpMethod": "DELETE", + "id": "apigee.organizations.securityProfiles.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. Name of profile. Format: organizations/{org}/securityProfiles/{profile}", + "location": "path", + "pattern": "^organizations/[^/]+/securityProfiles/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "GoogleProtobufEmpty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, "get": { "description": "GetSecurityProfile gets the specified security profile. Returns NOT_FOUND if security profile is not present for the specified organization.", "flatPath": "v1/organizations/{organizationsId}/securityProfiles/{securityProfilesId}", @@ -8697,6 +8755,40 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] + }, + "patch": { + "description": "UpdateSecurityProfile update the metadata of security profile.", + "flatPath": "v1/organizations/{organizationsId}/securityProfiles/{securityProfilesId}", + "httpMethod": "PATCH", + "id": "apigee.organizations.securityProfiles.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Immutable. Name of the security profile resource. Format: organizations/{org}/securityProfiles/{profile}", + "location": "path", + "pattern": "^organizations/[^/]+/securityProfiles/[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Required. The list of fields to update.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}", + "request": { + "$ref": "GoogleCloudApigeeV1SecurityProfile" + }, + "response": { + "$ref": "GoogleCloudApigeeV1SecurityProfile" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] } }, "resources": { @@ -9242,7 +9334,7 @@ } } }, - "revision": "20230724", + "revision": "20230811", "rootUrl": "https://apigee.googleapis.com/", "schemas": { "EdgeConfigstoreBundleBadBundle": { @@ -14035,6 +14127,87 @@ }, "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", @@ -15199,7 +15372,7 @@ "type": "array" }, "displayName": { - "description": "Display name of the security incident.", + "description": "Optional. Display name of the security incident.", "type": "string" }, "firstDetectedTime": { @@ -15278,6 +15451,10 @@ "description": "Immutable. Name of the security profile resource. Format: organizations/{org}/securityProfiles/{profile}", "type": "string" }, + "profileConfig": { + "$ref": "GoogleCloudApigeeV1ProfileConfig", + "description": "Required. Customized profile configuration that computes the security score." + }, "revisionCreateTime": { "description": "Output only. The time when revision was created.", "format": "google-datetime", @@ -16309,7 +16486,7 @@ "type": "object" }, "GoogleIamV1Policy": { - "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/).", + "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": "GoogleIamV1Policy", "properties": { "auditConfigs": { @@ -16430,7 +16607,7 @@ "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`.", + "description": "The normal, successful response of the operation. 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" } }, diff --git a/apigee/v1/apigee-gen.go b/apigee/v1/apigee-gen.go index 2b1ad630e1a..401b4e35096 100644 --- a/apigee/v1/apigee-gen.go +++ b/apigee/v1/apigee-gen.go @@ -8577,6 +8577,117 @@ 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 { @@ -10410,7 +10521,7 @@ type GoogleCloudApigeeV1SecurityIncident struct { // Anomaly Detection. DetectionTypes []string `json:"detectionTypes,omitempty"` - // DisplayName: Display name of the security incident. + // DisplayName: Optional. Display name of the security incident. DisplayName string `json:"displayName,omitempty"` // FirstDetectedTime: Output only. The time when events associated with @@ -10492,6 +10603,10 @@ type GoogleCloudApigeeV1SecurityProfile struct { // organizations/{org}/securityProfiles/{profile} Name string `json:"name,omitempty"` + // ProfileConfig: Required. 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"` @@ -12260,7 +12375,7 @@ func (s *GoogleIamV1Binding) MarshalJSON() ([]byte, error) { // 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": +// **JSON example:** ``` { "bindings": [ { "role": // "roles/resourcemanager.organizationAdmin", "members": [ // "user:mike@example.com", "group:admins@example.com", // "domain:google.com", @@ -12269,17 +12384,17 @@ func (s *GoogleIamV1Binding) MarshalJSON() ([]byte, error) { // "user:eve@example.com" ], "condition": { "title": "expirable access", // "description": "Does not grant access after Sep 2020", "expression": // "request.time < 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 - +// "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 < // 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/). +// ``` For a description of IAM and its features, see the IAM +// documentation (https://cloud.google.com/iam/docs/). type GoogleIamV1Policy struct { // AuditConfigs: Specifies cloud audit logging configuration for this // policy. @@ -12522,8 +12637,8 @@ type GoogleLongrunningOperation struct { // `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: The normal, successful response of the operation. 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 @@ -20447,14 +20562,7 @@ type OrganizationsAppgroupsCreateCall struct { // 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. +// time, the AppGroup's state is set as `active`. // // - parent: Name of the Apigee organization in which the AppGroup is // created. Use the following structure in your request: @@ -20557,7 +20665,7 @@ func (c *OrganizationsAppgroupsCreateCall) Do(opts ...googleapi.CallOption) (*Go } return ret, nil // { - // "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.", + // "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`.", // "flatPath": "v1/organizations/{organizationsId}/appgroups", // "httpMethod": "POST", // "id": "apigee.organizations.appgroups.create", @@ -20898,8 +21006,8 @@ func (r *OrganizationsAppgroupsService) List(parent string) *OrganizationsAppgro // 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" +// status, channelId or channelUri of the app group. Examples: +// filter=status=active", filter=channelId=, filter=channelUri= func (c *OrganizationsAppgroupsListCall) Filter(filter string) *OrganizationsAppgroupsListCall { c.urlParams_.Set("filter", filter) return c @@ -21031,7 +21139,7 @@ func (c *OrganizationsAppgroupsListCall) Do(opts ...googleapi.CallOption) (*Goog // ], // "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\"", + // "description": "The filter expression to be used to get the list of AppGroups, where filtering can be done on status, channelId or channelUri of the app group. Examples: filter=status=active\", filter=channelId=, filter=channelUri=", // "location": "query", // "type": "string" // }, @@ -21101,14 +21209,13 @@ type OrganizationsAppgroupsUpdateCall struct { // 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. +// and not via AppGroup. **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}`. @@ -21219,7 +21326,7 @@ func (c *OrganizationsAppgroupsUpdateCall) Do(opts ...googleapi.CallOption) (*Go } 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.", + // "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. **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", @@ -23140,10 +23247,10 @@ func (c *OrganizationsAppsListCall) Expand(expand bool) *OrganizationsAppsListCa // 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. +// developerEmail, apiProduct, consumerKey, status, appId, appName, +// appType and appGroup. 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 @@ -23335,7 +23442,7 @@ func (c *OrganizationsAppsListCall) Do(opts ...googleapi.CallOption) (*GoogleClo // "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.", + // "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, appType and appGroup. Examples: \"developerEmail=foo@bar.com\", \"appType=AppGroup\", or \"appType=Developer\" \"filter\" is supported from ver 1.10.0 and above.", // "location": "query", // "type": "string" // }, @@ -44865,13 +44972,13 @@ func (c *OrganizationsEnvironmentsSecurityIncidentsListCall) Do(opts ...googleap // "type": "string" // }, // "pageSize": { - // "description": "The maximum number of incidents to return. The service may return fewer than this value. If unspecified, at most 50 incidents will be returned.", + // "description": "Optional. The maximum number of incidents to return. The service may return fewer than this value. If unspecified, at most 50 incidents will be returned.", // "format": "int32", // "location": "query", // "type": "integer" // }, // "pageToken": { - // "description": "A page token, received from a previous `ListSecurityIncident` call. Provide this to retrieve the subsequent page.", + // "description": "Optional. A page token, received from a previous `ListSecurityIncident` call. Provide this to retrieve the subsequent page.", // "location": "query", // "type": "string" // }, @@ -55462,6 +55569,298 @@ func (c *OrganizationsReportsUpdateCall) Do(opts ...googleapi.CallOption) (*Goog } +// method id "apigee.organizations.securityProfiles.create": + +type OrganizationsSecurityProfilesCreateCall struct { + s *Service + parent string + googlecloudapigeev1securityprofile *GoogleCloudApigeeV1SecurityProfile + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Create: CreateSecurityProfile create a new custom security profile. +// +// - parent: Name of organization. Format: organizations/{org}. +func (r *OrganizationsSecurityProfilesService) Create(parent string, googlecloudapigeev1securityprofile *GoogleCloudApigeeV1SecurityProfile) *OrganizationsSecurityProfilesCreateCall { + c := &OrganizationsSecurityProfilesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + c.googlecloudapigeev1securityprofile = googlecloudapigeev1securityprofile + return c +} + +// SecurityProfileId sets the optional parameter "securityProfileId": +// Required. The ID to use for the SecurityProfile, which will become +// the final component of the action's resource name. This value should +// be 4-63 characters, and valid characters are /(^a-z +// ([a-z0-9-]{​0,61}[a-z0-9])?$/. +func (c *OrganizationsSecurityProfilesCreateCall) SecurityProfileId(securityProfileId string) *OrganizationsSecurityProfilesCreateCall { + c.urlParams_.Set("securityProfileId", securityProfileId) + 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 *OrganizationsSecurityProfilesCreateCall) Fields(s ...googleapi.Field) *OrganizationsSecurityProfilesCreateCall { + 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 *OrganizationsSecurityProfilesCreateCall) Context(ctx context.Context) *OrganizationsSecurityProfilesCreateCall { + 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 *OrganizationsSecurityProfilesCreateCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *OrganizationsSecurityProfilesCreateCall) 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.googlecloudapigeev1securityprofile) + 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}/securityProfiles") + 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.securityProfiles.create" call. +// Exactly one of *GoogleCloudApigeeV1SecurityProfile or error will be +// non-nil. Any non-2xx status code is an error. Response headers are in +// either *GoogleCloudApigeeV1SecurityProfile.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 *OrganizationsSecurityProfilesCreateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudApigeeV1SecurityProfile, 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 := &GoogleCloudApigeeV1SecurityProfile{ + 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": "CreateSecurityProfile create a new custom security profile.", + // "flatPath": "v1/organizations/{organizationsId}/securityProfiles", + // "httpMethod": "POST", + // "id": "apigee.organizations.securityProfiles.create", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "parent": { + // "description": "Required. Name of organization. Format: organizations/{org}", + // "location": "path", + // "pattern": "^organizations/[^/]+$", + // "required": true, + // "type": "string" + // }, + // "securityProfileId": { + // "description": "Required. The ID to use for the SecurityProfile, which will become the final component of the action's resource name. This value should be 4-63 characters, and valid characters are /(^[a-z]([a-z0-9-]{​0,61}[a-z0-9])?$/.", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "v1/{+parent}/securityProfiles", + // "request": { + // "$ref": "GoogleCloudApigeeV1SecurityProfile" + // }, + // "response": { + // "$ref": "GoogleCloudApigeeV1SecurityProfile" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "apigee.organizations.securityProfiles.delete": + +type OrganizationsSecurityProfilesDeleteCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Delete: DeleteSecurityProfile delete a profile with all its +// revisions. +// +// - name: Name of profile. Format: +// organizations/{org}/securityProfiles/{profile}. +func (r *OrganizationsSecurityProfilesService) Delete(name string) *OrganizationsSecurityProfilesDeleteCall { + c := &OrganizationsSecurityProfilesDeleteCall{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 *OrganizationsSecurityProfilesDeleteCall) Fields(s ...googleapi.Field) *OrganizationsSecurityProfilesDeleteCall { + 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 *OrganizationsSecurityProfilesDeleteCall) Context(ctx context.Context) *OrganizationsSecurityProfilesDeleteCall { + 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 *OrganizationsSecurityProfilesDeleteCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *OrganizationsSecurityProfilesDeleteCall) 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.securityProfiles.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 *OrganizationsSecurityProfilesDeleteCall) 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": "DeleteSecurityProfile delete a profile with all its revisions.", + // "flatPath": "v1/organizations/{organizationsId}/securityProfiles/{securityProfilesId}", + // "httpMethod": "DELETE", + // "id": "apigee.organizations.securityProfiles.delete", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Required. Name of profile. Format: organizations/{org}/securityProfiles/{profile}", + // "location": "path", + // "pattern": "^organizations/[^/]+/securityProfiles/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+name}", + // "response": { + // "$ref": "GoogleProtobufEmpty" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + // method id "apigee.organizations.securityProfiles.get": type OrganizationsSecurityProfilesGetCall struct { @@ -56014,6 +56413,163 @@ func (c *OrganizationsSecurityProfilesListRevisionsCall) Pages(ctx context.Conte } } +// method id "apigee.organizations.securityProfiles.patch": + +type OrganizationsSecurityProfilesPatchCall struct { + s *Service + name string + googlecloudapigeev1securityprofile *GoogleCloudApigeeV1SecurityProfile + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Patch: UpdateSecurityProfile update the metadata of security profile. +// +// - name: Immutable. Name of the security profile resource. Format: +// organizations/{org}/securityProfiles/{profile}. +func (r *OrganizationsSecurityProfilesService) Patch(name string, googlecloudapigeev1securityprofile *GoogleCloudApigeeV1SecurityProfile) *OrganizationsSecurityProfilesPatchCall { + c := &OrganizationsSecurityProfilesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + c.googlecloudapigeev1securityprofile = googlecloudapigeev1securityprofile + return c +} + +// UpdateMask sets the optional parameter "updateMask": Required. The +// list of fields to update. +func (c *OrganizationsSecurityProfilesPatchCall) UpdateMask(updateMask string) *OrganizationsSecurityProfilesPatchCall { + 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 *OrganizationsSecurityProfilesPatchCall) Fields(s ...googleapi.Field) *OrganizationsSecurityProfilesPatchCall { + 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 *OrganizationsSecurityProfilesPatchCall) Context(ctx context.Context) *OrganizationsSecurityProfilesPatchCall { + 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 *OrganizationsSecurityProfilesPatchCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *OrganizationsSecurityProfilesPatchCall) 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.googlecloudapigeev1securityprofile) + 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 "apigee.organizations.securityProfiles.patch" call. +// Exactly one of *GoogleCloudApigeeV1SecurityProfile or error will be +// non-nil. Any non-2xx status code is an error. Response headers are in +// either *GoogleCloudApigeeV1SecurityProfile.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 *OrganizationsSecurityProfilesPatchCall) Do(opts ...googleapi.CallOption) (*GoogleCloudApigeeV1SecurityProfile, 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 := &GoogleCloudApigeeV1SecurityProfile{ + 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": "UpdateSecurityProfile update the metadata of security profile.", + // "flatPath": "v1/organizations/{organizationsId}/securityProfiles/{securityProfilesId}", + // "httpMethod": "PATCH", + // "id": "apigee.organizations.securityProfiles.patch", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Immutable. Name of the security profile resource. Format: organizations/{org}/securityProfiles/{profile}", + // "location": "path", + // "pattern": "^organizations/[^/]+/securityProfiles/[^/]+$", + // "required": true, + // "type": "string" + // }, + // "updateMask": { + // "description": "Required. The list of fields to update.", + // "format": "google-fieldmask", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "v1/{+name}", + // "request": { + // "$ref": "GoogleCloudApigeeV1SecurityProfile" + // }, + // "response": { + // "$ref": "GoogleCloudApigeeV1SecurityProfile" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + // method id "apigee.organizations.securityProfiles.environments.computeEnvironmentScores": type OrganizationsSecurityProfilesEnvironmentsComputeEnvironmentScoresCall struct { diff --git a/chat/v1/chat-api.json b/chat/v1/chat-api.json index 41cebeb076f..5f1312104f3 100644 --- a/chat/v1/chat-api.json +++ b/chat/v1/chat-api.json @@ -955,7 +955,7 @@ } } }, - "revision": "20230806", + "revision": "20230816", "rootUrl": "https://chat.googleapis.com/", "schemas": { "ActionParameter": { @@ -1496,7 +1496,7 @@ "type": "object" }, "DeprecatedEvent": { - "description": "Google Chat events. To learn how to use events, see [Receive and respond to Google Chat events](https://developers.google.com/chat/api/guides/message-formats).", + "description": "Google Chat app interaction events. To learn about interaction events, see [Receive and respond to Google Chat app interaction events](https://developers.google.com/chat/api/guides/message-formats).", "id": "DeprecatedEvent", "properties": { "action": { @@ -1512,7 +1512,7 @@ "type": "string" }, "dialogEventType": { - "description": "The type of [dialog](https://developers.google.com/chat/how-tos/dialogs) event received.", + "description": "The type of [dialog](https://developers.google.com/chat/how-tos/dialogs) interaction event received.", "enum": [ "TYPE_UNSPECIFIED", "REQUEST_DIALOG", @@ -1520,32 +1520,32 @@ "CANCEL_DIALOG" ], "enumDescriptions": [ - "This could be used when the corresponding event is not dialog related. For example an @mention.", + "This could be used when the corresponding interaction event is not dialog related. For example an @mention.", "Any user action that opens a [dialog](https://developers.google.com/chat/how-tos/dialogs).", - "A card click event from a [dialog](https://developers.google.com/chat/how-tos/dialogs).", + "A card click interaction event from a [dialog](https://developers.google.com/chat/how-tos/dialogs).", "The [dialog](https://developers.google.com/chat/how-tos/dialogs) was cancelled." ], "type": "string" }, "eventTime": { - "description": "The timestamp indicating when the event occurred.", + "description": "The timestamp indicating when the interaction event occurred.", "format": "google-datetime", "type": "string" }, "isDialogEvent": { - "description": "True when the event is related to [dialogs](https://developers.google.com/chat/how-tos/dialogs).", + "description": "True when the interaction event is related to [dialogs](https://developers.google.com/chat/how-tos/dialogs).", "type": "boolean" }, "message": { "$ref": "Message", - "description": "The message that triggered the event, if applicable." + "description": "The message that triggered the interaction event, if applicable." }, "space": { "$ref": "Space", - "description": "The space in which the event occurred." + "description": "The space in which the interaction event occurred." }, "threadKey": { - "description": "The Chat app-defined key for the thread related to the event. See [`spaces.messages.thread.threadKey`](/chat/api/reference/rest/v1/spaces.messages#Thread.FIELDS.thread_key) for more information.", + "description": "The Chat app-defined key for the thread related to the interaction event. See [`spaces.messages.thread.threadKey`](/chat/api/reference/rest/v1/spaces.messages#Thread.FIELDS.thread_key) for more information.", "type": "string" }, "token": { @@ -1553,7 +1553,7 @@ "type": "string" }, "type": { - "description": "The type of the event.", + "description": "The type of the interaction event.", "enum": [ "UNSPECIFIED", "MESSAGE", @@ -1572,7 +1572,7 @@ }, "user": { "$ref": "User", - "description": "The user that triggered the event." + "description": "The user that triggered the interaction event." } }, "type": "object" @@ -1807,7 +1807,7 @@ "type": "object" }, "GoogleAppsCardV1Card": { - "description": "Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. In Google Chat, cards appear in several places: - As stand-alone messages. - Accompanying a text message, just beneath the text message. - As a [dialog](https://developers.google.com/chat/how-tos/dialogs). The following example JSON creates a \"contact card\" that features: - A header with the contact's name, job title, and avatar picture. - A section with the contact information, including formatted text. - Buttons that users can click to share the contact, or see more or less information. For more examples, see [Design dynamic, interactive, and consistent UIs with cards](https://developers.google.com/chat/ui). ![Example contact card](https://developers.google.com/chat/images/card_api_reference.png) ``` { \"cardsV2\": [ { \"cardId\": \"unique-card-id\", \"card\": { \"header\": { \"title\": \"Sasha\", \"subtitle\": \"Software Engineer\", \"imageUrl\": \"https://developers.google.com/chat/images/quickstart-app-avatar.png\", \"imageType\": \"CIRCLE\", \"imageAltText\": \"Avatar for Sasha\", }, \"sections\": [ { \"header\": \"Contact Info\", \"collapsible\": true, \"uncollapsibleWidgetsCount\": 1, \"widgets\": [ { \"decoratedText\": { \"startIcon\": { \"knownIcon\": \"EMAIL\", }, \"text\": \"sasha@example.com\", } }, { \"decoratedText\": { \"startIcon\": { \"knownIcon\": \"PERSON\", }, \"text\": \"Online\", }, }, { \"decoratedText\": { \"startIcon\": { \"knownIcon\": \"PHONE\", }, \"text\": \"+1 (555) 555-1234\", } }, { \"buttonList\": { \"buttons\": [ { \"text\": \"Share\", \"onClick\": { \"openLink\": { \"url\": \"https://example.com/share\", } } }, { \"text\": \"Edit\", \"onClick\": { \"action\": { \"function\": \"goToView\", \"parameters\": [ { \"key\": \"viewType\", \"value\": \"EDIT\", } ], } } }, ], } }, ], }, ], }, } ], } ```", + "description": "Cards support a defined layout, interactive UI elements like buttons, and rich media like images. Use cards to present detailed information, gather information from users, and guide users to take a next step. In Google Chat, cards appear in several places: - As stand-alone messages. - Accompanying a text message, just beneath the text message. - As a [dialog](https://developers.google.com/chat/how-tos/dialogs). Only Google Chat apps can create card messages in Google Chat. If your Chat app uses [user authentication](https://developers.google.com/chat/api/guides/auth/users) to send messages on behalf of users, the messages can't contain cards. The following example JSON creates a \"contact card\" that features: - A header with the contact's name, job title, and avatar picture. - A section with the contact information, including formatted text. - Buttons that users can click to share the contact, or see more or less information. For more examples, see [Design dynamic, interactive, and consistent UIs with cards](https://developers.google.com/chat/ui). ![Example contact card](https://developers.google.com/chat/images/card_api_reference.png) ``` { \"cardsV2\": [ { \"cardId\": \"unique-card-id\", \"card\": { \"header\": { \"title\": \"Sasha\", \"subtitle\": \"Software Engineer\", \"imageUrl\": \"https://developers.google.com/chat/images/quickstart-app-avatar.png\", \"imageType\": \"CIRCLE\", \"imageAltText\": \"Avatar for Sasha\", }, \"sections\": [ { \"header\": \"Contact Info\", \"collapsible\": true, \"uncollapsibleWidgetsCount\": 1, \"widgets\": [ { \"decoratedText\": { \"startIcon\": { \"knownIcon\": \"EMAIL\", }, \"text\": \"sasha@example.com\", } }, { \"decoratedText\": { \"startIcon\": { \"knownIcon\": \"PERSON\", }, \"text\": \"Online\", }, }, { \"decoratedText\": { \"startIcon\": { \"knownIcon\": \"PHONE\", }, \"text\": \"+1 (555) 555-1234\", } }, { \"buttonList\": { \"buttons\": [ { \"text\": \"Share\", \"onClick\": { \"openLink\": { \"url\": \"https://example.com/share\", } } }, { \"text\": \"Edit\", \"onClick\": { \"action\": { \"function\": \"goToView\", \"parameters\": [ { \"key\": \"viewType\", \"value\": \"EDIT\", } ], } } }, ], } }, ], }, ], }, } ], } ```", "id": "GoogleAppsCardV1Card", "properties": { "cardActions": { @@ -2288,7 +2288,7 @@ }, "card": { "$ref": "GoogleAppsCardV1Card", - "description": "A new card is pushed to the card stack after clicking if specified. Supported by Google Workspace Add-ons, but not Chat apps." + "description": "A new card is pushed to the card stack after clicking if specified. Supported by Google Workspace Add-ons, but not Google Chat apps." }, "openDynamicLinkAction": { "$ref": "GoogleAppsCardV1Action", @@ -2543,7 +2543,7 @@ "properties": { "autoCompleteAction": { "$ref": "GoogleAppsCardV1Action", - "description": "Optional. Specify what action to take when the text input field provides suggestions to users who interact with it. If unspecified, the suggestions are set by `initialSuggestions` and are processed by the client. If specified, the app takes the action specified here, such as running a custom function. Supported by Google Workspace Add-ons, but not Chat apps." + "description": "Optional. Specify what action to take when the text input field provides suggestions to users who interact with it. If unspecified, the suggestions are set by `initialSuggestions` and are processed by the client. If specified, the app takes the action specified here, such as running a custom function. Supported by Google Workspace Add-ons, but not Google Chat apps." }, "hintText": { "description": "Text that appears below the text input field meant to assist users by prompting them to enter a certain value. This text is always visible. Required if `label` is unspecified. Otherwise, optional.", diff --git a/chat/v1/chat-gen.go b/chat/v1/chat-gen.go index 8bc577657a4..bf80c6a70b5 100644 --- a/chat/v1/chat-gen.go +++ b/chat/v1/chat-gen.go @@ -1260,8 +1260,9 @@ func (s *DeletionMetadata) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// DeprecatedEvent: Google Chat events. To learn how to use events, see -// Receive and respond to Google Chat events +// DeprecatedEvent: Google Chat app interaction events. To learn about +// interaction events, see Receive and respond to Google Chat app +// interaction events // (https://developers.google.com/chat/api/guides/message-formats). type DeprecatedEvent struct { // Action: The form action data associated with an interactive card that @@ -1285,35 +1286,38 @@ type DeprecatedEvent struct { ConfigCompleteRedirectUrl string `json:"configCompleteRedirectUrl,omitempty"` // DialogEventType: The type of dialog - // (https://developers.google.com/chat/how-tos/dialogs) event received. + // (https://developers.google.com/chat/how-tos/dialogs) interaction + // event received. // // Possible values: // "TYPE_UNSPECIFIED" - This could be used when the corresponding - // event is not dialog related. For example an @mention. + // interaction event is not dialog related. For example an @mention. // "REQUEST_DIALOG" - Any user action that opens a // [dialog](https://developers.google.com/chat/how-tos/dialogs). - // "SUBMIT_DIALOG" - A card click event from a + // "SUBMIT_DIALOG" - A card click interaction event from a // [dialog](https://developers.google.com/chat/how-tos/dialogs). // "CANCEL_DIALOG" - The // [dialog](https://developers.google.com/chat/how-tos/dialogs) was // cancelled. DialogEventType string `json:"dialogEventType,omitempty"` - // EventTime: The timestamp indicating when the event occurred. + // EventTime: The timestamp indicating when the interaction event + // occurred. EventTime string `json:"eventTime,omitempty"` - // IsDialogEvent: True when the event is related to dialogs + // IsDialogEvent: True when the interaction event is related to dialogs // (https://developers.google.com/chat/how-tos/dialogs). IsDialogEvent bool `json:"isDialogEvent,omitempty"` - // Message: The message that triggered the event, if applicable. + // Message: The message that triggered the interaction event, if + // applicable. Message *Message `json:"message,omitempty"` - // Space: The space in which the event occurred. + // Space: The space in which the interaction event occurred. Space *Space `json:"space,omitempty"` // ThreadKey: The Chat app-defined key for the thread related to the - // event. See `spaces.messages.thread.threadKey` + // interaction event. See `spaces.messages.thread.threadKey` // (/chat/api/reference/rest/v1/spaces.messages#Thread.FIELDS.thread_key) // for more information. ThreadKey string `json:"threadKey,omitempty"` @@ -1328,7 +1332,7 @@ type DeprecatedEvent struct { // (https://console.cloud.google.com/apis/api/chat.googleapis.com/hangouts-chat). Token string `json:"token,omitempty"` - // Type: The type of the event. + // Type: The type of the interaction event. // // Possible values: // "UNSPECIFIED" - Default value for the enum. DO NOT USE. @@ -1340,7 +1344,7 @@ type DeprecatedEvent struct { // "CARD_CLICKED" - The Chat app's interactive card was clicked. Type string `json:"type,omitempty"` - // User: The user that triggered the event. + // User: The user that triggered the interaction event. User *User `json:"user,omitempty"` // ForceSendFields is a list of field names (e.g. "Action") to @@ -1844,14 +1848,18 @@ func (s *GoogleAppsCardV1ButtonList) MarshalJSON() ([]byte, error) { // guide users to take a next step. In Google Chat, cards appear in // several places: - As stand-alone messages. - Accompanying a text // message, just beneath the text message. - As a dialog -// (https://developers.google.com/chat/how-tos/dialogs). The following -// example JSON creates a "contact card" that features: - A header with -// the contact's name, job title, and avatar picture. - A section with -// the contact information, including formatted text. - Buttons that -// users can click to share the contact, or see more or less -// information. For more examples, see Design dynamic, interactive, and -// consistent UIs with cards (https://developers.google.com/chat/ui). -// !Example contact card +// (https://developers.google.com/chat/how-tos/dialogs). Only Google +// Chat apps can create card messages in Google Chat. If your Chat app +// uses user authentication +// (https://developers.google.com/chat/api/guides/auth/users) to send +// messages on behalf of users, the messages can't contain cards. The +// following example JSON creates a "contact card" that features: - A +// header with the contact's name, job title, and avatar picture. - A +// section with the contact information, including formatted text. - +// Buttons that users can click to share the contact, or see more or +// less information. For more examples, see Design dynamic, interactive, +// and consistent UIs with cards +// (https://developers.google.com/chat/ui). !Example contact card // (https://developers.google.com/chat/images/card_api_reference.png) // ``` { "cardsV2": [ { "cardId": "unique-card-id", "card": { "header": // { "title": "Sasha", "subtitle": "Software Engineer", "imageUrl": @@ -2669,7 +2677,8 @@ type GoogleAppsCardV1OnClick struct { Action *GoogleAppsCardV1Action `json:"action,omitempty"` // Card: A new card is pushed to the card stack after clicking if - // specified. Supported by Google Workspace Add-ons, but not Chat apps. + // specified. Supported by Google Workspace Add-ons, but not Google Chat + // apps. Card *GoogleAppsCardV1Card `json:"card,omitempty"` // OpenDynamicLinkAction: An add-on triggers this action when the action @@ -3168,7 +3177,7 @@ type GoogleAppsCardV1TextInput struct { // If unspecified, the suggestions are set by `initialSuggestions` and // are processed by the client. If specified, the app takes the action // specified here, such as running a custom function. Supported by - // Google Workspace Add-ons, but not Chat apps. + // Google Workspace Add-ons, but not Google Chat apps. AutoCompleteAction *GoogleAppsCardV1Action `json:"autoCompleteAction,omitempty"` // HintText: Text that appears below the text input field meant to diff --git a/containeranalysis/v1/containeranalysis-api.json b/containeranalysis/v1/containeranalysis-api.json index d723e4efc15..226b4eb714a 100644 --- a/containeranalysis/v1/containeranalysis-api.json +++ b/containeranalysis/v1/containeranalysis-api.json @@ -755,7 +755,7 @@ } } }, - "revision": "20230804", + "revision": "20230811", "rootUrl": "https://containeranalysis.googleapis.com/", "schemas": { "AliasContext": { @@ -2574,6 +2574,25 @@ }, "type": "object" }, + "ContaineranalysisGoogleDevtoolsCloudbuildV1ConnectedRepository": { + "description": "Location of the source in a 2nd-gen Google Cloud Build repository resource.", + "id": "ContaineranalysisGoogleDevtoolsCloudbuildV1ConnectedRepository", + "properties": { + "dir": { + "description": "Directory, relative to the source root, in which to run the build.", + "type": "string" + }, + "repository": { + "description": "Required. Name of the Google Cloud Build repository, formatted as `projects/*/locations/*/connections/*/repositories/*`.", + "type": "string" + }, + "revision": { + "description": "The revision to fetch from the Git repository such as a branch, a tag, a commit SHA, or any Git ref.", + "type": "string" + } + }, + "type": "object" + }, "ContaineranalysisGoogleDevtoolsCloudbuildV1FileHashes": { "description": "Container message for hashes of byte content of files, used in SourceProvenance messages to verify integrity of source input to the build.", "id": "ContaineranalysisGoogleDevtoolsCloudbuildV1FileHashes", @@ -2818,6 +2837,10 @@ "description": "Location of the source in a supported storage service.", "id": "ContaineranalysisGoogleDevtoolsCloudbuildV1Source", "properties": { + "connectedRepository": { + "$ref": "ContaineranalysisGoogleDevtoolsCloudbuildV1ConnectedRepository", + "description": "Optional. If provided, get the source from this 2nd-gen Google Cloud Build repository resource." + }, "gitSource": { "$ref": "ContaineranalysisGoogleDevtoolsCloudbuildV1GitSource", "description": "If provided, get the source from this Git repository." diff --git a/containeranalysis/v1/containeranalysis-gen.go b/containeranalysis/v1/containeranalysis-gen.go index 2406ee68a98..77a48f3db83 100644 --- a/containeranalysis/v1/containeranalysis-gen.go +++ b/containeranalysis/v1/containeranalysis-gen.go @@ -2595,6 +2595,45 @@ func (s *ContaineranalysisGoogleDevtoolsCloudbuildV1BuiltImage) MarshalJSON() ([ return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// ContaineranalysisGoogleDevtoolsCloudbuildV1ConnectedRepository: +// Location of the source in a 2nd-gen Google Cloud Build repository +// resource. +type ContaineranalysisGoogleDevtoolsCloudbuildV1ConnectedRepository struct { + // Dir: Directory, relative to the source root, in which to run the + // build. + Dir string `json:"dir,omitempty"` + + // Repository: Required. Name of the Google Cloud Build repository, + // formatted as `projects/*/locations/*/connections/*/repositories/*`. + Repository string `json:"repository,omitempty"` + + // Revision: The revision to fetch from the Git repository such as a + // branch, a tag, a commit SHA, or any Git ref. + Revision string `json:"revision,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Dir") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Dir") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *ContaineranalysisGoogleDevtoolsCloudbuildV1ConnectedRepository) MarshalJSON() ([]byte, error) { + type NoMethod ContaineranalysisGoogleDevtoolsCloudbuildV1ConnectedRepository + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // ContaineranalysisGoogleDevtoolsCloudbuildV1FileHashes: Container // message for hashes of byte content of files, used in SourceProvenance // messages to verify integrity of source input to the build. @@ -2985,6 +3024,10 @@ func (s *ContaineranalysisGoogleDevtoolsCloudbuildV1Secrets) MarshalJSON() ([]by // ContaineranalysisGoogleDevtoolsCloudbuildV1Source: Location of the // source in a supported storage service. type ContaineranalysisGoogleDevtoolsCloudbuildV1Source struct { + // ConnectedRepository: Optional. If provided, get the source from this + // 2nd-gen Google Cloud Build repository resource. + ConnectedRepository *ContaineranalysisGoogleDevtoolsCloudbuildV1ConnectedRepository `json:"connectedRepository,omitempty"` + // GitSource: If provided, get the source from this Git repository. GitSource *ContaineranalysisGoogleDevtoolsCloudbuildV1GitSource `json:"gitSource,omitempty"` @@ -3001,20 +3044,21 @@ type ContaineranalysisGoogleDevtoolsCloudbuildV1Source struct { // (https://github.com/GoogleCloudPlatform/cloud-builders/tree/master/gcs-fetcher). StorageSourceManifest *ContaineranalysisGoogleDevtoolsCloudbuildV1StorageSourceManifest `json:"storageSourceManifest,omitempty"` - // ForceSendFields is a list of field names (e.g. "GitSource") to - // unconditionally include in API requests. By default, fields with + // ForceSendFields is a list of field names (e.g. "ConnectedRepository") + // to unconditionally include in API requests. By default, fields with // empty or default values are omitted from API requests. However, any // non-pointer, non-interface field appearing in ForceSendFields will be // sent to the server regardless of whether the field is empty or not. // This may be used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "GitSource") to include in - // API requests with the JSON null value. By default, fields with empty - // values are omitted from API requests. However, any field with an - // empty value appearing in NullFields will be sent to the server as - // null. It is an 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. "ConnectedRepository") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if 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/containeranalysis/v1alpha1/containeranalysis-api.json b/containeranalysis/v1alpha1/containeranalysis-api.json index a679e7ce515..dcf86aeea91 100644 --- a/containeranalysis/v1alpha1/containeranalysis-api.json +++ b/containeranalysis/v1alpha1/containeranalysis-api.json @@ -1233,7 +1233,7 @@ } } }, - "revision": "20230804", + "revision": "20230811", "rootUrl": "https://containeranalysis.googleapis.com/", "schemas": { "AnalysisCompleted": { @@ -2863,6 +2863,25 @@ }, "type": "object" }, + "ContaineranalysisGoogleDevtoolsCloudbuildV1ConnectedRepository": { + "description": "Location of the source in a 2nd-gen Google Cloud Build repository resource.", + "id": "ContaineranalysisGoogleDevtoolsCloudbuildV1ConnectedRepository", + "properties": { + "dir": { + "description": "Directory, relative to the source root, in which to run the build.", + "type": "string" + }, + "repository": { + "description": "Required. Name of the Google Cloud Build repository, formatted as `projects/*/locations/*/connections/*/repositories/*`.", + "type": "string" + }, + "revision": { + "description": "The revision to fetch from the Git repository such as a branch, a tag, a commit SHA, or any Git ref.", + "type": "string" + } + }, + "type": "object" + }, "ContaineranalysisGoogleDevtoolsCloudbuildV1FileHashes": { "description": "Container message for hashes of byte content of files, used in SourceProvenance messages to verify integrity of source input to the build.", "id": "ContaineranalysisGoogleDevtoolsCloudbuildV1FileHashes", @@ -3107,6 +3126,10 @@ "description": "Location of the source in a supported storage service.", "id": "ContaineranalysisGoogleDevtoolsCloudbuildV1Source", "properties": { + "connectedRepository": { + "$ref": "ContaineranalysisGoogleDevtoolsCloudbuildV1ConnectedRepository", + "description": "Optional. If provided, get the source from this 2nd-gen Google Cloud Build repository resource." + }, "gitSource": { "$ref": "ContaineranalysisGoogleDevtoolsCloudbuildV1GitSource", "description": "If provided, get the source from this Git repository." diff --git a/containeranalysis/v1alpha1/containeranalysis-gen.go b/containeranalysis/v1alpha1/containeranalysis-gen.go index d72ac7c2197..ab640e6e3ca 100644 --- a/containeranalysis/v1alpha1/containeranalysis-gen.go +++ b/containeranalysis/v1alpha1/containeranalysis-gen.go @@ -2470,6 +2470,45 @@ func (s *ContaineranalysisGoogleDevtoolsCloudbuildV1BuiltImage) MarshalJSON() ([ return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// ContaineranalysisGoogleDevtoolsCloudbuildV1ConnectedRepository: +// Location of the source in a 2nd-gen Google Cloud Build repository +// resource. +type ContaineranalysisGoogleDevtoolsCloudbuildV1ConnectedRepository struct { + // Dir: Directory, relative to the source root, in which to run the + // build. + Dir string `json:"dir,omitempty"` + + // Repository: Required. Name of the Google Cloud Build repository, + // formatted as `projects/*/locations/*/connections/*/repositories/*`. + Repository string `json:"repository,omitempty"` + + // Revision: The revision to fetch from the Git repository such as a + // branch, a tag, a commit SHA, or any Git ref. + Revision string `json:"revision,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Dir") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Dir") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *ContaineranalysisGoogleDevtoolsCloudbuildV1ConnectedRepository) MarshalJSON() ([]byte, error) { + type NoMethod ContaineranalysisGoogleDevtoolsCloudbuildV1ConnectedRepository + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // ContaineranalysisGoogleDevtoolsCloudbuildV1FileHashes: Container // message for hashes of byte content of files, used in SourceProvenance // messages to verify integrity of source input to the build. @@ -2860,6 +2899,10 @@ func (s *ContaineranalysisGoogleDevtoolsCloudbuildV1Secrets) MarshalJSON() ([]by // ContaineranalysisGoogleDevtoolsCloudbuildV1Source: Location of the // source in a supported storage service. type ContaineranalysisGoogleDevtoolsCloudbuildV1Source struct { + // ConnectedRepository: Optional. If provided, get the source from this + // 2nd-gen Google Cloud Build repository resource. + ConnectedRepository *ContaineranalysisGoogleDevtoolsCloudbuildV1ConnectedRepository `json:"connectedRepository,omitempty"` + // GitSource: If provided, get the source from this Git repository. GitSource *ContaineranalysisGoogleDevtoolsCloudbuildV1GitSource `json:"gitSource,omitempty"` @@ -2876,20 +2919,21 @@ type ContaineranalysisGoogleDevtoolsCloudbuildV1Source struct { // (https://github.com/GoogleCloudPlatform/cloud-builders/tree/master/gcs-fetcher). StorageSourceManifest *ContaineranalysisGoogleDevtoolsCloudbuildV1StorageSourceManifest `json:"storageSourceManifest,omitempty"` - // ForceSendFields is a list of field names (e.g. "GitSource") to - // unconditionally include in API requests. By default, fields with + // ForceSendFields is a list of field names (e.g. "ConnectedRepository") + // to unconditionally include in API requests. By default, fields with // empty or default values are omitted from API requests. However, any // non-pointer, non-interface field appearing in ForceSendFields will be // sent to the server regardless of whether the field is empty or not. // This may be used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "GitSource") to include in - // API requests with the JSON null value. By default, fields with empty - // values are omitted from API requests. However, any field with an - // empty value appearing in NullFields will be sent to the server as - // null. It is an 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. "ConnectedRepository") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if 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/containeranalysis/v1beta1/containeranalysis-api.json b/containeranalysis/v1beta1/containeranalysis-api.json index 882ccbcfb1c..b2ee9674ab0 100644 --- a/containeranalysis/v1beta1/containeranalysis-api.json +++ b/containeranalysis/v1beta1/containeranalysis-api.json @@ -815,7 +815,7 @@ } } }, - "revision": "20230804", + "revision": "20230811", "rootUrl": "https://containeranalysis.googleapis.com/", "schemas": { "AliasContext": { @@ -2547,6 +2547,25 @@ }, "type": "object" }, + "ContaineranalysisGoogleDevtoolsCloudbuildV1ConnectedRepository": { + "description": "Location of the source in a 2nd-gen Google Cloud Build repository resource.", + "id": "ContaineranalysisGoogleDevtoolsCloudbuildV1ConnectedRepository", + "properties": { + "dir": { + "description": "Directory, relative to the source root, in which to run the build.", + "type": "string" + }, + "repository": { + "description": "Required. Name of the Google Cloud Build repository, formatted as `projects/*/locations/*/connections/*/repositories/*`.", + "type": "string" + }, + "revision": { + "description": "The revision to fetch from the Git repository such as a branch, a tag, a commit SHA, or any Git ref.", + "type": "string" + } + }, + "type": "object" + }, "ContaineranalysisGoogleDevtoolsCloudbuildV1FileHashes": { "description": "Container message for hashes of byte content of files, used in SourceProvenance messages to verify integrity of source input to the build.", "id": "ContaineranalysisGoogleDevtoolsCloudbuildV1FileHashes", @@ -2791,6 +2810,10 @@ "description": "Location of the source in a supported storage service.", "id": "ContaineranalysisGoogleDevtoolsCloudbuildV1Source", "properties": { + "connectedRepository": { + "$ref": "ContaineranalysisGoogleDevtoolsCloudbuildV1ConnectedRepository", + "description": "Optional. If provided, get the source from this 2nd-gen Google Cloud Build repository resource." + }, "gitSource": { "$ref": "ContaineranalysisGoogleDevtoolsCloudbuildV1GitSource", "description": "If provided, get the source from this Git repository." diff --git a/containeranalysis/v1beta1/containeranalysis-gen.go b/containeranalysis/v1beta1/containeranalysis-gen.go index e6a950ce3d4..108d7be5415 100644 --- a/containeranalysis/v1beta1/containeranalysis-gen.go +++ b/containeranalysis/v1beta1/containeranalysis-gen.go @@ -2484,6 +2484,45 @@ func (s *ContaineranalysisGoogleDevtoolsCloudbuildV1BuiltImage) MarshalJSON() ([ return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// ContaineranalysisGoogleDevtoolsCloudbuildV1ConnectedRepository: +// Location of the source in a 2nd-gen Google Cloud Build repository +// resource. +type ContaineranalysisGoogleDevtoolsCloudbuildV1ConnectedRepository struct { + // Dir: Directory, relative to the source root, in which to run the + // build. + Dir string `json:"dir,omitempty"` + + // Repository: Required. Name of the Google Cloud Build repository, + // formatted as `projects/*/locations/*/connections/*/repositories/*`. + Repository string `json:"repository,omitempty"` + + // Revision: The revision to fetch from the Git repository such as a + // branch, a tag, a commit SHA, or any Git ref. + Revision string `json:"revision,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Dir") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Dir") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *ContaineranalysisGoogleDevtoolsCloudbuildV1ConnectedRepository) MarshalJSON() ([]byte, error) { + type NoMethod ContaineranalysisGoogleDevtoolsCloudbuildV1ConnectedRepository + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // ContaineranalysisGoogleDevtoolsCloudbuildV1FileHashes: Container // message for hashes of byte content of files, used in SourceProvenance // messages to verify integrity of source input to the build. @@ -2874,6 +2913,10 @@ func (s *ContaineranalysisGoogleDevtoolsCloudbuildV1Secrets) MarshalJSON() ([]by // ContaineranalysisGoogleDevtoolsCloudbuildV1Source: Location of the // source in a supported storage service. type ContaineranalysisGoogleDevtoolsCloudbuildV1Source struct { + // ConnectedRepository: Optional. If provided, get the source from this + // 2nd-gen Google Cloud Build repository resource. + ConnectedRepository *ContaineranalysisGoogleDevtoolsCloudbuildV1ConnectedRepository `json:"connectedRepository,omitempty"` + // GitSource: If provided, get the source from this Git repository. GitSource *ContaineranalysisGoogleDevtoolsCloudbuildV1GitSource `json:"gitSource,omitempty"` @@ -2890,20 +2933,21 @@ type ContaineranalysisGoogleDevtoolsCloudbuildV1Source struct { // (https://github.com/GoogleCloudPlatform/cloud-builders/tree/master/gcs-fetcher). StorageSourceManifest *ContaineranalysisGoogleDevtoolsCloudbuildV1StorageSourceManifest `json:"storageSourceManifest,omitempty"` - // ForceSendFields is a list of field names (e.g. "GitSource") to - // unconditionally include in API requests. By default, fields with + // ForceSendFields is a list of field names (e.g. "ConnectedRepository") + // to unconditionally include in API requests. By default, fields with // empty or default values are omitted from API requests. However, any // non-pointer, non-interface field appearing in ForceSendFields will be // sent to the server regardless of whether the field is empty or not. // This may be used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "GitSource") to include in - // API requests with the JSON null value. By default, fields with empty - // values are omitted from API requests. However, any field with an - // empty value appearing in NullFields will be sent to the server as - // null. It is an 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. "ConnectedRepository") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if 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/datacatalog/v1/datacatalog-api.json b/datacatalog/v1/datacatalog-api.json index 4679ef44248..aca46c814ff 100644 --- a/datacatalog/v1/datacatalog-api.json +++ b/datacatalog/v1/datacatalog-api.json @@ -2144,7 +2144,7 @@ } } }, - "revision": "20230804", + "revision": "20230811", "rootUrl": "https://datacatalog.googleapis.com/", "schemas": { "Binding": { @@ -2689,7 +2689,8 @@ "CLOUD_SPANNER", "CLOUD_BIGTABLE", "CLOUD_SQL", - "LOOKER" + "LOOKER", + "VERTEX_AI" ], "enumDescriptions": [ "Default unknown system.", @@ -2700,7 +2701,8 @@ "Cloud Spanner", "Cloud Bigtable", "Cloud Sql", - "Looker" + "Looker", + "Vertex AI" ], "type": "string" } @@ -2763,6 +2765,17 @@ }, "type": "object" }, + "GoogleCloudDatacatalogV1DatasetSpec": { + "description": "Specification that applies to a dataset. Valid only for entries with the `DATASET` type.", + "id": "GoogleCloudDatacatalogV1DatasetSpec", + "properties": { + "vertexDatasetSpec": { + "$ref": "GoogleCloudDatacatalogV1VertexDatasetSpec", + "description": "Vertex AI Dataset specific fields" + } + }, + "type": "object" + }, "GoogleCloudDatacatalogV1DumpItem": { "description": "Wrapper for any item that can be contained in the dump.", "id": "GoogleCloudDatacatalogV1DumpItem", @@ -2809,6 +2822,10 @@ "$ref": "GoogleCloudDatacatalogV1DatabaseTableSpec", "description": "Specification that applies to a table resource. Valid only for entries with the `TABLE` or `EXPLORE` type." }, + "datasetSpec": { + "$ref": "GoogleCloudDatacatalogV1DatasetSpec", + "description": "Specification that applies to a dataset." + }, "description": { "description": "Entry description that can consist of several sentences or paragraphs that describe entry contents. The description must not contain Unicode non-characters as well as C0 and C1 control codes except tabs (HT), new lines (LF), carriage returns (CR), and page breaks (FF). The maximum size is 2000 bytes when encoded in UTF-8. Default value is an empty string.", "type": "string" @@ -2840,7 +2857,8 @@ "CLOUD_SPANNER", "CLOUD_BIGTABLE", "CLOUD_SQL", - "LOOKER" + "LOOKER", + "VERTEX_AI" ], "enumDescriptions": [ "Default unknown system.", @@ -2851,7 +2869,8 @@ "Cloud Spanner", "Cloud Bigtable", "Cloud Sql", - "Looker" + "Looker", + "Vertex AI" ], "readOnly": true, "type": "string" @@ -2871,6 +2890,10 @@ "$ref": "GoogleCloudDatacatalogV1LookerSystemSpec", "description": "Specification that applies to Looker sysstem. Only settable when `user_specified_system` is equal to `LOOKER`" }, + "modelSpec": { + "$ref": "GoogleCloudDatacatalogV1ModelSpec", + "description": "Model specification." + }, "name": { "description": "Output only. The resource name of an entry in URL format. Note: The entry itself and its child resources might not be stored in the location specified in its name.", "readOnly": true, @@ -3341,6 +3364,17 @@ }, "type": "object" }, + "GoogleCloudDatacatalogV1ModelSpec": { + "description": "Specification that applies to a model. Valid only for entries with the `MODEL` type.", + "id": "GoogleCloudDatacatalogV1ModelSpec", + "properties": { + "vertexModelSpec": { + "$ref": "GoogleCloudDatacatalogV1VertexModelSpec", + "description": "Specification for vertex model resources." + } + }, + "type": "object" + }, "GoogleCloudDatacatalogV1ModifyEntryContactsRequest": { "description": "Request message for ModifyEntryContacts.", "id": "GoogleCloudDatacatalogV1ModifyEntryContactsRequest", @@ -3819,7 +3853,8 @@ "CLOUD_SPANNER", "CLOUD_BIGTABLE", "CLOUD_SQL", - "LOOKER" + "LOOKER", + "VERTEX_AI" ], "enumDescriptions": [ "Default unknown system.", @@ -3830,7 +3865,8 @@ "Cloud Spanner", "Cloud Bigtable", "Cloud Sql", - "Looker" + "Looker", + "Vertex AI" ], "readOnly": true, "type": "string" @@ -4350,6 +4386,111 @@ }, "type": "object" }, + "GoogleCloudDatacatalogV1VertexDatasetSpec": { + "description": "Specification for vertex dataset resources.", + "id": "GoogleCloudDatacatalogV1VertexDatasetSpec", + "properties": { + "dataItemCount": { + "description": "The number of DataItems in this Dataset. Only apply for non-structured Dataset.", + "format": "int64", + "type": "string" + }, + "dataType": { + "description": "Type of the dataset.", + "enum": [ + "DATA_TYPE_UNSPECIFIED", + "TABLE", + "IMAGE", + "TEXT", + "VIDEO", + "CONVERSATION", + "TIME_SERIES", + "DOCUMENT", + "TEXT_TO_SPEECH", + "TRANSLATION", + "STORE_VISION", + "ENTERPRISE_KNOWLEDGE_GRAPH", + "TEXT_PROMPT" + ], + "enumDescriptions": [ + "Should not be used.", + "Structured data dataset.", + "Image dataset which supports ImageClassification, ImageObjectDetection and ImageSegmentation problems.", + "Document dataset which supports TextClassification, TextExtraction and TextSentiment problems.", + "Video dataset which supports VideoClassification, VideoObjectTracking and VideoActionRecognition problems.", + "Conversation dataset which supports conversation problems.", + "TimeSeries dataset.", + "Document dataset which supports DocumentAnnotation problems.", + "TextToSpeech dataset which supports TextToSpeech problems.", + "Translation dataset which supports Translation problems.", + "Store Vision dataset which is used for HITL integration.", + "Enterprise Knowledge Graph dataset which is used for HITL labeling integration.", + "Text prompt dataset which supports Large Language Models." + ], + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDatacatalogV1VertexModelSourceInfo": { + "description": "Detail description of the source information of a Vertex model.", + "id": "GoogleCloudDatacatalogV1VertexModelSourceInfo", + "properties": { + "copy": { + "description": "If this Model is copy of another Model. If true then source_type pertains to the original.", + "type": "boolean" + }, + "sourceType": { + "description": "Type of the model source.", + "enum": [ + "MODEL_SOURCE_TYPE_UNSPECIFIED", + "AUTOML", + "CUSTOM", + "BQML", + "MODEL_GARDEN" + ], + "enumDescriptions": [ + "Should not be used.", + "The Model is uploaded by automl training pipeline.", + "The Model is uploaded by user or custom training pipeline.", + "The Model is registered and sync'ed from BigQuery ML.", + "The Model is saved or tuned from Model Garden." + ], + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDatacatalogV1VertexModelSpec": { + "description": "Specification for vertex model resources.", + "id": "GoogleCloudDatacatalogV1VertexModelSpec", + "properties": { + "containerImageUri": { + "description": "URI of the Docker image to be used as the custom container for serving predictions.", + "type": "string" + }, + "versionAliases": { + "description": "User provided version aliases so that a model version can be referenced via alias", + "items": { + "type": "string" + }, + "type": "array" + }, + "versionDescription": { + "description": "The description of this version.", + "type": "string" + }, + "versionId": { + "description": "The version ID of the model.", + "type": "string" + }, + "vertexModelSourceInfo": { + "$ref": "GoogleCloudDatacatalogV1VertexModelSourceInfo", + "description": "Source of a Vertex model." + } + }, + "type": "object" + }, "GoogleCloudDatacatalogV1ViewSpec": { "description": "Table view specification.", "id": "GoogleCloudDatacatalogV1ViewSpec", diff --git a/datacatalog/v1/datacatalog-gen.go b/datacatalog/v1/datacatalog-gen.go index f3a53e91346..da25cc8367d 100644 --- a/datacatalog/v1/datacatalog-gen.go +++ b/datacatalog/v1/datacatalog-gen.go @@ -1287,6 +1287,7 @@ type GoogleCloudDatacatalogV1DataplexExternalTable struct { // "CLOUD_BIGTABLE" - Cloud Bigtable // "CLOUD_SQL" - Cloud Sql // "LOOKER" - Looker + // "VERTEX_AI" - Vertex AI System string `json:"system,omitempty"` // ForceSendFields is a list of field names (e.g. "DataCatalogEntry") to @@ -1422,6 +1423,36 @@ func (s *GoogleCloudDatacatalogV1DataplexTableSpec) MarshalJSON() ([]byte, error return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// GoogleCloudDatacatalogV1DatasetSpec: Specification that applies to a +// dataset. Valid only for entries with the `DATASET` type. +type GoogleCloudDatacatalogV1DatasetSpec struct { + // VertexDatasetSpec: Vertex AI Dataset specific fields + VertexDatasetSpec *GoogleCloudDatacatalogV1VertexDatasetSpec `json:"vertexDatasetSpec,omitempty"` + + // ForceSendFields is a list of field names (e.g. "VertexDatasetSpec") + // to unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "VertexDatasetSpec") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDatacatalogV1DatasetSpec) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDatacatalogV1DatasetSpec + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // GoogleCloudDatacatalogV1DumpItem: Wrapper for any item that can be // contained in the dump. type GoogleCloudDatacatalogV1DumpItem struct { @@ -1490,6 +1521,9 @@ type GoogleCloudDatacatalogV1Entry struct { // Valid only for entries with the `TABLE` or `EXPLORE` type. DatabaseTableSpec *GoogleCloudDatacatalogV1DatabaseTableSpec `json:"databaseTableSpec,omitempty"` + // DatasetSpec: Specification that applies to a dataset. + DatasetSpec *GoogleCloudDatacatalogV1DatasetSpec `json:"datasetSpec,omitempty"` + // Description: Entry description that can consist of several sentences // or paragraphs that describe entry contents. The description must not // contain Unicode non-characters as well as C0 and C1 control codes @@ -1531,6 +1565,7 @@ type GoogleCloudDatacatalogV1Entry struct { // "CLOUD_BIGTABLE" - Cloud Bigtable // "CLOUD_SQL" - Cloud Sql // "LOOKER" - Looker + // "VERTEX_AI" - Vertex AI IntegratedSystem string `json:"integratedSystem,omitempty"` // Labels: Cloud labels attached to the entry. In Data Catalog, you can @@ -1557,6 +1592,9 @@ type GoogleCloudDatacatalogV1Entry struct { // settable when `user_specified_system` is equal to `LOOKER` LookerSystemSpec *GoogleCloudDatacatalogV1LookerSystemSpec `json:"lookerSystemSpec,omitempty"` + // ModelSpec: Model specification. + ModelSpec *GoogleCloudDatacatalogV1ModelSpec `json:"modelSpec,omitempty"` + // Name: Output only. The resource name of an entry in URL format. Note: // The entry itself and its child resources might not be stored in the // location specified in its name. @@ -2458,6 +2496,36 @@ func (s *GoogleCloudDatacatalogV1LookerSystemSpec) MarshalJSON() ([]byte, error) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// GoogleCloudDatacatalogV1ModelSpec: Specification that applies to a +// model. Valid only for entries with the `MODEL` type. +type GoogleCloudDatacatalogV1ModelSpec struct { + // VertexModelSpec: Specification for vertex model resources. + VertexModelSpec *GoogleCloudDatacatalogV1VertexModelSpec `json:"vertexModelSpec,omitempty"` + + // ForceSendFields is a list of field names (e.g. "VertexModelSpec") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "VertexModelSpec") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDatacatalogV1ModelSpec) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDatacatalogV1ModelSpec + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // GoogleCloudDatacatalogV1ModifyEntryContactsRequest: Request message // for ModifyEntryContacts. type GoogleCloudDatacatalogV1ModifyEntryContactsRequest struct { @@ -3316,6 +3384,7 @@ type GoogleCloudDatacatalogV1SearchCatalogResult struct { // "CLOUD_BIGTABLE" - Cloud Bigtable // "CLOUD_SQL" - Cloud Sql // "LOOKER" - Looker + // "VERTEX_AI" - Vertex AI IntegratedSystem string `json:"integratedSystem,omitempty"` // LinkedResource: The full name of the Google Cloud resource the entry @@ -4242,6 +4311,149 @@ func (s *GoogleCloudDatacatalogV1UsageStats) UnmarshalJSON(data []byte) error { return nil } +// GoogleCloudDatacatalogV1VertexDatasetSpec: Specification for vertex +// dataset resources. +type GoogleCloudDatacatalogV1VertexDatasetSpec struct { + // DataItemCount: The number of DataItems in this Dataset. Only apply + // for non-structured Dataset. + DataItemCount int64 `json:"dataItemCount,omitempty,string"` + + // DataType: Type of the dataset. + // + // Possible values: + // "DATA_TYPE_UNSPECIFIED" - Should not be used. + // "TABLE" - Structured data dataset. + // "IMAGE" - Image dataset which supports ImageClassification, + // ImageObjectDetection and ImageSegmentation problems. + // "TEXT" - Document dataset which supports TextClassification, + // TextExtraction and TextSentiment problems. + // "VIDEO" - Video dataset which supports VideoClassification, + // VideoObjectTracking and VideoActionRecognition problems. + // "CONVERSATION" - Conversation dataset which supports conversation + // problems. + // "TIME_SERIES" - TimeSeries dataset. + // "DOCUMENT" - Document dataset which supports DocumentAnnotation + // problems. + // "TEXT_TO_SPEECH" - TextToSpeech dataset which supports TextToSpeech + // problems. + // "TRANSLATION" - Translation dataset which supports Translation + // problems. + // "STORE_VISION" - Store Vision dataset which is used for HITL + // integration. + // "ENTERPRISE_KNOWLEDGE_GRAPH" - Enterprise Knowledge Graph dataset + // which is used for HITL labeling integration. + // "TEXT_PROMPT" - Text prompt dataset which supports Large Language + // Models. + DataType string `json:"dataType,omitempty"` + + // ForceSendFields is a list of field names (e.g. "DataItemCount") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "DataItemCount") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDatacatalogV1VertexDatasetSpec) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDatacatalogV1VertexDatasetSpec + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDatacatalogV1VertexModelSourceInfo: Detail description of +// the source information of a Vertex model. +type GoogleCloudDatacatalogV1VertexModelSourceInfo struct { + // Copy: If this Model is copy of another Model. If true then + // source_type pertains to the original. + Copy bool `json:"copy,omitempty"` + + // SourceType: Type of the model source. + // + // Possible values: + // "MODEL_SOURCE_TYPE_UNSPECIFIED" - Should not be used. + // "AUTOML" - The Model is uploaded by automl training pipeline. + // "CUSTOM" - The Model is uploaded by user or custom training + // pipeline. + // "BQML" - The Model is registered and sync'ed from BigQuery ML. + // "MODEL_GARDEN" - The Model is saved or tuned from Model Garden. + SourceType string `json:"sourceType,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Copy") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Copy") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDatacatalogV1VertexModelSourceInfo) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDatacatalogV1VertexModelSourceInfo + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDatacatalogV1VertexModelSpec: Specification for vertex +// model resources. +type GoogleCloudDatacatalogV1VertexModelSpec struct { + // ContainerImageUri: URI of the Docker image to be used as the custom + // container for serving predictions. + ContainerImageUri string `json:"containerImageUri,omitempty"` + + // VersionAliases: User provided version aliases so that a model version + // can be referenced via alias + VersionAliases []string `json:"versionAliases,omitempty"` + + // VersionDescription: The description of this version. + VersionDescription string `json:"versionDescription,omitempty"` + + // VersionId: The version ID of the model. + VersionId string `json:"versionId,omitempty"` + + // VertexModelSourceInfo: Source of a Vertex model. + VertexModelSourceInfo *GoogleCloudDatacatalogV1VertexModelSourceInfo `json:"vertexModelSourceInfo,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ContainerImageUri") + // to unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ContainerImageUri") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDatacatalogV1VertexModelSpec) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDatacatalogV1VertexModelSpec + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // GoogleCloudDatacatalogV1ViewSpec: Table view specification. type GoogleCloudDatacatalogV1ViewSpec struct { // ViewQuery: Output only. The query that defines the table view. diff --git a/datacatalog/v1beta1/datacatalog-api.json b/datacatalog/v1beta1/datacatalog-api.json index dca86db9705..9760efa22ee 100644 --- a/datacatalog/v1beta1/datacatalog-api.json +++ b/datacatalog/v1beta1/datacatalog-api.json @@ -1813,7 +1813,7 @@ } } }, - "revision": "20230804", + "revision": "20230811", "rootUrl": "https://datacatalog.googleapis.com/", "schemas": { "Binding": { @@ -2347,7 +2347,8 @@ "CLOUD_SPANNER", "CLOUD_BIGTABLE", "CLOUD_SQL", - "LOOKER" + "LOOKER", + "VERTEX_AI" ], "enumDescriptions": [ "Default unknown system.", @@ -2358,7 +2359,8 @@ "Cloud Spanner", "Cloud Bigtable", "Cloud Sql", - "Looker" + "Looker", + "Vertex AI" ], "type": "string" } @@ -2421,6 +2423,17 @@ }, "type": "object" }, + "GoogleCloudDatacatalogV1DatasetSpec": { + "description": "Specification that applies to a dataset. Valid only for entries with the `DATASET` type.", + "id": "GoogleCloudDatacatalogV1DatasetSpec", + "properties": { + "vertexDatasetSpec": { + "$ref": "GoogleCloudDatacatalogV1VertexDatasetSpec", + "description": "Vertex AI Dataset specific fields" + } + }, + "type": "object" + }, "GoogleCloudDatacatalogV1DumpItem": { "description": "Wrapper for any item that can be contained in the dump.", "id": "GoogleCloudDatacatalogV1DumpItem", @@ -2467,6 +2480,10 @@ "$ref": "GoogleCloudDatacatalogV1DatabaseTableSpec", "description": "Specification that applies to a table resource. Valid only for entries with the `TABLE` or `EXPLORE` type." }, + "datasetSpec": { + "$ref": "GoogleCloudDatacatalogV1DatasetSpec", + "description": "Specification that applies to a dataset." + }, "description": { "description": "Entry description that can consist of several sentences or paragraphs that describe entry contents. The description must not contain Unicode non-characters as well as C0 and C1 control codes except tabs (HT), new lines (LF), carriage returns (CR), and page breaks (FF). The maximum size is 2000 bytes when encoded in UTF-8. Default value is an empty string.", "type": "string" @@ -2498,7 +2515,8 @@ "CLOUD_SPANNER", "CLOUD_BIGTABLE", "CLOUD_SQL", - "LOOKER" + "LOOKER", + "VERTEX_AI" ], "enumDescriptions": [ "Default unknown system.", @@ -2509,7 +2527,8 @@ "Cloud Spanner", "Cloud Bigtable", "Cloud Sql", - "Looker" + "Looker", + "Vertex AI" ], "readOnly": true, "type": "string" @@ -2529,6 +2548,10 @@ "$ref": "GoogleCloudDatacatalogV1LookerSystemSpec", "description": "Specification that applies to Looker sysstem. Only settable when `user_specified_system` is equal to `LOOKER`" }, + "modelSpec": { + "$ref": "GoogleCloudDatacatalogV1ModelSpec", + "description": "Model specification." + }, "name": { "description": "Output only. The resource name of an entry in URL format. Note: The entry itself and its child resources might not be stored in the location specified in its name.", "readOnly": true, @@ -2760,6 +2783,17 @@ }, "type": "object" }, + "GoogleCloudDatacatalogV1ModelSpec": { + "description": "Specification that applies to a model. Valid only for entries with the `MODEL` type.", + "id": "GoogleCloudDatacatalogV1ModelSpec", + "properties": { + "vertexModelSpec": { + "$ref": "GoogleCloudDatacatalogV1VertexModelSpec", + "description": "Specification for vertex model resources." + } + }, + "type": "object" + }, "GoogleCloudDatacatalogV1PersonalDetails": { "description": "Entry metadata relevant only to the user and private to them.", "id": "GoogleCloudDatacatalogV1PersonalDetails", @@ -3252,6 +3286,111 @@ }, "type": "object" }, + "GoogleCloudDatacatalogV1VertexDatasetSpec": { + "description": "Specification for vertex dataset resources.", + "id": "GoogleCloudDatacatalogV1VertexDatasetSpec", + "properties": { + "dataItemCount": { + "description": "The number of DataItems in this Dataset. Only apply for non-structured Dataset.", + "format": "int64", + "type": "string" + }, + "dataType": { + "description": "Type of the dataset.", + "enum": [ + "DATA_TYPE_UNSPECIFIED", + "TABLE", + "IMAGE", + "TEXT", + "VIDEO", + "CONVERSATION", + "TIME_SERIES", + "DOCUMENT", + "TEXT_TO_SPEECH", + "TRANSLATION", + "STORE_VISION", + "ENTERPRISE_KNOWLEDGE_GRAPH", + "TEXT_PROMPT" + ], + "enumDescriptions": [ + "Should not be used.", + "Structured data dataset.", + "Image dataset which supports ImageClassification, ImageObjectDetection and ImageSegmentation problems.", + "Document dataset which supports TextClassification, TextExtraction and TextSentiment problems.", + "Video dataset which supports VideoClassification, VideoObjectTracking and VideoActionRecognition problems.", + "Conversation dataset which supports conversation problems.", + "TimeSeries dataset.", + "Document dataset which supports DocumentAnnotation problems.", + "TextToSpeech dataset which supports TextToSpeech problems.", + "Translation dataset which supports Translation problems.", + "Store Vision dataset which is used for HITL integration.", + "Enterprise Knowledge Graph dataset which is used for HITL labeling integration.", + "Text prompt dataset which supports Large Language Models." + ], + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDatacatalogV1VertexModelSourceInfo": { + "description": "Detail description of the source information of a Vertex model.", + "id": "GoogleCloudDatacatalogV1VertexModelSourceInfo", + "properties": { + "copy": { + "description": "If this Model is copy of another Model. If true then source_type pertains to the original.", + "type": "boolean" + }, + "sourceType": { + "description": "Type of the model source.", + "enum": [ + "MODEL_SOURCE_TYPE_UNSPECIFIED", + "AUTOML", + "CUSTOM", + "BQML", + "MODEL_GARDEN" + ], + "enumDescriptions": [ + "Should not be used.", + "The Model is uploaded by automl training pipeline.", + "The Model is uploaded by user or custom training pipeline.", + "The Model is registered and sync'ed from BigQuery ML.", + "The Model is saved or tuned from Model Garden." + ], + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudDatacatalogV1VertexModelSpec": { + "description": "Specification for vertex model resources.", + "id": "GoogleCloudDatacatalogV1VertexModelSpec", + "properties": { + "containerImageUri": { + "description": "URI of the Docker image to be used as the custom container for serving predictions.", + "type": "string" + }, + "versionAliases": { + "description": "User provided version aliases so that a model version can be referenced via alias", + "items": { + "type": "string" + }, + "type": "array" + }, + "versionDescription": { + "description": "The description of this version.", + "type": "string" + }, + "versionId": { + "description": "The version ID of the model.", + "type": "string" + }, + "vertexModelSourceInfo": { + "$ref": "GoogleCloudDatacatalogV1VertexModelSourceInfo", + "description": "Source of a Vertex model." + } + }, + "type": "object" + }, "GoogleCloudDatacatalogV1ViewSpec": { "description": "Table view specification.", "id": "GoogleCloudDatacatalogV1ViewSpec", diff --git a/datacatalog/v1beta1/datacatalog-gen.go b/datacatalog/v1beta1/datacatalog-gen.go index 02a86c3fb48..0e12fc129d1 100644 --- a/datacatalog/v1beta1/datacatalog-gen.go +++ b/datacatalog/v1beta1/datacatalog-gen.go @@ -1241,6 +1241,7 @@ type GoogleCloudDatacatalogV1DataplexExternalTable struct { // "CLOUD_BIGTABLE" - Cloud Bigtable // "CLOUD_SQL" - Cloud Sql // "LOOKER" - Looker + // "VERTEX_AI" - Vertex AI System string `json:"system,omitempty"` // ForceSendFields is a list of field names (e.g. "DataCatalogEntry") to @@ -1376,6 +1377,36 @@ func (s *GoogleCloudDatacatalogV1DataplexTableSpec) MarshalJSON() ([]byte, error return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// GoogleCloudDatacatalogV1DatasetSpec: Specification that applies to a +// dataset. Valid only for entries with the `DATASET` type. +type GoogleCloudDatacatalogV1DatasetSpec struct { + // VertexDatasetSpec: Vertex AI Dataset specific fields + VertexDatasetSpec *GoogleCloudDatacatalogV1VertexDatasetSpec `json:"vertexDatasetSpec,omitempty"` + + // ForceSendFields is a list of field names (e.g. "VertexDatasetSpec") + // to unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "VertexDatasetSpec") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDatacatalogV1DatasetSpec) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDatacatalogV1DatasetSpec + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // GoogleCloudDatacatalogV1DumpItem: Wrapper for any item that can be // contained in the dump. type GoogleCloudDatacatalogV1DumpItem struct { @@ -1444,6 +1475,9 @@ type GoogleCloudDatacatalogV1Entry struct { // Valid only for entries with the `TABLE` or `EXPLORE` type. DatabaseTableSpec *GoogleCloudDatacatalogV1DatabaseTableSpec `json:"databaseTableSpec,omitempty"` + // DatasetSpec: Specification that applies to a dataset. + DatasetSpec *GoogleCloudDatacatalogV1DatasetSpec `json:"datasetSpec,omitempty"` + // Description: Entry description that can consist of several sentences // or paragraphs that describe entry contents. The description must not // contain Unicode non-characters as well as C0 and C1 control codes @@ -1485,6 +1519,7 @@ type GoogleCloudDatacatalogV1Entry struct { // "CLOUD_BIGTABLE" - Cloud Bigtable // "CLOUD_SQL" - Cloud Sql // "LOOKER" - Looker + // "VERTEX_AI" - Vertex AI IntegratedSystem string `json:"integratedSystem,omitempty"` // Labels: Cloud labels attached to the entry. In Data Catalog, you can @@ -1511,6 +1546,9 @@ type GoogleCloudDatacatalogV1Entry struct { // settable when `user_specified_system` is equal to `LOOKER` LookerSystemSpec *GoogleCloudDatacatalogV1LookerSystemSpec `json:"lookerSystemSpec,omitempty"` + // ModelSpec: Model specification. + ModelSpec *GoogleCloudDatacatalogV1ModelSpec `json:"modelSpec,omitempty"` + // Name: Output only. The resource name of an entry in URL format. Note: // The entry itself and its child resources might not be stored in the // location specified in its name. @@ -1903,6 +1941,36 @@ func (s *GoogleCloudDatacatalogV1LookerSystemSpec) MarshalJSON() ([]byte, error) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// GoogleCloudDatacatalogV1ModelSpec: Specification that applies to a +// model. Valid only for entries with the `MODEL` type. +type GoogleCloudDatacatalogV1ModelSpec struct { + // VertexModelSpec: Specification for vertex model resources. + VertexModelSpec *GoogleCloudDatacatalogV1VertexModelSpec `json:"vertexModelSpec,omitempty"` + + // ForceSendFields is a list of field names (e.g. "VertexModelSpec") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "VertexModelSpec") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDatacatalogV1ModelSpec) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDatacatalogV1ModelSpec + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // GoogleCloudDatacatalogV1PersonalDetails: Entry metadata relevant only // to the user and private to them. type GoogleCloudDatacatalogV1PersonalDetails struct { @@ -2785,6 +2853,149 @@ func (s *GoogleCloudDatacatalogV1UsageStats) UnmarshalJSON(data []byte) error { return nil } +// GoogleCloudDatacatalogV1VertexDatasetSpec: Specification for vertex +// dataset resources. +type GoogleCloudDatacatalogV1VertexDatasetSpec struct { + // DataItemCount: The number of DataItems in this Dataset. Only apply + // for non-structured Dataset. + DataItemCount int64 `json:"dataItemCount,omitempty,string"` + + // DataType: Type of the dataset. + // + // Possible values: + // "DATA_TYPE_UNSPECIFIED" - Should not be used. + // "TABLE" - Structured data dataset. + // "IMAGE" - Image dataset which supports ImageClassification, + // ImageObjectDetection and ImageSegmentation problems. + // "TEXT" - Document dataset which supports TextClassification, + // TextExtraction and TextSentiment problems. + // "VIDEO" - Video dataset which supports VideoClassification, + // VideoObjectTracking and VideoActionRecognition problems. + // "CONVERSATION" - Conversation dataset which supports conversation + // problems. + // "TIME_SERIES" - TimeSeries dataset. + // "DOCUMENT" - Document dataset which supports DocumentAnnotation + // problems. + // "TEXT_TO_SPEECH" - TextToSpeech dataset which supports TextToSpeech + // problems. + // "TRANSLATION" - Translation dataset which supports Translation + // problems. + // "STORE_VISION" - Store Vision dataset which is used for HITL + // integration. + // "ENTERPRISE_KNOWLEDGE_GRAPH" - Enterprise Knowledge Graph dataset + // which is used for HITL labeling integration. + // "TEXT_PROMPT" - Text prompt dataset which supports Large Language + // Models. + DataType string `json:"dataType,omitempty"` + + // ForceSendFields is a list of field names (e.g. "DataItemCount") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "DataItemCount") to include + // in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. However, any field with + // an empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDatacatalogV1VertexDatasetSpec) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDatacatalogV1VertexDatasetSpec + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDatacatalogV1VertexModelSourceInfo: Detail description of +// the source information of a Vertex model. +type GoogleCloudDatacatalogV1VertexModelSourceInfo struct { + // Copy: If this Model is copy of another Model. If true then + // source_type pertains to the original. + Copy bool `json:"copy,omitempty"` + + // SourceType: Type of the model source. + // + // Possible values: + // "MODEL_SOURCE_TYPE_UNSPECIFIED" - Should not be used. + // "AUTOML" - The Model is uploaded by automl training pipeline. + // "CUSTOM" - The Model is uploaded by user or custom training + // pipeline. + // "BQML" - The Model is registered and sync'ed from BigQuery ML. + // "MODEL_GARDEN" - The Model is saved or tuned from Model Garden. + SourceType string `json:"sourceType,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Copy") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Copy") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDatacatalogV1VertexModelSourceInfo) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDatacatalogV1VertexModelSourceInfo + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// GoogleCloudDatacatalogV1VertexModelSpec: Specification for vertex +// model resources. +type GoogleCloudDatacatalogV1VertexModelSpec struct { + // ContainerImageUri: URI of the Docker image to be used as the custom + // container for serving predictions. + ContainerImageUri string `json:"containerImageUri,omitempty"` + + // VersionAliases: User provided version aliases so that a model version + // can be referenced via alias + VersionAliases []string `json:"versionAliases,omitempty"` + + // VersionDescription: The description of this version. + VersionDescription string `json:"versionDescription,omitempty"` + + // VersionId: The version ID of the model. + VersionId string `json:"versionId,omitempty"` + + // VertexModelSourceInfo: Source of a Vertex model. + VertexModelSourceInfo *GoogleCloudDatacatalogV1VertexModelSourceInfo `json:"vertexModelSourceInfo,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ContainerImageUri") + // to unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ContainerImageUri") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *GoogleCloudDatacatalogV1VertexModelSpec) MarshalJSON() ([]byte, error) { + type NoMethod GoogleCloudDatacatalogV1VertexModelSpec + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // GoogleCloudDatacatalogV1ViewSpec: Table view specification. type GoogleCloudDatacatalogV1ViewSpec struct { // ViewQuery: Output only. The query that defines the table view. diff --git a/dataproc/v1/dataproc-api.json b/dataproc/v1/dataproc-api.json index aa1f3ff5313..c9f11bd0667 100644 --- a/dataproc/v1/dataproc-api.json +++ b/dataproc/v1/dataproc-api.json @@ -597,6 +597,351 @@ } } }, + "sessionTemplates": { + "methods": { + "create": { + "description": "Create an session template, synchronously.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/sessionTemplates", + "httpMethod": "POST", + "id": "dataproc.projects.locations.sessionTemplates.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The parent resource where this session template will be created.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/sessionTemplates", + "request": { + "$ref": "SessionTemplate" + }, + "response": { + "$ref": "SessionTemplate" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a session template.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/sessionTemplates/{sessionTemplatesId}", + "httpMethod": "DELETE", + "id": "dataproc.projects.locations.sessionTemplates.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the session template resource to delete.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/sessionTemplates/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets the resource representation for a session template.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/sessionTemplates/{sessionTemplatesId}", + "httpMethod": "GET", + "id": "dataproc.projects.locations.sessionTemplates.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the session template to retrieve.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/sessionTemplates/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "SessionTemplate" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists session templates.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/sessionTemplates", + "httpMethod": "GET", + "id": "dataproc.projects.locations.sessionTemplates.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "Optional. A filter for the session templates to return in the response. Filters are case sensitive and have the following syntax:field = value AND field = value ...", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Optional. The maximum number of sessions to return in each response. The service may return fewer than this value.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. A page token received from a previous ListSessions call. Provide this token to retrieve the subsequent page.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The parent, which owns this collection of session templates.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/sessionTemplates", + "response": { + "$ref": "ListSessionTemplatesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Updates the session template, synchronously.Disable check for update_mask, because all updates will be full replacements.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/sessionTemplates/{sessionTemplatesId}", + "httpMethod": "PATCH", + "id": "dataproc.projects.locations.sessionTemplates.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The resource name of the session template.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/sessionTemplates/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "request": { + "$ref": "SessionTemplate" + }, + "response": { + "$ref": "SessionTemplate" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "sessions": { + "methods": { + "create": { + "description": "Create an interactive session asynchronously.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/sessions", + "httpMethod": "POST", + "id": "dataproc.projects.locations.sessions.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The parent resource where this session will be created.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "Optional. A unique ID used to identify the request. If the service receives two CreateSessionRequest (https://cloud.google.com/dataproc/docs/reference/rpc/google.cloud.dataproc.v1#google.cloud.dataproc.v1.CreateSessionRequest)s with the same ID, the second request is ignored and the first Session is created and stored in the backend is returned.Recommendation: Set this value to a UUID (https://en.wikipedia.org/wiki/Universally_unique_identifier).The value must contain only letters (a-z, A-Z), numbers (0-9), underscores (_), and hyphens (-). The maximum length is 40 characters.", + "location": "query", + "type": "string" + }, + "sessionId": { + "description": "Required. The ID to use for the session, which becomes the final component of the session's resource name.This value must be 4-63 characters. Valid characters are /a-z-/.", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+parent}/sessions", + "request": { + "$ref": "Session" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes the interactive session resource. If the session is not in terminal state, it will be terminated and deleted afterwards.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/sessions/{sessionsId}", + "httpMethod": "DELETE", + "id": "dataproc.projects.locations.sessions.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the session resource to delete.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/sessions/[^/]+$", + "required": true, + "type": "string" + }, + "requestId": { + "description": "Optional. A unique ID used to identify the request. If the service receives two DeleteSessionRequest (https://cloud.google.com/dataproc/docs/reference/rpc/google.cloud.dataproc.v1#google.cloud.dataproc.v1.DeleteSessionRequest)s with the same ID, the second request is ignored.Recommendation: Set this value to a UUID (https://en.wikipedia.org/wiki/Universally_unique_identifier).The value must contain only letters (a-z, A-Z), numbers (0-9), underscores (_), and hyphens (-). The maximum length is 40 characters.", + "location": "query", + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets the resource representation for an interactive session.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/sessions/{sessionsId}", + "httpMethod": "GET", + "id": "dataproc.projects.locations.sessions.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the session to retrieve.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/sessions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}", + "response": { + "$ref": "Session" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "injectCredentials": { + "description": "Inject Credentials in the interactive session.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/sessions/{sessionsId}:injectCredentials", + "httpMethod": "POST", + "id": "dataproc.projects.locations.sessions.injectCredentials", + "parameterOrder": [ + "session" + ], + "parameters": { + "session": { + "description": "Required. The name of the session resource to inject credentials to.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/sessions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+session}:injectCredentials", + "request": { + "$ref": "InjectSessionCredentialsRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists interactive sessions.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/sessions", + "httpMethod": "GET", + "id": "dataproc.projects.locations.sessions.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "filter": { + "description": "Optional. A filter for the sessions to return in the response.A filter is a logical expression constraining the values of various fields in each session resource. Filters are case sensitive, and may contain multiple clauses combined with logical operators (AND/OR). Supported fields are session_id, session_uuid, state, and create_time.e.g. state = ACTIVE and create_time \u003c \"2023-01-01T00:00:00Z\" filters for sessions in state ACTIVE that were created before 2023-01-01See https://google.aip.dev/assets/misc/ebnf-filtering.txt for a detailed description of the filter syntax and a list of supported comparisons.", + "location": "query", + "type": "string" + }, + "pageSize": { + "description": "Optional. The maximum number of sessions to return in each response. The service may return fewer than this value.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "Optional. A page token received from a previous ListSessions call. Provide this token to retrieve the subsequent page.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The parent, which owns this collection of sessions.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+parent}/sessions", + "response": { + "$ref": "ListSessionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "terminate": { + "description": "Terminates the interactive session.", + "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/sessions/{sessionsId}:terminate", + "httpMethod": "POST", + "id": "dataproc.projects.locations.sessions.terminate", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. The name of the session resource to terminate.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/sessions/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1/{+name}:terminate", + "request": { + "$ref": "TerminateSessionRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, "workflowTemplates": { "methods": { "create": { @@ -2677,7 +3022,7 @@ } } }, - "revision": "20230804", + "revision": "20230814", "rootUrl": "https://dataproc.googleapis.com/", "schemas": { "AcceleratorConfig": { @@ -3557,7 +3902,7 @@ "id": "ExecutionConfig", "properties": { "idleTtl": { - "description": "Optional. Applies to sessions only. 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.", + "description": "Optional. Applies to sessions only. 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 1 hour 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" }, @@ -4046,6 +4391,21 @@ }, "type": "object" }, + "InjectSessionCredentialsRequest": { + "description": "A request to inject credentials to a session.", + "id": "InjectSessionCredentialsRequest", + "properties": { + "credentialsCiphertext": { + "description": "Required. The encrypted credentials being injected in to the session.The client is responsible for encrypting the credentials in a way that is supported by the session.A wrapped value is used here so that the actual contents of the encrypted credentials are not written to audit logs.", + "type": "string" + }, + "requestId": { + "description": "Optional. A unique ID used to identify the request. If the service receives two TerminateSessionRequest (https://cloud.google.com/dataproc/docs/reference/rpc/google.cloud.dataproc.v1#google.cloud.dataproc.v1.TerminateSessionRequest)s with the same ID, the first request is ignored to ensure the most recent credentials are injected.Recommendation: Set this value to a UUID (https://en.wikipedia.org/wiki/Universally_unique_identifier).The value must contain only letters (a-z, A-Z), numbers (0-9), underscores (_), and hyphens (-). The maximum length is 40 characters.", + "type": "string" + } + }, + "type": "object" + }, "InstanceGroupAutoscalingPolicyConfig": { "description": "Configuration for the size bounds of an instance group, including its proportional size to other groups.", "id": "InstanceGroupAutoscalingPolicyConfig", @@ -4471,6 +4831,31 @@ }, "type": "object" }, + "JupyterConfig": { + "description": "Jupyter configuration for an interactive session.", + "id": "JupyterConfig", + "properties": { + "displayName": { + "description": "Optional. Display name, shown in the Jupyter kernelspec card.", + "type": "string" + }, + "kernel": { + "description": "Optional. Kernel", + "enum": [ + "KERNEL_UNSPECIFIED", + "PYTHON", + "SCALA" + ], + "enumDescriptions": [ + "The kernel is unknown.", + "Python kernel.", + "Scala kernel." + ], + "type": "string" + } + }, + "type": "object" + }, "KerberosConfig": { "description": "Specifies Kerberos related configuration.", "id": "KerberosConfig", @@ -4703,6 +5088,44 @@ }, "type": "object" }, + "ListSessionTemplatesResponse": { + "description": "A list of session templates.", + "id": "ListSessionTemplatesResponse", + "properties": { + "nextPageToken": { + "description": "A token, which can be sent as page_token to retrieve the next page. If this field is omitted, there are no subsequent pages.", + "type": "string" + }, + "sessionTemplates": { + "description": "Output only. Session template list", + "items": { + "$ref": "SessionTemplate" + }, + "readOnly": true, + "type": "array" + } + }, + "type": "object" + }, + "ListSessionsResponse": { + "description": "A list of interactive sessions.", + "id": "ListSessionsResponse", + "properties": { + "nextPageToken": { + "description": "A token, which can be sent as page_token to retrieve the next page. If this field is omitted, there are no subsequent pages.", + "type": "string" + }, + "sessions": { + "description": "Output only. The sessions from the specified collection.", + "items": { + "$ref": "Session" + }, + "readOnly": true, + "type": "array" + } + }, + "type": "object" + }, "ListWorkflowTemplatesResponse": { "description": "A response to a request to list workflow templates in a project.", "id": "ListWorkflowTemplatesResponse", @@ -5556,6 +5979,105 @@ }, "type": "object" }, + "Session": { + "description": "A representation of a session in the service. Next ID: 18", + "id": "Session", + "properties": { + "createTime": { + "description": "Output only. The time when the session was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "creator": { + "description": "Output only. The email address of the user who created the session.", + "readOnly": true, + "type": "string" + }, + "environmentConfig": { + "$ref": "EnvironmentConfig", + "description": "Optional. Environment configuration for the session execution." + }, + "jupyterSession": { + "$ref": "JupyterConfig", + "description": "Optional. Jupyter session config." + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. The labels to associate with this session. Label keys must contain 1 to 63 characters, and must conform to RFC 1035 (https://www.ietf.org/rfc/rfc1035.txt). Label values may be empty, but, if present, must contain 1 to 63 characters, and must conform to RFC 1035 (https://www.ietf.org/rfc/rfc1035.txt). No more than 32 labels can be associated with a session.", + "type": "object" + }, + "name": { + "description": "Required. The resource name of the session.", + "type": "string" + }, + "runtimeConfig": { + "$ref": "RuntimeConfig", + "description": "Optional. Runtime configuration for the session execution." + }, + "runtimeInfo": { + "$ref": "RuntimeInfo", + "description": "Output only. Runtime information about session execution.", + "readOnly": true + }, + "sessionTemplate": { + "description": "Optional. The session template used by the session.Only resource names including project ID and location are valid.Example: * https://www.googleapis.com/compute/v1/projects/[project_id]/locations/[dataproc_region]/sessionTemplates/[template_id] * projects/[project_id]/locations/[dataproc_region]/sessionTemplates/[template_id]Note that the template must be in the same project and Dataproc region.", + "type": "string" + }, + "state": { + "description": "Output only. A state of the session.", + "enum": [ + "STATE_UNSPECIFIED", + "CREATING", + "ACTIVE", + "TERMINATING", + "TERMINATED", + "FAILED" + ], + "enumDescriptions": [ + "The session state is unknown.", + "The session is created before running.", + "The session is running.", + "The session is terminating.", + "The session is terminated successfully.", + "The session is no longer running due to an error." + ], + "readOnly": true, + "type": "string" + }, + "stateHistory": { + "description": "Output only. Historical state information for the session.", + "items": { + "$ref": "SessionStateHistory" + }, + "readOnly": true, + "type": "array" + }, + "stateMessage": { + "description": "Output only. Session state details, such as a failure description if the state is FAILED.", + "readOnly": true, + "type": "string" + }, + "stateTime": { + "description": "Output only. The time when the session entered a current state.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "user": { + "description": "Optional. The email address of the user who owns the session.", + "type": "string" + }, + "uuid": { + "description": "Output only. A session UUID (Unique Universal Identifier). The service generates this value when it creates the session.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, "SessionOperationMetadata": { "description": "Metadata describing the Session operation.", "id": "SessionOperationMetadata", @@ -5615,6 +6137,96 @@ }, "type": "object" }, + "SessionStateHistory": { + "description": "Historical state information.", + "id": "SessionStateHistory", + "properties": { + "state": { + "description": "Output only. The state of the session at this point in history.", + "enum": [ + "STATE_UNSPECIFIED", + "CREATING", + "ACTIVE", + "TERMINATING", + "TERMINATED", + "FAILED" + ], + "enumDescriptions": [ + "The session state is unknown.", + "The session is created before running.", + "The session is running.", + "The session is terminating.", + "The session is terminated successfully.", + "The session is no longer running due to an error." + ], + "readOnly": true, + "type": "string" + }, + "stateMessage": { + "description": "Output only. Details about the state at this point in history.", + "readOnly": true, + "type": "string" + }, + "stateStartTime": { + "description": "Output only. The time when the session entered the historical state.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "SessionTemplate": { + "description": "A representation of a session template in the service. Next ID: 12", + "id": "SessionTemplate", + "properties": { + "createTime": { + "description": "Output only. The time when the template was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "creator": { + "description": "Output only. The email address of the user who created the template.", + "readOnly": true, + "type": "string" + }, + "description": { + "description": "Optional. Brief description of the template.", + "type": "string" + }, + "environmentConfig": { + "$ref": "EnvironmentConfig", + "description": "Optional. Environment configuration for session execution." + }, + "jupyterSession": { + "$ref": "JupyterConfig", + "description": "Optional. Jupyter session config." + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. The labels to associate with sessions created using this template. Label keys must contain 1 to 63 characters, and must conform to RFC 1035 (https://www.ietf.org/rfc/rfc1035.txt). Label values may be empty, but, if present, must contain 1 to 63 characters, and must conform to RFC 1035 (https://www.ietf.org/rfc/rfc1035.txt). No more than 32 labels can be associated with a session.", + "type": "object" + }, + "name": { + "description": "Required. The resource name of the session template.", + "type": "string" + }, + "runtimeConfig": { + "$ref": "RuntimeConfig", + "description": "Optional. Runtime configuration for session execution." + }, + "updateTime": { + "description": "Output only. The time template was last updated.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, "SetIamPolicyRequest": { "description": "Request message for SetIamPolicy method.", "id": "SetIamPolicyRequest", @@ -6123,6 +6735,17 @@ }, "type": "object" }, + "TerminateSessionRequest": { + "description": "A request to terminate an interactive session.", + "id": "TerminateSessionRequest", + "properties": { + "requestId": { + "description": "Optional. A unique ID used to identify the request. If the service receives two TerminateSessionRequest (https://cloud.google.com/dataproc/docs/reference/rpc/google.cloud.dataproc.v1#google.cloud.dataproc.v1.TerminateSessionRequest)s with the same ID, the second request is ignored.Recommendation: Set this value to a UUID (https://en.wikipedia.org/wiki/Universally_unique_identifier).The value must contain only letters (a-z, A-Z), numbers (0-9), underscores (_), and hyphens (-). The maximum length is 40 characters.", + "type": "string" + } + }, + "type": "object" + }, "TestIamPermissionsRequest": { "description": "Request message for TestIamPermissions method.", "id": "TestIamPermissionsRequest", diff --git a/dataproc/v1/dataproc-gen.go b/dataproc/v1/dataproc-gen.go index 17d2932ab7f..1d295c25ecb 100644 --- a/dataproc/v1/dataproc-gen.go +++ b/dataproc/v1/dataproc-gen.go @@ -160,6 +160,8 @@ func NewProjectsLocationsService(s *Service) *ProjectsLocationsService { rs.AutoscalingPolicies = NewProjectsLocationsAutoscalingPoliciesService(s) rs.Batches = NewProjectsLocationsBatchesService(s) rs.Operations = NewProjectsLocationsOperationsService(s) + rs.SessionTemplates = NewProjectsLocationsSessionTemplatesService(s) + rs.Sessions = NewProjectsLocationsSessionsService(s) rs.WorkflowTemplates = NewProjectsLocationsWorkflowTemplatesService(s) return rs } @@ -173,6 +175,10 @@ type ProjectsLocationsService struct { Operations *ProjectsLocationsOperationsService + SessionTemplates *ProjectsLocationsSessionTemplatesService + + Sessions *ProjectsLocationsSessionsService + WorkflowTemplates *ProjectsLocationsWorkflowTemplatesService } @@ -203,6 +209,24 @@ type ProjectsLocationsOperationsService struct { s *Service } +func NewProjectsLocationsSessionTemplatesService(s *Service) *ProjectsLocationsSessionTemplatesService { + rs := &ProjectsLocationsSessionTemplatesService{s: s} + return rs +} + +type ProjectsLocationsSessionTemplatesService struct { + s *Service +} + +func NewProjectsLocationsSessionsService(s *Service) *ProjectsLocationsSessionsService { + rs := &ProjectsLocationsSessionsService{s: s} + return rs +} + +type ProjectsLocationsSessionsService struct { + s *Service +} + func NewProjectsLocationsWorkflowTemplatesService(s *Service) *ProjectsLocationsWorkflowTemplatesService { rs := &ProjectsLocationsWorkflowTemplatesService{s: s} return rs @@ -1691,10 +1715,10 @@ type ExecutionConfig struct { // 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. + // Defaults to 1 hour 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. IdleTtl string `json:"idleTtl,omitempty"` // KmsKey: Optional. The Cloud KMS key to use for encryption. @@ -2567,6 +2591,53 @@ func (s *InjectCredentialsRequest) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// InjectSessionCredentialsRequest: A request to inject credentials to a +// session. +type InjectSessionCredentialsRequest struct { + // CredentialsCiphertext: Required. The encrypted credentials being + // injected in to the session.The client is responsible for encrypting + // the credentials in a way that is supported by the session.A wrapped + // value is used here so that the actual contents of the encrypted + // credentials are not written to audit logs. + CredentialsCiphertext string `json:"credentialsCiphertext,omitempty"` + + // RequestId: Optional. A unique ID used to identify the request. If the + // service receives two TerminateSessionRequest + // (https://cloud.google.com/dataproc/docs/reference/rpc/google.cloud.dataproc.v1#google.cloud.dataproc.v1.TerminateSessionRequest)s + // with the same ID, the first request is ignored to ensure the most + // recent credentials are injected.Recommendation: Set this value to a + // UUID + // (https://en.wikipedia.org/wiki/Universally_unique_identifier).The + // value must contain only letters (a-z, A-Z), numbers (0-9), + // underscores (_), and hyphens (-). The maximum length is 40 + // characters. + RequestId string `json:"requestId,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "CredentialsCiphertext") to unconditionally include in API requests. + // By default, fields with empty or default values are omitted from API + // requests. However, any non-pointer, non-interface field appearing in + // ForceSendFields will be sent to the server regardless of whether the + // field is empty or not. This may be used to include empty fields in + // Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "CredentialsCiphertext") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *InjectSessionCredentialsRequest) MarshalJSON() ([]byte, error) { + type NoMethod InjectSessionCredentialsRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // InstanceGroupAutoscalingPolicyConfig: Configuration for the size // bounds of an instance group, including its proportional size to other // groups. @@ -3214,6 +3285,43 @@ func (s *JobStatus) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// JupyterConfig: Jupyter configuration for an interactive session. +type JupyterConfig struct { + // DisplayName: Optional. Display name, shown in the Jupyter kernelspec + // card. + DisplayName string `json:"displayName,omitempty"` + + // Kernel: Optional. Kernel + // + // Possible values: + // "KERNEL_UNSPECIFIED" - The kernel is unknown. + // "PYTHON" - Python kernel. + // "SCALA" - Scala kernel. + Kernel string `json:"kernel,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 *JupyterConfig) MarshalJSON() ([]byte, error) { + type NoMethod JupyterConfig + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // KerberosConfig: Specifies Kerberos related configuration. type KerberosConfig struct { // CrossRealmTrustAdminServer: Optional. The admin server (IP or @@ -3633,6 +3741,80 @@ func (s *ListOperationsResponse) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// ListSessionTemplatesResponse: A list of session templates. +type ListSessionTemplatesResponse struct { + // NextPageToken: A token, which can be sent as page_token to retrieve + // the next page. If this field is omitted, there are no subsequent + // pages. + NextPageToken string `json:"nextPageToken,omitempty"` + + // SessionTemplates: Output only. Session template list + SessionTemplates []*SessionTemplate `json:"sessionTemplates,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 *ListSessionTemplatesResponse) MarshalJSON() ([]byte, error) { + type NoMethod ListSessionTemplatesResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// ListSessionsResponse: A list of interactive sessions. +type ListSessionsResponse struct { + // NextPageToken: A token, which can be sent as page_token to retrieve + // the next page. If this field is omitted, there are no subsequent + // pages. + NextPageToken string `json:"nextPageToken,omitempty"` + + // Sessions: Output only. The sessions from the specified collection. + Sessions []*Session `json:"sessions,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 *ListSessionsResponse) MarshalJSON() ([]byte, error) { + type NoMethod ListSessionsResponse + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // ListWorkflowTemplatesResponse: A response to a request to list // workflow templates in a project. type ListWorkflowTemplatesResponse struct { @@ -5033,6 +5215,108 @@ func (s *SecurityConfig) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// Session: A representation of a session in the service. Next ID: 18 +type Session struct { + // CreateTime: Output only. The time when the session was created. + CreateTime string `json:"createTime,omitempty"` + + // Creator: Output only. The email address of the user who created the + // session. + Creator string `json:"creator,omitempty"` + + // EnvironmentConfig: Optional. Environment configuration for the + // session execution. + EnvironmentConfig *EnvironmentConfig `json:"environmentConfig,omitempty"` + + // JupyterSession: Optional. Jupyter session config. + JupyterSession *JupyterConfig `json:"jupyterSession,omitempty"` + + // Labels: Optional. The labels to associate with this session. Label + // keys must contain 1 to 63 characters, and must conform to RFC 1035 + // (https://www.ietf.org/rfc/rfc1035.txt). Label values may be empty, + // but, if present, must contain 1 to 63 characters, and must conform to + // RFC 1035 (https://www.ietf.org/rfc/rfc1035.txt). No more than 32 + // labels can be associated with a session. + Labels map[string]string `json:"labels,omitempty"` + + // Name: Required. The resource name of the session. + Name string `json:"name,omitempty"` + + // RuntimeConfig: Optional. Runtime configuration for the session + // execution. + RuntimeConfig *RuntimeConfig `json:"runtimeConfig,omitempty"` + + // RuntimeInfo: Output only. Runtime information about session + // execution. + RuntimeInfo *RuntimeInfo `json:"runtimeInfo,omitempty"` + + // SessionTemplate: Optional. The session template used by the + // session.Only resource names including project ID and location are + // valid.Example: * + // https://www.googleapis.com/compute/v1/projects/[project_id]/locations/[dataproc_region]/sessionTemplates/[template_id] + // * + // projects/[project_id]/locations/[dataproc_region]/sessionTemplates/[te + // mplate_id]Note that the template must be in the same project and + // Dataproc region. + SessionTemplate string `json:"sessionTemplate,omitempty"` + + // State: Output only. A state of the session. + // + // Possible values: + // "STATE_UNSPECIFIED" - The session state is unknown. + // "CREATING" - The session is created before running. + // "ACTIVE" - The session is running. + // "TERMINATING" - The session is terminating. + // "TERMINATED" - The session is terminated successfully. + // "FAILED" - The session is no longer running due to an error. + State string `json:"state,omitempty"` + + // StateHistory: Output only. Historical state information for the + // session. + StateHistory []*SessionStateHistory `json:"stateHistory,omitempty"` + + // StateMessage: Output only. Session state details, such as a failure + // description if the state is FAILED. + StateMessage string `json:"stateMessage,omitempty"` + + // StateTime: Output only. The time when the session entered a current + // state. + StateTime string `json:"stateTime,omitempty"` + + // User: Optional. The email address of the user who owns the session. + User string `json:"user,omitempty"` + + // Uuid: Output only. A session UUID (Unique Universal Identifier). The + // service generates this value when it creates the session. + Uuid string `json:"uuid,omitempty"` + + // ServerResponse contains the HTTP response code and headers from the + // server. + googleapi.ServerResponse `json:"-"` + + // ForceSendFields is a list of field names (e.g. "CreateTime") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "CreateTime") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *Session) MarshalJSON() ([]byte, error) { + type NoMethod Session + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // SessionOperationMetadata: Metadata describing the Session operation. type SessionOperationMetadata struct { // CreateTime: The time when the operation was created. @@ -5089,15 +5373,29 @@ func (s *SessionOperationMetadata) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// SetIamPolicyRequest: Request message for SetIamPolicy method. -type SetIamPolicyRequest struct { - // Policy: REQUIRED: The complete policy to be applied to the resource. - // The size of the policy is limited to a few 10s of KB. An empty policy - // is a valid policy but certain Google Cloud services (such as - // Projects) might reject them. - Policy *Policy `json:"policy,omitempty"` +// SessionStateHistory: Historical state information. +type SessionStateHistory struct { + // State: Output only. The state of the session at this point in + // history. + // + // Possible values: + // "STATE_UNSPECIFIED" - The session state is unknown. + // "CREATING" - The session is created before running. + // "ACTIVE" - The session is running. + // "TERMINATING" - The session is terminating. + // "TERMINATED" - The session is terminated successfully. + // "FAILED" - The session is no longer running due to an error. + State string `json:"state,omitempty"` - // ForceSendFields is a list of field names (e.g. "Policy") to + // StateMessage: Output only. Details about the state at this point in + // history. + StateMessage string `json:"stateMessage,omitempty"` + + // StateStartTime: Output only. The time when the session entered the + // historical state. + StateStartTime string `json:"stateStartTime,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 @@ -5105,7 +5403,7 @@ type SetIamPolicyRequest struct { // This may be used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "Policy") to include in API + // 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 @@ -5114,49 +5412,145 @@ type SetIamPolicyRequest struct { NullFields []string `json:"-"` } -func (s *SetIamPolicyRequest) MarshalJSON() ([]byte, error) { - type NoMethod SetIamPolicyRequest +func (s *SessionStateHistory) MarshalJSON() ([]byte, error) { + type NoMethod SessionStateHistory raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } -// ShieldedInstanceConfig: Shielded Instance Config for clusters using -// Compute Engine Shielded VMs -// (https://cloud.google.com/security/shielded-cloud/shielded-vm). -type ShieldedInstanceConfig struct { - // EnableIntegrityMonitoring: Optional. Defines whether instances have - // integrity monitoring enabled. - EnableIntegrityMonitoring bool `json:"enableIntegrityMonitoring,omitempty"` +// SessionTemplate: A representation of a session template in the +// service. Next ID: 12 +type SessionTemplate struct { + // CreateTime: Output only. The time when the template was created. + CreateTime string `json:"createTime,omitempty"` - // EnableSecureBoot: Optional. Defines whether instances have Secure - // Boot enabled. - EnableSecureBoot bool `json:"enableSecureBoot,omitempty"` + // Creator: Output only. The email address of the user who created the + // template. + Creator string `json:"creator,omitempty"` - // EnableVtpm: Optional. Defines whether instances have the vTPM - // enabled. - EnableVtpm bool `json:"enableVtpm,omitempty"` + // Description: Optional. Brief description of the template. + Description string `json:"description,omitempty"` - // ForceSendFields is a list of field names (e.g. - // "EnableIntegrityMonitoring") to unconditionally include in API - // requests. By default, fields with empty or default values are omitted - // from API requests. However, any non-pointer, non-interface field - // appearing in ForceSendFields will be sent to the server regardless of - // whether the field is empty or not. This may be used to include empty - // fields in Patch requests. - ForceSendFields []string `json:"-"` + // EnvironmentConfig: Optional. Environment configuration for session + // execution. + EnvironmentConfig *EnvironmentConfig `json:"environmentConfig,omitempty"` - // NullFields is a list of field names (e.g. - // "EnableIntegrityMonitoring") to include in API requests with the JSON - // null value. By default, fields with empty values are omitted from API - // requests. However, any field with an empty value appearing in - // NullFields will be sent to the server as null. It is an error if a - // field in this list has a non-empty value. This may be used to include - // null fields in Patch requests. - NullFields []string `json:"-"` -} + // JupyterSession: Optional. Jupyter session config. + JupyterSession *JupyterConfig `json:"jupyterSession,omitempty"` -func (s *ShieldedInstanceConfig) MarshalJSON() ([]byte, error) { - type NoMethod ShieldedInstanceConfig + // Labels: Optional. The labels to associate with sessions created using + // this template. Label keys must contain 1 to 63 characters, and must + // conform to RFC 1035 (https://www.ietf.org/rfc/rfc1035.txt). Label + // values may be empty, but, if present, must contain 1 to 63 + // characters, and must conform to RFC 1035 + // (https://www.ietf.org/rfc/rfc1035.txt). No more than 32 labels can be + // associated with a session. + Labels map[string]string `json:"labels,omitempty"` + + // Name: Required. The resource name of the session template. + Name string `json:"name,omitempty"` + + // RuntimeConfig: Optional. Runtime configuration for session execution. + RuntimeConfig *RuntimeConfig `json:"runtimeConfig,omitempty"` + + // UpdateTime: Output only. The time template 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. "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 *SessionTemplate) MarshalJSON() ([]byte, error) { + type NoMethod SessionTemplate + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// SetIamPolicyRequest: Request message for SetIamPolicy method. +type SetIamPolicyRequest struct { + // Policy: REQUIRED: The complete policy to be applied to the resource. + // The size of the policy is limited to a few 10s of KB. An empty policy + // is a valid policy but certain Google Cloud services (such as + // Projects) might reject them. + Policy *Policy `json:"policy,omitempty"` + + // ForceSendFields is a list of field names (e.g. "Policy") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "Policy") to include in API + // requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *SetIamPolicyRequest) MarshalJSON() ([]byte, error) { + type NoMethod SetIamPolicyRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// ShieldedInstanceConfig: Shielded Instance Config for clusters using +// Compute Engine Shielded VMs +// (https://cloud.google.com/security/shielded-cloud/shielded-vm). +type ShieldedInstanceConfig struct { + // EnableIntegrityMonitoring: Optional. Defines whether instances have + // integrity monitoring enabled. + EnableIntegrityMonitoring bool `json:"enableIntegrityMonitoring,omitempty"` + + // EnableSecureBoot: Optional. Defines whether instances have Secure + // Boot enabled. + EnableSecureBoot bool `json:"enableSecureBoot,omitempty"` + + // EnableVtpm: Optional. Defines whether instances have the vTPM + // enabled. + EnableVtpm bool `json:"enableVtpm,omitempty"` + + // ForceSendFields is a list of field names (e.g. + // "EnableIntegrityMonitoring") to unconditionally include in API + // requests. By default, fields with empty or default values are omitted + // from API requests. However, any non-pointer, non-interface field + // appearing in ForceSendFields will be sent to the server regardless of + // whether the field is empty or not. This may be used to include empty + // fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. + // "EnableIntegrityMonitoring") to include in API requests with the JSON + // null value. By default, fields with empty values are omitted from API + // requests. However, any field with an empty value appearing in + // NullFields will be sent to the server as null. It is an error if a + // field in this list has a non-empty value. This may be used to include + // null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *ShieldedInstanceConfig) MarshalJSON() ([]byte, error) { + type NoMethod ShieldedInstanceConfig raw := NoMethod(*s) return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } @@ -5935,6 +6329,43 @@ func (s *TemplateParameter) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// TerminateSessionRequest: A request to terminate an interactive +// session. +type TerminateSessionRequest struct { + // RequestId: Optional. A unique ID used to identify the request. If the + // service receives two TerminateSessionRequest + // (https://cloud.google.com/dataproc/docs/reference/rpc/google.cloud.dataproc.v1#google.cloud.dataproc.v1.TerminateSessionRequest)s + // with the same ID, the second request is ignored.Recommendation: Set + // this value to a UUID + // (https://en.wikipedia.org/wiki/Universally_unique_identifier).The + // value must contain only letters (a-z, A-Z), numbers (0-9), + // underscores (_), and hyphens (-). The maximum length is 40 + // characters. + RequestId string `json:"requestId,omitempty"` + + // ForceSendFields is a list of field names (e.g. "RequestId") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "RequestId") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *TerminateSessionRequest) MarshalJSON() ([]byte, error) { + type NoMethod TerminateSessionRequest + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // TestIamPermissionsRequest: Request message for TestIamPermissions // method. type TestIamPermissionsRequest struct { @@ -9142,6 +9573,1752 @@ func (c *ProjectsLocationsOperationsListCall) Pages(ctx context.Context, f func( } } +// method id "dataproc.projects.locations.sessionTemplates.create": + +type ProjectsLocationsSessionTemplatesCreateCall struct { + s *Service + parent string + sessiontemplate *SessionTemplate + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Create: Create an session template, synchronously. +// +// - parent: The parent resource where this session template will be +// created. +func (r *ProjectsLocationsSessionTemplatesService) Create(parent string, sessiontemplate *SessionTemplate) *ProjectsLocationsSessionTemplatesCreateCall { + c := &ProjectsLocationsSessionTemplatesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + c.sessiontemplate = sessiontemplate + 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 *ProjectsLocationsSessionTemplatesCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsSessionTemplatesCreateCall { + 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 *ProjectsLocationsSessionTemplatesCreateCall) Context(ctx context.Context) *ProjectsLocationsSessionTemplatesCreateCall { + 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 *ProjectsLocationsSessionTemplatesCreateCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsSessionTemplatesCreateCall) 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.sessiontemplate) + 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}/sessionTemplates") + 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 "dataproc.projects.locations.sessionTemplates.create" call. +// Exactly one of *SessionTemplate or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *SessionTemplate.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 *ProjectsLocationsSessionTemplatesCreateCall) Do(opts ...googleapi.CallOption) (*SessionTemplate, 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 := &SessionTemplate{ + 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 an session template, synchronously.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/sessionTemplates", + // "httpMethod": "POST", + // "id": "dataproc.projects.locations.sessionTemplates.create", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "parent": { + // "description": "Required. The parent resource where this session template will be created.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+parent}/sessionTemplates", + // "request": { + // "$ref": "SessionTemplate" + // }, + // "response": { + // "$ref": "SessionTemplate" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dataproc.projects.locations.sessionTemplates.delete": + +type ProjectsLocationsSessionTemplatesDeleteCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Delete: Deletes a session template. +// +// - name: The name of the session template resource to delete. +func (r *ProjectsLocationsSessionTemplatesService) Delete(name string) *ProjectsLocationsSessionTemplatesDeleteCall { + c := &ProjectsLocationsSessionTemplatesDeleteCall{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 *ProjectsLocationsSessionTemplatesDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsSessionTemplatesDeleteCall { + 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 *ProjectsLocationsSessionTemplatesDeleteCall) Context(ctx context.Context) *ProjectsLocationsSessionTemplatesDeleteCall { + 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 *ProjectsLocationsSessionTemplatesDeleteCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsSessionTemplatesDeleteCall) 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 "dataproc.projects.locations.sessionTemplates.delete" call. +// Exactly one of *Empty or error will be non-nil. Any non-2xx status +// code is an error. Response headers are in either +// *Empty.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 *ProjectsLocationsSessionTemplatesDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, 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 := &Empty{ + 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 session template.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/sessionTemplates/{sessionTemplatesId}", + // "httpMethod": "DELETE", + // "id": "dataproc.projects.locations.sessionTemplates.delete", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Required. The name of the session template resource to delete.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/sessionTemplates/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+name}", + // "response": { + // "$ref": "Empty" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dataproc.projects.locations.sessionTemplates.get": + +type ProjectsLocationsSessionTemplatesGetCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Gets the resource representation for a session template. +// +// - name: The name of the session template to retrieve. +func (r *ProjectsLocationsSessionTemplatesService) Get(name string) *ProjectsLocationsSessionTemplatesGetCall { + c := &ProjectsLocationsSessionTemplatesGetCall{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 *ProjectsLocationsSessionTemplatesGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsSessionTemplatesGetCall { + 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 *ProjectsLocationsSessionTemplatesGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsSessionTemplatesGetCall { + 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 *ProjectsLocationsSessionTemplatesGetCall) Context(ctx context.Context) *ProjectsLocationsSessionTemplatesGetCall { + 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 *ProjectsLocationsSessionTemplatesGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsSessionTemplatesGetCall) 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 "dataproc.projects.locations.sessionTemplates.get" call. +// Exactly one of *SessionTemplate or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *SessionTemplate.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 *ProjectsLocationsSessionTemplatesGetCall) Do(opts ...googleapi.CallOption) (*SessionTemplate, 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 := &SessionTemplate{ + 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 resource representation for a session template.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/sessionTemplates/{sessionTemplatesId}", + // "httpMethod": "GET", + // "id": "dataproc.projects.locations.sessionTemplates.get", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Required. The name of the session template to retrieve.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/sessionTemplates/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+name}", + // "response": { + // "$ref": "SessionTemplate" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dataproc.projects.locations.sessionTemplates.list": + +type ProjectsLocationsSessionTemplatesListCall struct { + s *Service + parent string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// List: Lists session templates. +// +// - parent: The parent, which owns this collection of session +// templates. +func (r *ProjectsLocationsSessionTemplatesService) List(parent string) *ProjectsLocationsSessionTemplatesListCall { + c := &ProjectsLocationsSessionTemplatesListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + return c +} + +// Filter sets the optional parameter "filter": A filter for the session +// templates to return in the response. Filters are case sensitive and +// have the following syntax:field = value AND field = value ... +func (c *ProjectsLocationsSessionTemplatesListCall) Filter(filter string) *ProjectsLocationsSessionTemplatesListCall { + c.urlParams_.Set("filter", filter) + return c +} + +// PageSize sets the optional parameter "pageSize": The maximum number +// of sessions to return in each response. The service may return fewer +// than this value. +func (c *ProjectsLocationsSessionTemplatesListCall) PageSize(pageSize int64) *ProjectsLocationsSessionTemplatesListCall { + c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) + return c +} + +// PageToken sets the optional parameter "pageToken": A page token +// received from a previous ListSessions call. Provide this token to +// retrieve the subsequent page. +func (c *ProjectsLocationsSessionTemplatesListCall) PageToken(pageToken string) *ProjectsLocationsSessionTemplatesListCall { + 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 *ProjectsLocationsSessionTemplatesListCall) Fields(s ...googleapi.Field) *ProjectsLocationsSessionTemplatesListCall { + 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 *ProjectsLocationsSessionTemplatesListCall) IfNoneMatch(entityTag string) *ProjectsLocationsSessionTemplatesListCall { + 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 *ProjectsLocationsSessionTemplatesListCall) Context(ctx context.Context) *ProjectsLocationsSessionTemplatesListCall { + 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 *ProjectsLocationsSessionTemplatesListCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsSessionTemplatesListCall) 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}/sessionTemplates") + 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 "dataproc.projects.locations.sessionTemplates.list" call. +// Exactly one of *ListSessionTemplatesResponse or error will be +// non-nil. Any non-2xx status code is an error. Response headers are in +// either *ListSessionTemplatesResponse.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 *ProjectsLocationsSessionTemplatesListCall) Do(opts ...googleapi.CallOption) (*ListSessionTemplatesResponse, 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 := &ListSessionTemplatesResponse{ + 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 session templates.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/sessionTemplates", + // "httpMethod": "GET", + // "id": "dataproc.projects.locations.sessionTemplates.list", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "filter": { + // "description": "Optional. A filter for the session templates to return in the response. Filters are case sensitive and have the following syntax:field = value AND field = value ...", + // "location": "query", + // "type": "string" + // }, + // "pageSize": { + // "description": "Optional. The maximum number of sessions to return in each response. The service may return fewer than this value.", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "pageToken": { + // "description": "Optional. A page token received from a previous ListSessions call. Provide this token to retrieve the subsequent page.", + // "location": "query", + // "type": "string" + // }, + // "parent": { + // "description": "Required. The parent, which owns this collection of session templates.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+parent}/sessionTemplates", + // "response": { + // "$ref": "ListSessionTemplatesResponse" + // }, + // "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 *ProjectsLocationsSessionTemplatesListCall) Pages(ctx context.Context, f func(*ListSessionTemplatesResponse) 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 "dataproc.projects.locations.sessionTemplates.patch": + +type ProjectsLocationsSessionTemplatesPatchCall struct { + s *Service + name string + sessiontemplate *SessionTemplate + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Patch: Updates the session template, synchronously.Disable check for +// update_mask, because all updates will be full replacements. +// +// - name: The resource name of the session template. +func (r *ProjectsLocationsSessionTemplatesService) Patch(name string, sessiontemplate *SessionTemplate) *ProjectsLocationsSessionTemplatesPatchCall { + c := &ProjectsLocationsSessionTemplatesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + c.sessiontemplate = sessiontemplate + 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 *ProjectsLocationsSessionTemplatesPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsSessionTemplatesPatchCall { + 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 *ProjectsLocationsSessionTemplatesPatchCall) Context(ctx context.Context) *ProjectsLocationsSessionTemplatesPatchCall { + 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 *ProjectsLocationsSessionTemplatesPatchCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsSessionTemplatesPatchCall) 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.sessiontemplate) + 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 "dataproc.projects.locations.sessionTemplates.patch" call. +// Exactly one of *SessionTemplate or error will be non-nil. Any non-2xx +// status code is an error. Response headers are in either +// *SessionTemplate.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 *ProjectsLocationsSessionTemplatesPatchCall) Do(opts ...googleapi.CallOption) (*SessionTemplate, 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 := &SessionTemplate{ + 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 session template, synchronously.Disable check for update_mask, because all updates will be full replacements.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/sessionTemplates/{sessionTemplatesId}", + // "httpMethod": "PATCH", + // "id": "dataproc.projects.locations.sessionTemplates.patch", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Required. The resource name of the session template.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/sessionTemplates/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+name}", + // "request": { + // "$ref": "SessionTemplate" + // }, + // "response": { + // "$ref": "SessionTemplate" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dataproc.projects.locations.sessions.create": + +type ProjectsLocationsSessionsCreateCall struct { + s *Service + parent string + session *Session + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Create: Create an interactive session asynchronously. +// +// - parent: The parent resource where this session will be created. +func (r *ProjectsLocationsSessionsService) Create(parent string, session *Session) *ProjectsLocationsSessionsCreateCall { + c := &ProjectsLocationsSessionsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + c.session = session + return c +} + +// RequestId sets the optional parameter "requestId": A unique ID used +// to identify the request. If the service receives two +// CreateSessionRequest +// (https://cloud.google.com/dataproc/docs/reference/rpc/google.cloud.dataproc.v1#google.cloud.dataproc.v1.CreateSessionRequest)s +// with the same ID, the second request is ignored and the first Session +// is created and stored in the backend is returned.Recommendation: Set +// this value to a UUID +// (https://en.wikipedia.org/wiki/Universally_unique_identifier).The +// value must contain only letters (a-z, A-Z), numbers (0-9), +// underscores (_), and hyphens (-). The maximum length is 40 +// characters. +func (c *ProjectsLocationsSessionsCreateCall) RequestId(requestId string) *ProjectsLocationsSessionsCreateCall { + c.urlParams_.Set("requestId", requestId) + return c +} + +// SessionId sets the optional parameter "sessionId": Required. The ID +// to use for the session, which becomes the final component of the +// session's resource name.This value must be 4-63 characters. Valid +// characters are /a-z-/. +func (c *ProjectsLocationsSessionsCreateCall) SessionId(sessionId string) *ProjectsLocationsSessionsCreateCall { + c.urlParams_.Set("sessionId", sessionId) + 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 *ProjectsLocationsSessionsCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsSessionsCreateCall { + 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 *ProjectsLocationsSessionsCreateCall) Context(ctx context.Context) *ProjectsLocationsSessionsCreateCall { + 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 *ProjectsLocationsSessionsCreateCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsSessionsCreateCall) 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.session) + 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}/sessions") + 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 "dataproc.projects.locations.sessions.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 *ProjectsLocationsSessionsCreateCall) 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": "Create an interactive session asynchronously.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/sessions", + // "httpMethod": "POST", + // "id": "dataproc.projects.locations.sessions.create", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "parent": { + // "description": "Required. The parent resource where this session will be created.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+$", + // "required": true, + // "type": "string" + // }, + // "requestId": { + // "description": "Optional. A unique ID used to identify the request. If the service receives two CreateSessionRequest (https://cloud.google.com/dataproc/docs/reference/rpc/google.cloud.dataproc.v1#google.cloud.dataproc.v1.CreateSessionRequest)s with the same ID, the second request is ignored and the first Session is created and stored in the backend is returned.Recommendation: Set this value to a UUID (https://en.wikipedia.org/wiki/Universally_unique_identifier).The value must contain only letters (a-z, A-Z), numbers (0-9), underscores (_), and hyphens (-). The maximum length is 40 characters.", + // "location": "query", + // "type": "string" + // }, + // "sessionId": { + // "description": "Required. The ID to use for the session, which becomes the final component of the session's resource name.This value must be 4-63 characters. Valid characters are /a-z-/.", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "v1/{+parent}/sessions", + // "request": { + // "$ref": "Session" + // }, + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dataproc.projects.locations.sessions.delete": + +type ProjectsLocationsSessionsDeleteCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Delete: Deletes the interactive session resource. If the session is +// not in terminal state, it will be terminated and deleted afterwards. +// +// - name: The name of the session resource to delete. +func (r *ProjectsLocationsSessionsService) Delete(name string) *ProjectsLocationsSessionsDeleteCall { + c := &ProjectsLocationsSessionsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + return c +} + +// RequestId sets the optional parameter "requestId": A unique ID used +// to identify the request. If the service receives two +// DeleteSessionRequest +// (https://cloud.google.com/dataproc/docs/reference/rpc/google.cloud.dataproc.v1#google.cloud.dataproc.v1.DeleteSessionRequest)s +// with the same ID, the second request is ignored.Recommendation: Set +// this value to a UUID +// (https://en.wikipedia.org/wiki/Universally_unique_identifier).The +// value must contain only letters (a-z, A-Z), numbers (0-9), +// underscores (_), and hyphens (-). The maximum length is 40 +// characters. +func (c *ProjectsLocationsSessionsDeleteCall) RequestId(requestId string) *ProjectsLocationsSessionsDeleteCall { + 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 *ProjectsLocationsSessionsDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsSessionsDeleteCall { + 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 *ProjectsLocationsSessionsDeleteCall) Context(ctx context.Context) *ProjectsLocationsSessionsDeleteCall { + 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 *ProjectsLocationsSessionsDeleteCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsSessionsDeleteCall) 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 "dataproc.projects.locations.sessions.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 *ProjectsLocationsSessionsDeleteCall) 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 the interactive session resource. If the session is not in terminal state, it will be terminated and deleted afterwards.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/sessions/{sessionsId}", + // "httpMethod": "DELETE", + // "id": "dataproc.projects.locations.sessions.delete", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Required. The name of the session resource to delete.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/sessions/[^/]+$", + // "required": true, + // "type": "string" + // }, + // "requestId": { + // "description": "Optional. A unique ID used to identify the request. If the service receives two DeleteSessionRequest (https://cloud.google.com/dataproc/docs/reference/rpc/google.cloud.dataproc.v1#google.cloud.dataproc.v1.DeleteSessionRequest)s with the same ID, the second request is ignored.Recommendation: Set this value to a UUID (https://en.wikipedia.org/wiki/Universally_unique_identifier).The value must contain only letters (a-z, A-Z), numbers (0-9), underscores (_), and hyphens (-). The maximum length is 40 characters.", + // "location": "query", + // "type": "string" + // } + // }, + // "path": "v1/{+name}", + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dataproc.projects.locations.sessions.get": + +type ProjectsLocationsSessionsGetCall struct { + s *Service + name string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// Get: Gets the resource representation for an interactive session. +// +// - name: The name of the session to retrieve. +func (r *ProjectsLocationsSessionsService) Get(name string) *ProjectsLocationsSessionsGetCall { + c := &ProjectsLocationsSessionsGetCall{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 *ProjectsLocationsSessionsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsSessionsGetCall { + 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 *ProjectsLocationsSessionsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsSessionsGetCall { + 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 *ProjectsLocationsSessionsGetCall) Context(ctx context.Context) *ProjectsLocationsSessionsGetCall { + 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 *ProjectsLocationsSessionsGetCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsSessionsGetCall) 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 "dataproc.projects.locations.sessions.get" call. +// Exactly one of *Session or error will be non-nil. Any non-2xx status +// code is an error. Response headers are in either +// *Session.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 *ProjectsLocationsSessionsGetCall) Do(opts ...googleapi.CallOption) (*Session, 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 := &Session{ + 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 resource representation for an interactive session.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/sessions/{sessionsId}", + // "httpMethod": "GET", + // "id": "dataproc.projects.locations.sessions.get", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Required. The name of the session to retrieve.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/sessions/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+name}", + // "response": { + // "$ref": "Session" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dataproc.projects.locations.sessions.injectCredentials": + +type ProjectsLocationsSessionsInjectCredentialsCall struct { + s *Service + session string + injectsessioncredentialsrequest *InjectSessionCredentialsRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// InjectCredentials: Inject Credentials in the interactive session. +// +// - session: The name of the session resource to inject credentials to. +func (r *ProjectsLocationsSessionsService) InjectCredentials(session string, injectsessioncredentialsrequest *InjectSessionCredentialsRequest) *ProjectsLocationsSessionsInjectCredentialsCall { + c := &ProjectsLocationsSessionsInjectCredentialsCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.session = session + c.injectsessioncredentialsrequest = injectsessioncredentialsrequest + 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 *ProjectsLocationsSessionsInjectCredentialsCall) Fields(s ...googleapi.Field) *ProjectsLocationsSessionsInjectCredentialsCall { + 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 *ProjectsLocationsSessionsInjectCredentialsCall) Context(ctx context.Context) *ProjectsLocationsSessionsInjectCredentialsCall { + 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 *ProjectsLocationsSessionsInjectCredentialsCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsSessionsInjectCredentialsCall) 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.injectsessioncredentialsrequest) + 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/{+session}:injectCredentials") + 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{ + "session": c.session, + }) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "dataproc.projects.locations.sessions.injectCredentials" 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 *ProjectsLocationsSessionsInjectCredentialsCall) 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": "Inject Credentials in the interactive session.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/sessions/{sessionsId}:injectCredentials", + // "httpMethod": "POST", + // "id": "dataproc.projects.locations.sessions.injectCredentials", + // "parameterOrder": [ + // "session" + // ], + // "parameters": { + // "session": { + // "description": "Required. The name of the session resource to inject credentials to.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/sessions/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+session}:injectCredentials", + // "request": { + // "$ref": "InjectSessionCredentialsRequest" + // }, + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + +// method id "dataproc.projects.locations.sessions.list": + +type ProjectsLocationsSessionsListCall struct { + s *Service + parent string + urlParams_ gensupport.URLParams + ifNoneMatch_ string + ctx_ context.Context + header_ http.Header +} + +// List: Lists interactive sessions. +// +// - parent: The parent, which owns this collection of sessions. +func (r *ProjectsLocationsSessionsService) List(parent string) *ProjectsLocationsSessionsListCall { + c := &ProjectsLocationsSessionsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.parent = parent + return c +} + +// Filter sets the optional parameter "filter": A filter for the +// sessions to return in the response.A filter is a logical expression +// constraining the values of various fields in each session resource. +// Filters are case sensitive, and may contain multiple clauses combined +// with logical operators (AND/OR). Supported fields are session_id, +// session_uuid, state, and create_time.e.g. state = ACTIVE and +// create_time < "2023-01-01T00:00:00Z" filters for sessions in state +// ACTIVE that were created before 2023-01-01See +// https://google.aip.dev/assets/misc/ebnf-filtering.txt for a detailed +// description of the filter syntax and a list of supported comparisons. +func (c *ProjectsLocationsSessionsListCall) Filter(filter string) *ProjectsLocationsSessionsListCall { + c.urlParams_.Set("filter", filter) + return c +} + +// PageSize sets the optional parameter "pageSize": The maximum number +// of sessions to return in each response. The service may return fewer +// than this value. +func (c *ProjectsLocationsSessionsListCall) PageSize(pageSize int64) *ProjectsLocationsSessionsListCall { + c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) + return c +} + +// PageToken sets the optional parameter "pageToken": A page token +// received from a previous ListSessions call. Provide this token to +// retrieve the subsequent page. +func (c *ProjectsLocationsSessionsListCall) PageToken(pageToken string) *ProjectsLocationsSessionsListCall { + 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 *ProjectsLocationsSessionsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsSessionsListCall { + 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 *ProjectsLocationsSessionsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsSessionsListCall { + 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 *ProjectsLocationsSessionsListCall) Context(ctx context.Context) *ProjectsLocationsSessionsListCall { + 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 *ProjectsLocationsSessionsListCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsSessionsListCall) 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}/sessions") + 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 "dataproc.projects.locations.sessions.list" call. +// Exactly one of *ListSessionsResponse or error will be non-nil. Any +// non-2xx status code is an error. Response headers are in either +// *ListSessionsResponse.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 *ProjectsLocationsSessionsListCall) Do(opts ...googleapi.CallOption) (*ListSessionsResponse, 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 := &ListSessionsResponse{ + 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 interactive sessions.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/sessions", + // "httpMethod": "GET", + // "id": "dataproc.projects.locations.sessions.list", + // "parameterOrder": [ + // "parent" + // ], + // "parameters": { + // "filter": { + // "description": "Optional. A filter for the sessions to return in the response.A filter is a logical expression constraining the values of various fields in each session resource. Filters are case sensitive, and may contain multiple clauses combined with logical operators (AND/OR). Supported fields are session_id, session_uuid, state, and create_time.e.g. state = ACTIVE and create_time \u003c \"2023-01-01T00:00:00Z\" filters for sessions in state ACTIVE that were created before 2023-01-01See https://google.aip.dev/assets/misc/ebnf-filtering.txt for a detailed description of the filter syntax and a list of supported comparisons.", + // "location": "query", + // "type": "string" + // }, + // "pageSize": { + // "description": "Optional. The maximum number of sessions to return in each response. The service may return fewer than this value.", + // "format": "int32", + // "location": "query", + // "type": "integer" + // }, + // "pageToken": { + // "description": "Optional. A page token received from a previous ListSessions call. Provide this token to retrieve the subsequent page.", + // "location": "query", + // "type": "string" + // }, + // "parent": { + // "description": "Required. The parent, which owns this collection of sessions.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+parent}/sessions", + // "response": { + // "$ref": "ListSessionsResponse" + // }, + // "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 *ProjectsLocationsSessionsListCall) Pages(ctx context.Context, f func(*ListSessionsResponse) 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 "dataproc.projects.locations.sessions.terminate": + +type ProjectsLocationsSessionsTerminateCall struct { + s *Service + name string + terminatesessionrequest *TerminateSessionRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Terminate: Terminates the interactive session. +// +// - name: The name of the session resource to terminate. +func (r *ProjectsLocationsSessionsService) Terminate(name string, terminatesessionrequest *TerminateSessionRequest) *ProjectsLocationsSessionsTerminateCall { + c := &ProjectsLocationsSessionsTerminateCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.name = name + c.terminatesessionrequest = terminatesessionrequest + 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 *ProjectsLocationsSessionsTerminateCall) Fields(s ...googleapi.Field) *ProjectsLocationsSessionsTerminateCall { + 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 *ProjectsLocationsSessionsTerminateCall) Context(ctx context.Context) *ProjectsLocationsSessionsTerminateCall { + 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 *ProjectsLocationsSessionsTerminateCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *ProjectsLocationsSessionsTerminateCall) 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.terminatesessionrequest) + 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}:terminate") + 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 "dataproc.projects.locations.sessions.terminate" 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 *ProjectsLocationsSessionsTerminateCall) 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": "Terminates the interactive session.", + // "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/sessions/{sessionsId}:terminate", + // "httpMethod": "POST", + // "id": "dataproc.projects.locations.sessions.terminate", + // "parameterOrder": [ + // "name" + // ], + // "parameters": { + // "name": { + // "description": "Required. The name of the session resource to terminate.", + // "location": "path", + // "pattern": "^projects/[^/]+/locations/[^/]+/sessions/[^/]+$", + // "required": true, + // "type": "string" + // } + // }, + // "path": "v1/{+name}:terminate", + // "request": { + // "$ref": "TerminateSessionRequest" + // }, + // "response": { + // "$ref": "Operation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform" + // ] + // } + +} + // method id "dataproc.projects.locations.workflowTemplates.create": type ProjectsLocationsWorkflowTemplatesCreateCall struct { diff --git a/displayvideo/v2/displayvideo-api.json b/displayvideo/v2/displayvideo-api.json index ae0baa6b22f..2d3e839dc73 100644 --- a/displayvideo/v2/displayvideo-api.json +++ b/displayvideo/v2/displayvideo-api.json @@ -5258,23 +5258,23 @@ "type": "string" }, "filter": { - "description": "Allows filtering by assigned targeting option fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by the logical operator `OR`. * A restriction has the form of `{field} {operator} {value}`. * All fields must use the `EQUALS (=)` operator. Supported fields: * `targetingType` Examples: * `AssignedTargetingOption` resources of targeting type `TARGETING_TYPE_YOUTUBE_VIDEO` or `TARGETING_TYPE_YOUTUBE_CHANNEL`: `targetingType=\"TARGETING_TYPE_YOUTUBE_VIDEO\" OR targetingType=\"TARGETING_TYPE_YOUTUBE_CHANNEL\"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information.", + "description": "Optional. Allows filtering by assigned targeting option fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by the logical operator `OR`. * A restriction has the form of `{field} {operator} {value}`. * All fields must use the `EQUALS (=)` operator. Supported fields: * `targetingType` Examples: * `AssignedTargetingOption` resources of targeting type `TARGETING_TYPE_YOUTUBE_VIDEO` or `TARGETING_TYPE_YOUTUBE_CHANNEL`: `targetingType=\"TARGETING_TYPE_YOUTUBE_VIDEO\" OR targetingType=\"TARGETING_TYPE_YOUTUBE_CHANNEL\"` The length of this field should be no more than 500 characters. 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: * `youtubeAdGroupId` (default) * `assignedTargetingOption.targetingType` The default sorting order is ascending. To specify descending order for a field, a suffix \"desc\" should be added to the field name. Example: `targetingType desc`.", + "description": "Optional. Field by which to sort the list. Acceptable values are: * `youtubeAdGroupId` (acceptable in v2) * `adGroupId` (acceptable in v3) * `assignedTargetingOption.targetingType` The default sorting order is ascending. To specify descending order for a field, a suffix \"desc\" should be added to the field name. Example: `targetingType desc`.", "location": "query", "type": "string" }, "pageSize": { - "description": "Requested page size. The size must be an integer between `1` and `5000`. If unspecified, the default is `5000`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified.", + "description": "Optional. Requested page size. The size must be an integer between `1` and `5000`. If unspecified, the default is `5000`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified.", "format": "int32", "location": "query", "type": "integer" }, "pageToken": { - "description": "A token that lets the client fetch the next page of results. Typically, this is the value of next_page_token returned from the previous call to the `BulkListAdGroupAssignedTargetingOptions` method. If not specified, the first page of results will be returned.", + "description": "Optional. A token that lets the client fetch the next page of results. Typically, this is the value of next_page_token returned from the previous call to the `BulkListAdGroupAssignedTargetingOptions` method. If not specified, the first page of results will be returned.", "location": "query", "type": "string" }, @@ -9183,7 +9183,7 @@ } } }, - "revision": "20230803", + "revision": "20230817", "rootUrl": "https://displayvideo.googleapis.com/", "schemas": { "ActivateManualTriggerRequest": { @@ -10884,7 +10884,7 @@ "id": "BulkListAdGroupAssignedTargetingOptionsResponse", "properties": { "nextPageToken": { - "description": "A token identifying the next page of results. This value should be specified as the pageToken in a subsequent call to `BulkListAdGroupAssignedTargetingOptions` to fetch the next page of results. This token will be absent if there are no more youtube_ad_group_assigned_targeting_options to return.", + "description": "A token identifying the next page of results. This value should be specified as the pageToken in a subsequent call to `BulkListAdGroupAssignedTargetingOptions` to fetch the next page of results. This token will be absent if there are no more youtube_ad_group_assigned_targeting_options or ad_group_assigned_targeting_options to return.", "type": "string" }, "youtubeAdGroupAssignedTargetingOptions": { @@ -21117,7 +21117,7 @@ "properties": { "biddingStrategy": { "$ref": "YoutubeAndPartnersBiddingStrategy", - "description": "The bidding strategy of the YouTube and Partners line item." + "description": "Required. The bidding strategy of the YouTube and Partners line item." }, "contentCategory": { "description": "The kind of content on which the YouTube and Partners ads will be shown.", @@ -21162,7 +21162,7 @@ }, "thirdPartyMeasurementSettings": { "$ref": "YoutubeAndPartnersThirdPartyMeasurementSettings", - "description": "The third-party measurement settings of the line item." + "description": "Optional. The third-party measurement settings of the line item." }, "videoAdSequenceSettings": { "$ref": "VideoAdSequenceSettings", diff --git a/displayvideo/v2/displayvideo-gen.go b/displayvideo/v2/displayvideo-gen.go index bb5eda83129..e928b3ce15f 100644 --- a/displayvideo/v2/displayvideo-gen.go +++ b/displayvideo/v2/displayvideo-gen.go @@ -3580,7 +3580,8 @@ type BulkListAdGroupAssignedTargetingOptionsResponse struct { // value should be specified as the pageToken in a subsequent call to // `BulkListAdGroupAssignedTargetingOptions` to fetch the next page of // results. This token will be absent if there are no more - // youtube_ad_group_assigned_targeting_options to return. + // youtube_ad_group_assigned_targeting_options or + // ad_group_assigned_targeting_options to return. NextPageToken string `json:"nextPageToken,omitempty"` // YoutubeAdGroupAssignedTargetingOptions: The list of wrapper objects, @@ -18177,8 +18178,8 @@ func (s *YoutubeAndPartnersInventorySourceConfig) MarshalJSON() ([]byte, error) // YoutubeAndPartnersSettings: Settings for YouTube and Partners line // items. type YoutubeAndPartnersSettings struct { - // BiddingStrategy: The bidding strategy of the YouTube and Partners - // line item. + // BiddingStrategy: Required. The bidding strategy of the YouTube and + // Partners line item. BiddingStrategy *YoutubeAndPartnersBiddingStrategy `json:"biddingStrategy,omitempty"` // ContentCategory: The kind of content on which the YouTube and @@ -18219,8 +18220,8 @@ type YoutubeAndPartnersSettings struct { // line item to show to the same person over a certain period of time. TargetFrequency *TargetFrequency `json:"targetFrequency,omitempty"` - // ThirdPartyMeasurementSettings: The third-party measurement settings - // of the line item. + // ThirdPartyMeasurementSettings: Optional. The third-party measurement + // settings of the line item. ThirdPartyMeasurementSettings *YoutubeAndPartnersThirdPartyMeasurementSettings `json:"thirdPartyMeasurementSettings,omitempty"` // VideoAdSequenceSettings: The settings related to VideoAdSequence. @@ -36176,7 +36177,8 @@ func (c *AdvertisersYoutubeAdGroupsBulkListAdGroupAssignedTargetingOptionsCall) } // OrderBy sets the optional parameter "orderBy": Field by which to sort -// the list. Acceptable values are: * `youtubeAdGroupId` (default) * +// the list. Acceptable values are: * `youtubeAdGroupId` (acceptable in +// v2) * `adGroupId` (acceptable in v3) * // `assignedTargetingOption.targetingType` The default sorting order is // ascending. To specify descending order for a field, a suffix "desc" // should be added to the field name. Example: `targetingType desc`. @@ -36336,23 +36338,23 @@ func (c *AdvertisersYoutubeAdGroupsBulkListAdGroupAssignedTargetingOptionsCall) // "type": "string" // }, // "filter": { - // "description": "Allows filtering by assigned targeting option fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by the logical operator `OR`. * A restriction has the form of `{field} {operator} {value}`. * All fields must use the `EQUALS (=)` operator. Supported fields: * `targetingType` Examples: * `AssignedTargetingOption` resources of targeting type `TARGETING_TYPE_YOUTUBE_VIDEO` or `TARGETING_TYPE_YOUTUBE_CHANNEL`: `targetingType=\"TARGETING_TYPE_YOUTUBE_VIDEO\" OR targetingType=\"TARGETING_TYPE_YOUTUBE_CHANNEL\"` The length of this field should be no more than 500 characters. Reference our [filter `LIST` requests](/display-video/api/guides/how-tos/filters) guide for more information.", + // "description": "Optional. Allows filtering by assigned targeting option fields. Supported syntax: * Filter expressions are made up of one or more restrictions. * Restrictions can be combined by the logical operator `OR`. * A restriction has the form of `{field} {operator} {value}`. * All fields must use the `EQUALS (=)` operator. Supported fields: * `targetingType` Examples: * `AssignedTargetingOption` resources of targeting type `TARGETING_TYPE_YOUTUBE_VIDEO` or `TARGETING_TYPE_YOUTUBE_CHANNEL`: `targetingType=\"TARGETING_TYPE_YOUTUBE_VIDEO\" OR targetingType=\"TARGETING_TYPE_YOUTUBE_CHANNEL\"` The length of this field should be no more than 500 characters. 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: * `youtubeAdGroupId` (default) * `assignedTargetingOption.targetingType` The default sorting order is ascending. To specify descending order for a field, a suffix \"desc\" should be added to the field name. Example: `targetingType desc`.", + // "description": "Optional. Field by which to sort the list. Acceptable values are: * `youtubeAdGroupId` (acceptable in v2) * `adGroupId` (acceptable in v3) * `assignedTargetingOption.targetingType` The default sorting order is ascending. To specify descending order for a field, a suffix \"desc\" should be added to the field name. Example: `targetingType desc`.", // "location": "query", // "type": "string" // }, // "pageSize": { - // "description": "Requested page size. The size must be an integer between `1` and `5000`. If unspecified, the default is `5000`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified.", + // "description": "Optional. Requested page size. The size must be an integer between `1` and `5000`. If unspecified, the default is `5000`. Returns error code `INVALID_ARGUMENT` if an invalid value is specified.", // "format": "int32", // "location": "query", // "type": "integer" // }, // "pageToken": { - // "description": "A token that lets the client fetch the next page of results. Typically, this is the value of next_page_token returned from the previous call to the `BulkListAdGroupAssignedTargetingOptions` method. If not specified, the first page of results will be returned.", + // "description": "Optional. A token that lets the client fetch the next page of results. Typically, this is the value of next_page_token returned from the previous call to the `BulkListAdGroupAssignedTargetingOptions` method. If not specified, the first page of results will be returned.", // "location": "query", // "type": "string" // }, diff --git a/dns/v1/dns-api.json b/dns/v1/dns-api.json index d46f0d718ec..19de0a0ad9c 100644 --- a/dns/v1/dns-api.json +++ b/dns/v1/dns-api.json @@ -1824,7 +1824,7 @@ } } }, - "revision": "20230801", + "revision": "20230807", "rootUrl": "https://dns.googleapis.com/", "schemas": { "Change": { @@ -2193,7 +2193,7 @@ "type": "object" }, "GoogleIamV1Policy": { - "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/).", + "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": "GoogleIamV1Policy", "properties": { "auditConfigs": { diff --git a/dns/v1/dns-gen.go b/dns/v1/dns-gen.go index ce62a19141d..fae09fcc4a9 100644 --- a/dns/v1/dns-gen.go +++ b/dns/v1/dns-gen.go @@ -928,7 +928,7 @@ func (s *GoogleIamV1GetPolicyOptions) MarshalJSON() ([]byte, error) { // 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": +// **JSON example:** ``` { "bindings": [ { "role": // "roles/resourcemanager.organizationAdmin", "members": [ // "user:mike@example.com", "group:admins@example.com", // "domain:google.com", @@ -937,17 +937,17 @@ func (s *GoogleIamV1GetPolicyOptions) MarshalJSON() ([]byte, error) { // "user:eve@example.com" ], "condition": { "title": "expirable access", // "description": "Does not grant access after Sep 2020", "expression": // "request.time < 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 - +// "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 < // 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/). +// ``` For a description of IAM and its features, see the IAM +// documentation (https://cloud.google.com/iam/docs/). type GoogleIamV1Policy struct { // AuditConfigs: Specifies cloud audit logging configuration for this // policy. diff --git a/dns/v1beta2/dns-api.json b/dns/v1beta2/dns-api.json index 812f0fb75e1..060bb734385 100644 --- a/dns/v1beta2/dns-api.json +++ b/dns/v1beta2/dns-api.json @@ -1821,7 +1821,7 @@ } } }, - "revision": "20230801", + "revision": "20230807", "rootUrl": "https://dns.googleapis.com/", "schemas": { "Change": { @@ -2190,7 +2190,7 @@ "type": "object" }, "GoogleIamV1Policy": { - "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/).", + "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": "GoogleIamV1Policy", "properties": { "auditConfigs": { diff --git a/dns/v1beta2/dns-gen.go b/dns/v1beta2/dns-gen.go index 74bd1ddb22f..5cb71912f69 100644 --- a/dns/v1beta2/dns-gen.go +++ b/dns/v1beta2/dns-gen.go @@ -928,7 +928,7 @@ func (s *GoogleIamV1GetPolicyOptions) MarshalJSON() ([]byte, error) { // 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": +// **JSON example:** ``` { "bindings": [ { "role": // "roles/resourcemanager.organizationAdmin", "members": [ // "user:mike@example.com", "group:admins@example.com", // "domain:google.com", @@ -937,17 +937,17 @@ func (s *GoogleIamV1GetPolicyOptions) MarshalJSON() ([]byte, error) { // "user:eve@example.com" ], "condition": { "title": "expirable access", // "description": "Does not grant access after Sep 2020", "expression": // "request.time < 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 - +// "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 < // 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/). +// ``` For a description of IAM and its features, see the IAM +// documentation (https://cloud.google.com/iam/docs/). type GoogleIamV1Policy struct { // AuditConfigs: Specifies cloud audit logging configuration for this // policy. diff --git a/gkehub/v1/gkehub-api.json b/gkehub/v1/gkehub-api.json index a62ec5678cc..80a2a7ff3f8 100644 --- a/gkehub/v1/gkehub-api.json +++ b/gkehub/v1/gkehub-api.json @@ -1834,7 +1834,7 @@ } } }, - "revision": "20230804", + "revision": "20230814", "rootUrl": "https://gkehub.googleapis.com/", "schemas": { "AppDevExperienceFeatureSpec": { @@ -3848,10 +3848,6 @@ "readOnly": true, "type": "string" }, - "fleet": { - "description": "Whether the membershipbinding is Fleet-wide; true means that this Membership should be bound to all Namespaces in this entire Fleet.", - "type": "boolean" - }, "labels": { "additionalProperties": { "type": "string" @@ -4302,11 +4298,13 @@ "enum": [ "TYPE_UNSPECIFIED", "FLEET", + "FLEET_OUT_OF_SYNC", "USER" ], "enumDescriptions": [ "Type is unknown or not set.", "Per-Membership spec was inherited from the fleet-level default.", + "Per-Membership spec was inherited from the fleet-level default but is now out of sync with the current default.", "Per-Membership spec was inherited from a user specification." ], "type": "string" diff --git a/gkehub/v1/gkehub-gen.go b/gkehub/v1/gkehub-gen.go index 4b3c42bae38..c13467c8cf0 100644 --- a/gkehub/v1/gkehub-gen.go +++ b/gkehub/v1/gkehub-gen.go @@ -3536,11 +3536,6 @@ type MembershipBinding struct { // DeleteTime: Output only. When the membership binding was deleted. DeleteTime string `json:"deleteTime,omitempty"` - // Fleet: Whether the membershipbinding is Fleet-wide; true means that - // this Membership should be bound to all Namespaces in this entire - // Fleet. - Fleet bool `json:"fleet,omitempty"` - // Labels: Optional. Labels for this MembershipBinding. Labels map[string]string `json:"labels,omitempty"` @@ -4226,6 +4221,8 @@ type Origin struct { // "TYPE_UNSPECIFIED" - Type is unknown or not set. // "FLEET" - Per-Membership spec was inherited from the fleet-level // default. + // "FLEET_OUT_OF_SYNC" - Per-Membership spec was inherited from the + // fleet-level default but is now out of sync with the current default. // "USER" - Per-Membership spec was inherited from a user // specification. Type string `json:"type,omitempty"` diff --git a/gkehub/v1alpha/gkehub-api.json b/gkehub/v1alpha/gkehub-api.json index 4eb9f10cb51..7bb614dc1a4 100644 --- a/gkehub/v1alpha/gkehub-api.json +++ b/gkehub/v1alpha/gkehub-api.json @@ -2414,7 +2414,7 @@ } } }, - "revision": "20230804", + "revision": "20230814", "rootUrl": "https://gkehub.googleapis.com/", "schemas": { "AnthosObservabilityFeatureSpec": { @@ -2616,6 +2616,56 @@ }, "type": "object" }, + "ClusterUpgradeFleetSpec": { + "description": "**ClusterUpgrade**: The configuration for the fleet-level ClusterUpgrade feature.", + "id": "ClusterUpgradeFleetSpec", + "properties": { + "gkeUpgradeOverrides": { + "description": "Allow users to override some properties of each GKE upgrade.", + "items": { + "$ref": "ClusterUpgradeGKEUpgradeOverride" + }, + "type": "array" + }, + "postConditions": { + "$ref": "ClusterUpgradePostConditions", + "description": "Required. Post conditions to evaluate to mark an upgrade COMPLETE. Required." + }, + "upstreamFleets": { + "description": "This fleet consumes upgrades that have COMPLETE status code in the upstream fleets. See UpgradeStatus.Code for code definitions. The fleet name should be either fleet project number or id. This is defined as repeated for future proof reasons. Initial implementation will enforce at most one upstream fleet.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "ClusterUpgradeFleetState": { + "description": "**ClusterUpgrade**: The state for the fleet-level ClusterUpgrade feature.", + "id": "ClusterUpgradeFleetState", + "properties": { + "downstreamFleets": { + "description": "This fleets whose upstream_fleets contain the current fleet. The fleet name should be either fleet project number or id.", + "items": { + "type": "string" + }, + "type": "array" + }, + "gkeState": { + "$ref": "ClusterUpgradeGKEUpgradeFeatureState", + "description": "Feature state for GKE clusters." + }, + "ignored": { + "additionalProperties": { + "$ref": "ClusterUpgradeIgnoredMembership" + }, + "description": "A list of memberships ignored by the feature. For example, manually upgraded clusters can be ignored if they are newer than the default versions of its release channel. The membership resource is in the format: `projects/{p}/locations/{l}/membership/{m}`.", + "type": "object" + } + }, + "type": "object" + }, "ClusterUpgradeGKEUpgrade": { "description": "GKEUpgrade represents a GKE provided upgrade, e.g., control plane upgrade.", "id": "ClusterUpgradeGKEUpgrade", @@ -2749,6 +2799,10 @@ "description": "Per-membership state for this feature.", "id": "ClusterUpgradeMembershipState", "properties": { + "fleet": { + "description": "Project number or id of the fleet. It is set only for Memberships that are part of fleet-based Rollout Sequencing.", + "type": "string" + }, "ignored": { "$ref": "ClusterUpgradeIgnoredMembership", "description": "Whether this membership is ignored by the feature. For example, manually upgraded clusters can be ignored if they are newer than the default versions of its release channel." @@ -2886,6 +2940,10 @@ "$ref": "CloudAuditLoggingFeatureSpec", "description": "Cloud Audit Logging-specific spec." }, + "clusterupgrade": { + "$ref": "ClusterUpgradeFleetSpec", + "description": "ClusterUpgrade (fleet-based) feature spec." + }, "fleetobservability": { "$ref": "FleetObservabilityFeatureSpec", "description": "FleetObservability feature spec." @@ -2909,6 +2967,10 @@ "$ref": "AppDevExperienceFeatureState", "description": "Appdevexperience specific state." }, + "clusterupgrade": { + "$ref": "ClusterUpgradeFleetState", + "description": "ClusterUpgrade fleet-level state." + }, "fleetobservability": { "$ref": "FleetObservabilityFeatureState", "description": "FleetObservability feature state." @@ -4948,10 +5010,6 @@ "readOnly": true, "type": "string" }, - "fleet": { - "description": "Whether the membershipbinding is Fleet-wide; true means that this Membership should be bound to all Namespaces in this entire Fleet.", - "type": "boolean" - }, "labels": { "additionalProperties": { "type": "string" @@ -5483,11 +5541,13 @@ "enum": [ "TYPE_UNSPECIFIED", "FLEET", + "FLEET_OUT_OF_SYNC", "USER" ], "enumDescriptions": [ "Type is unknown or not set.", "Per-Membership spec was inherited from the fleet-level default.", + "Per-Membership spec was inherited from the fleet-level default but is now out of sync with the current default.", "Per-Membership spec was inherited from a user specification." ], "type": "string" diff --git a/gkehub/v1alpha/gkehub-gen.go b/gkehub/v1alpha/gkehub-gen.go index 4ade87fff77..2bbafa4a681 100644 --- a/gkehub/v1alpha/gkehub-gen.go +++ b/gkehub/v1alpha/gkehub-gen.go @@ -778,6 +778,89 @@ func (s *CloudBuildMembershipSpec) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// ClusterUpgradeFleetSpec: **ClusterUpgrade**: The configuration for +// the fleet-level ClusterUpgrade feature. +type ClusterUpgradeFleetSpec struct { + // GkeUpgradeOverrides: Allow users to override some properties of each + // GKE upgrade. + GkeUpgradeOverrides []*ClusterUpgradeGKEUpgradeOverride `json:"gkeUpgradeOverrides,omitempty"` + + // PostConditions: Required. Post conditions to evaluate to mark an + // upgrade COMPLETE. Required. + PostConditions *ClusterUpgradePostConditions `json:"postConditions,omitempty"` + + // UpstreamFleets: This fleet consumes upgrades that have COMPLETE + // status code in the upstream fleets. See UpgradeStatus.Code for code + // definitions. The fleet name should be either fleet project number or + // id. This is defined as repeated for future proof reasons. Initial + // implementation will enforce at most one upstream fleet. + UpstreamFleets []string `json:"upstreamFleets,omitempty"` + + // ForceSendFields is a list of field names (e.g. "GkeUpgradeOverrides") + // to unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "GkeUpgradeOverrides") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *ClusterUpgradeFleetSpec) MarshalJSON() ([]byte, error) { + type NoMethod ClusterUpgradeFleetSpec + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +// ClusterUpgradeFleetState: **ClusterUpgrade**: The state for the +// fleet-level ClusterUpgrade feature. +type ClusterUpgradeFleetState struct { + // DownstreamFleets: This fleets whose upstream_fleets contain the + // current fleet. The fleet name should be either fleet project number + // or id. + DownstreamFleets []string `json:"downstreamFleets,omitempty"` + + // GkeState: Feature state for GKE clusters. + GkeState *ClusterUpgradeGKEUpgradeFeatureState `json:"gkeState,omitempty"` + + // Ignored: A list of memberships ignored by the feature. For example, + // manually upgraded clusters can be ignored if they are newer than the + // default versions of its release channel. The membership resource is + // in the format: `projects/{p}/locations/{l}/membership/{m}`. + Ignored map[string]ClusterUpgradeIgnoredMembership `json:"ignored,omitempty"` + + // ForceSendFields is a list of field names (e.g. "DownstreamFleets") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "DownstreamFleets") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *ClusterUpgradeFleetState) MarshalJSON() ([]byte, error) { + type NoMethod ClusterUpgradeFleetState + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // ClusterUpgradeGKEUpgrade: GKEUpgrade represents a GKE provided // upgrade, e.g., control plane upgrade. type ClusterUpgradeGKEUpgrade struct { @@ -1020,6 +1103,10 @@ func (s *ClusterUpgradeMembershipGKEUpgradeState) MarshalJSON() ([]byte, error) // ClusterUpgradeMembershipState: Per-membership state for this feature. type ClusterUpgradeMembershipState struct { + // Fleet: Project number or id of the fleet. It is set only for + // Memberships that are part of fleet-based Rollout Sequencing. + Fleet string `json:"fleet,omitempty"` + // Ignored: Whether this membership is ignored by the feature. For // example, manually upgraded clusters can be ignored if they are newer // than the default versions of its release channel. @@ -1032,7 +1119,7 @@ type ClusterUpgradeMembershipState struct { // Upgrades: Actual upgrade state against desired. Upgrades []*ClusterUpgradeMembershipGKEUpgradeState `json:"upgrades,omitempty"` - // ForceSendFields is a list of field names (e.g. "Ignored") to + // ForceSendFields is a list of field names (e.g. "Fleet") to // unconditionally include in API requests. By default, fields with // empty or default values are omitted from API requests. However, any // non-pointer, non-interface field appearing in ForceSendFields will be @@ -1040,8 +1127,8 @@ type ClusterUpgradeMembershipState struct { // This may be used to include empty fields in Patch requests. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "Ignored") to include in - // API requests with the JSON null value. By default, fields with empty + // NullFields is a list of field names (e.g. "Fleet") to include in API + // requests with the JSON null value. By default, fields with empty // values are omitted from API requests. However, any field with an // empty value appearing in NullFields will be sent to the server as // null. It is an error if a field in this list has a non-empty value. @@ -1239,6 +1326,9 @@ type CommonFeatureSpec struct { // Cloudauditlogging: Cloud Audit Logging-specific spec. Cloudauditlogging *CloudAuditLoggingFeatureSpec `json:"cloudauditlogging,omitempty"` + // Clusterupgrade: ClusterUpgrade (fleet-based) feature spec. + Clusterupgrade *ClusterUpgradeFleetSpec `json:"clusterupgrade,omitempty"` + // Fleetobservability: FleetObservability feature spec. Fleetobservability *FleetObservabilityFeatureSpec `json:"fleetobservability,omitempty"` @@ -1278,6 +1368,9 @@ type CommonFeatureState struct { // Appdevexperience: Appdevexperience specific state. Appdevexperience *AppDevExperienceFeatureState `json:"appdevexperience,omitempty"` + // Clusterupgrade: ClusterUpgrade fleet-level state. + Clusterupgrade *ClusterUpgradeFleetState `json:"clusterupgrade,omitempty"` + // Fleetobservability: FleetObservability feature state. Fleetobservability *FleetObservabilityFeatureState `json:"fleetobservability,omitempty"` @@ -4541,11 +4634,6 @@ type MembershipBinding struct { // DeleteTime: Output only. When the membership binding was deleted. DeleteTime string `json:"deleteTime,omitempty"` - // Fleet: Whether the membershipbinding is Fleet-wide; true means that - // this Membership should be bound to all Namespaces in this entire - // Fleet. - Fleet bool `json:"fleet,omitempty"` - // Labels: Optional. Labels for this MembershipBinding. Labels map[string]string `json:"labels,omitempty"` @@ -5345,6 +5433,8 @@ type Origin struct { // "TYPE_UNSPECIFIED" - Type is unknown or not set. // "FLEET" - Per-Membership spec was inherited from the fleet-level // default. + // "FLEET_OUT_OF_SYNC" - Per-Membership spec was inherited from the + // fleet-level default but is now out of sync with the current default. // "USER" - Per-Membership spec was inherited from a user // specification. Type string `json:"type,omitempty"` diff --git a/gkehub/v1beta/gkehub-api.json b/gkehub/v1beta/gkehub-api.json index f7372ffea66..92fe4da7387 100644 --- a/gkehub/v1beta/gkehub-api.json +++ b/gkehub/v1beta/gkehub-api.json @@ -2100,7 +2100,7 @@ } } }, - "revision": "20230804", + "revision": "20230814", "rootUrl": "https://gkehub.googleapis.com/", "schemas": { "AnthosObservabilityFeatureSpec": { @@ -4011,10 +4011,6 @@ "readOnly": true, "type": "string" }, - "fleet": { - "description": "Whether the membershipbinding is Fleet-wide; true means that this Membership should be bound to all Namespaces in this entire Fleet.", - "type": "boolean" - }, "labels": { "additionalProperties": { "type": "string" @@ -4392,11 +4388,13 @@ "enum": [ "TYPE_UNSPECIFIED", "FLEET", + "FLEET_OUT_OF_SYNC", "USER" ], "enumDescriptions": [ "Type is unknown or not set.", "Per-Membership spec was inherited from the fleet-level default.", + "Per-Membership spec was inherited from the fleet-level default but is now out of sync with the current default.", "Per-Membership spec was inherited from a user specification." ], "type": "string" diff --git a/gkehub/v1beta/gkehub-gen.go b/gkehub/v1beta/gkehub-gen.go index 10a964a5403..2ab6a679869 100644 --- a/gkehub/v1beta/gkehub-gen.go +++ b/gkehub/v1beta/gkehub-gen.go @@ -3443,11 +3443,6 @@ type MembershipBinding struct { // DeleteTime: Output only. When the membership binding was deleted. DeleteTime string `json:"deleteTime,omitempty"` - // Fleet: Whether the membershipbinding is Fleet-wide; true means that - // this Membership should be bound to all Namespaces in this entire - // Fleet. - Fleet bool `json:"fleet,omitempty"` - // Labels: Optional. Labels for this MembershipBinding. Labels map[string]string `json:"labels,omitempty"` @@ -3994,6 +3989,8 @@ type Origin struct { // "TYPE_UNSPECIFIED" - Type is unknown or not set. // "FLEET" - Per-Membership spec was inherited from the fleet-level // default. + // "FLEET_OUT_OF_SYNC" - Per-Membership spec was inherited from the + // fleet-level default but is now out of sync with the current default. // "USER" - Per-Membership spec was inherited from a user // specification. Type string `json:"type,omitempty"` diff --git a/metastore/v1beta/metastore-api.json b/metastore/v1beta/metastore-api.json index d786845b037..a588f614c5f 100644 --- a/metastore/v1beta/metastore-api.json +++ b/metastore/v1beta/metastore-api.json @@ -1579,7 +1579,7 @@ } } }, - "revision": "20230727", + "revision": "20230807", "rootUrl": "https://metastore.googleapis.com/", "schemas": { "AlterMetadataResourceLocationRequest": { @@ -2566,7 +2566,7 @@ "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.", + "description": "The normal, successful response of the operation. 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" } }, diff --git a/metastore/v1beta/metastore-gen.go b/metastore/v1beta/metastore-gen.go index 0c486731af2..036b9fda7b4 100644 --- a/metastore/v1beta/metastore-gen.go +++ b/metastore/v1beta/metastore-gen.go @@ -1854,8 +1854,8 @@ type Operation struct { // 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: The normal, successful response of the operation. 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 diff --git a/monitoring/v1/monitoring-api.json b/monitoring/v1/monitoring-api.json index 503270e7b98..48656efd426 100644 --- a/monitoring/v1/monitoring-api.json +++ b/monitoring/v1/monitoring-api.json @@ -753,7 +753,7 @@ } } }, - "revision": "20230806", + "revision": "20230813", "rootUrl": "https://monitoring.googleapis.com/", "schemas": { "Aggregation": { @@ -1595,6 +1595,67 @@ }, "type": "object" }, + "PieChart": { + "description": "A widget that displays timeseries data as a pie or a donut.", + "id": "PieChart", + "properties": { + "chartType": { + "description": "Required. Indicates the visualization type for the PieChart.", + "enum": [ + "PIE_CHART_TYPE_UNSPECIFIED", + "PIE", + "DONUT" + ], + "enumDescriptions": [ + "The zero value. No type specified. Do not use.", + "A Pie type PieChart.", + "Similar to PIE, but the DONUT type PieChart has a hole in the middle." + ], + "type": "string" + }, + "dataSets": { + "description": "Required. The queries for the chart's data.", + "items": { + "$ref": "PieChartDataSet" + }, + "type": "array" + }, + "showLabels": { + "description": "Optional. Indicates whether or not the pie chart should slices' labels", + "type": "boolean" + }, + "showTotal": { + "description": "Optional. Indicates whether or not donut chart should show the total in the middle", + "type": "boolean" + }, + "sliceAggregatedThreshold": { + "description": "Optional. If slices's values are smaller than this value, they will be combined into other category", + "format": "float", + "type": "number" + } + }, + "type": "object" + }, + "PieChartDataSet": { + "description": "Groups a time series query definition.", + "id": "PieChartDataSet", + "properties": { + "minAlignmentPeriod": { + "description": "Optional. The lower bound on data point frequency for this data set, implemented by specifying the minimum alignment period to use in a time series query. For example, if the data is published once every 10 minutes, the min_alignment_period should be at least 10 minutes. It would not make sense to fetch and align data at one minute intervals.", + "format": "google-duration", + "type": "string" + }, + "sliceNameTemplate": { + "description": "Optional. A template for the name of the slice. This name will be displayed in the legend and the tooltip of the pie chart. It replaces the auto-generated names for the slices. For example, if the template is set to ${resource.labels.zone}, the zone's value will be used for the name instead of the default name.", + "type": "string" + }, + "timeSeriesQuery": { + "$ref": "TimeSeriesQuery", + "description": "Required. The query for the PieChart. See, google.monitoring.dashboard.v1.TimeSeriesQuery." + } + }, + "type": "object" + }, "QueryExemplarsRequest": { "description": "QueryExemplarsRequest holds all parameters of the Prometheus upstream API for querying exemplars.", "id": "QueryExemplarsRequest", @@ -2315,6 +2376,10 @@ "$ref": "LogsPanel", "description": "A widget that shows a stream of logs." }, + "pieChart": { + "$ref": "PieChart", + "description": "A widget that displays timeseries data as a pie chart." + }, "scorecard": { "$ref": "Scorecard", "description": "A scorecard summarizing time series data." diff --git a/monitoring/v1/monitoring-gen.go b/monitoring/v1/monitoring-gen.go index 5269962560b..f22b69f6d87 100644 --- a/monitoring/v1/monitoring-gen.go +++ b/monitoring/v1/monitoring-gen.go @@ -1810,6 +1810,116 @@ func (s *PickTimeSeriesFilter) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// PieChart: A widget that displays timeseries data as a pie or a donut. +type PieChart struct { + // ChartType: Required. Indicates the visualization type for the + // PieChart. + // + // Possible values: + // "PIE_CHART_TYPE_UNSPECIFIED" - The zero value. No type specified. + // Do not use. + // "PIE" - A Pie type PieChart. + // "DONUT" - Similar to PIE, but the DONUT type PieChart has a hole in + // the middle. + ChartType string `json:"chartType,omitempty"` + + // DataSets: Required. The queries for the chart's data. + DataSets []*PieChartDataSet `json:"dataSets,omitempty"` + + // ShowLabels: Optional. Indicates whether or not the pie chart should + // slices' labels + ShowLabels bool `json:"showLabels,omitempty"` + + // ShowTotal: Optional. Indicates whether or not donut chart should show + // the total in the middle + ShowTotal bool `json:"showTotal,omitempty"` + + // SliceAggregatedThreshold: Optional. If slices's values are smaller + // than this value, they will be combined into other category + SliceAggregatedThreshold float64 `json:"sliceAggregatedThreshold,omitempty"` + + // ForceSendFields is a list of field names (e.g. "ChartType") to + // unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "ChartType") to include in + // API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. However, any field with an + // empty value appearing in NullFields will be sent to the server as + // null. It is an error if a field in this list has a non-empty value. + // This may be used to include null fields in Patch requests. + NullFields []string `json:"-"` +} + +func (s *PieChart) MarshalJSON() ([]byte, error) { + type NoMethod PieChart + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + +func (s *PieChart) UnmarshalJSON(data []byte) error { + type NoMethod PieChart + var s1 struct { + SliceAggregatedThreshold gensupport.JSONFloat64 `json:"sliceAggregatedThreshold"` + *NoMethod + } + s1.NoMethod = (*NoMethod)(s) + if err := json.Unmarshal(data, &s1); err != nil { + return err + } + s.SliceAggregatedThreshold = float64(s1.SliceAggregatedThreshold) + return nil +} + +// PieChartDataSet: Groups a time series query definition. +type PieChartDataSet struct { + // MinAlignmentPeriod: Optional. The lower bound on data point frequency + // for this data set, implemented by specifying the minimum alignment + // period to use in a time series query. For example, if the data is + // published once every 10 minutes, the min_alignment_period should be + // at least 10 minutes. It would not make sense to fetch and align data + // at one minute intervals. + MinAlignmentPeriod string `json:"minAlignmentPeriod,omitempty"` + + // SliceNameTemplate: Optional. A template for the name of the slice. + // This name will be displayed in the legend and the tooltip of the pie + // chart. It replaces the auto-generated names for the slices. For + // example, if the template is set to ${resource.labels.zone}, the + // zone's value will be used for the name instead of the default name. + SliceNameTemplate string `json:"sliceNameTemplate,omitempty"` + + // TimeSeriesQuery: Required. The query for the PieChart. See, + // google.monitoring.dashboard.v1.TimeSeriesQuery. + TimeSeriesQuery *TimeSeriesQuery `json:"timeSeriesQuery,omitempty"` + + // ForceSendFields is a list of field names (e.g. "MinAlignmentPeriod") + // to unconditionally include in API requests. By default, fields with + // empty or default values are omitted from API requests. However, any + // non-pointer, non-interface field appearing in ForceSendFields will be + // sent to the server regardless of whether the field is empty or not. + // This may be used to include empty fields in Patch requests. + ForceSendFields []string `json:"-"` + + // NullFields is a list of field names (e.g. "MinAlignmentPeriod") to + // include in API requests with the JSON null value. By default, fields + // with empty values are omitted from API requests. However, any field + // with an empty value appearing in NullFields will be sent to the + // server as null. It is an error if a field in this list has a + // non-empty value. This may be used to include null fields in Patch + // requests. + NullFields []string `json:"-"` +} + +func (s *PieChartDataSet) MarshalJSON() ([]byte, error) { + type NoMethod PieChartDataSet + raw := NoMethod(*s) + return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) +} + // QueryExemplarsRequest: QueryExemplarsRequest holds all parameters of // the Prometheus upstream API for querying exemplars. type QueryExemplarsRequest struct { @@ -2961,6 +3071,9 @@ type Widget struct { // LogsPanel: A widget that shows a stream of logs. LogsPanel *LogsPanel `json:"logsPanel,omitempty"` + // PieChart: A widget that displays timeseries data as a pie chart. + PieChart *PieChart `json:"pieChart,omitempty"` + // Scorecard: A scorecard summarizing time series data. Scorecard *Scorecard `json:"scorecard,omitempty"` diff --git a/prod_tt_sasportal/v1alpha1/prod_tt_sasportal-api.json b/prod_tt_sasportal/v1alpha1/prod_tt_sasportal-api.json index 23931b21651..00efe01200a 100644 --- a/prod_tt_sasportal/v1alpha1/prod_tt_sasportal-api.json +++ b/prod_tt_sasportal/v1alpha1/prod_tt_sasportal-api.json @@ -252,6 +252,25 @@ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/sasportal" ] + }, + "setupSasAnalytics": { + "description": "Setups the a GCP Project to receive SAS Analytics messages via GCP Pub/Sub with a subscription to BigQuery. All the Pub/Sub topics and BigQuery tables are created automatically as part of this service.", + "flatPath": "v1alpha1/customers:setupSasAnalytics", + "httpMethod": "POST", + "id": "prod_tt_sasportal.customers.setupSasAnalytics", + "parameterOrder": [], + "parameters": {}, + "path": "v1alpha1/customers:setupSasAnalytics", + "request": { + "$ref": "SasPortalSetupSasAnalyticsRequest" + }, + "response": { + "$ref": "SasPortalOperation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/sasportal" + ] } }, "resources": { @@ -2618,7 +2637,7 @@ } } }, - "revision": "20230807", + "revision": "20230816", "rootUrl": "https://prod-tt-sasportal.googleapis.com/", "schemas": { "SasPortalAssignment": { @@ -3557,6 +3576,24 @@ }, "type": "object" }, + "SasPortalSetupSasAnalyticsMetadata": { + "description": "Metadata returned by the long running operation for the SetupSasAnalytics rpc.", + "id": "SasPortalSetupSasAnalyticsMetadata", + "properties": {}, + "type": "object" + }, + "SasPortalSetupSasAnalyticsRequest": { + "description": "Request for the SetupSasAnalytics rpc.", + "id": "SasPortalSetupSasAnalyticsRequest", + "properties": {}, + "type": "object" + }, + "SasPortalSetupSasAnalyticsResponse": { + "description": "Response returned by the long running operation for the SetupSasAnalytics rpc.", + "id": "SasPortalSetupSasAnalyticsResponse", + "properties": {}, + "type": "object" + }, "SasPortalSignDeviceRequest": { "description": "Request for SignDevice.", "id": "SasPortalSignDeviceRequest", diff --git a/prod_tt_sasportal/v1alpha1/prod_tt_sasportal-gen.go b/prod_tt_sasportal/v1alpha1/prod_tt_sasportal-gen.go index 149ef33da68..c56a0d2766d 100644 --- a/prod_tt_sasportal/v1alpha1/prod_tt_sasportal-gen.go +++ b/prod_tt_sasportal/v1alpha1/prod_tt_sasportal-gen.go @@ -1986,6 +1986,21 @@ func (s *SasPortalSetPolicyRequest) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) } +// SasPortalSetupSasAnalyticsMetadata: Metadata returned by the long +// running operation for the SetupSasAnalytics rpc. +type SasPortalSetupSasAnalyticsMetadata struct { +} + +// SasPortalSetupSasAnalyticsRequest: Request for the SetupSasAnalytics +// rpc. +type SasPortalSetupSasAnalyticsRequest struct { +} + +// SasPortalSetupSasAnalyticsResponse: Response returned by the long +// running operation for the SetupSasAnalytics rpc. +type SasPortalSetupSasAnalyticsResponse struct { +} + // SasPortalSignDeviceRequest: Request for SignDevice. type SasPortalSignDeviceRequest struct { // Device: Required. The device to sign. The device fields name, fcc_id @@ -3074,6 +3089,135 @@ func (c *CustomersProvisionDeploymentCall) Do(opts ...googleapi.CallOption) (*Sa } +// method id "prod_tt_sasportal.customers.setupSasAnalytics": + +type CustomersSetupSasAnalyticsCall struct { + s *Service + sasportalsetupsasanalyticsrequest *SasPortalSetupSasAnalyticsRequest + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// SetupSasAnalytics: Setups the a GCP Project to receive SAS Analytics +// messages via GCP Pub/Sub with a subscription to BigQuery. All the +// Pub/Sub topics and BigQuery tables are created automatically as part +// of this service. +func (r *CustomersService) SetupSasAnalytics(sasportalsetupsasanalyticsrequest *SasPortalSetupSasAnalyticsRequest) *CustomersSetupSasAnalyticsCall { + c := &CustomersSetupSasAnalyticsCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.sasportalsetupsasanalyticsrequest = sasportalsetupsasanalyticsrequest + 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 *CustomersSetupSasAnalyticsCall) Fields(s ...googleapi.Field) *CustomersSetupSasAnalyticsCall { + 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 *CustomersSetupSasAnalyticsCall) Context(ctx context.Context) *CustomersSetupSasAnalyticsCall { + 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 *CustomersSetupSasAnalyticsCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *CustomersSetupSasAnalyticsCall) 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.sasportalsetupsasanalyticsrequest) + 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:setupSasAnalytics") + 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 "prod_tt_sasportal.customers.setupSasAnalytics" 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 *CustomersSetupSasAnalyticsCall) 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": "Setups the a GCP Project to receive SAS Analytics messages via GCP Pub/Sub with a subscription to BigQuery. All the Pub/Sub topics and BigQuery tables are created automatically as part of this service.", + // "flatPath": "v1alpha1/customers:setupSasAnalytics", + // "httpMethod": "POST", + // "id": "prod_tt_sasportal.customers.setupSasAnalytics", + // "parameterOrder": [], + // "parameters": {}, + // "path": "v1alpha1/customers:setupSasAnalytics", + // "request": { + // "$ref": "SasPortalSetupSasAnalyticsRequest" + // }, + // "response": { + // "$ref": "SasPortalOperation" + // }, + // "scopes": [ + // "https://www.googleapis.com/auth/cloud-platform", + // "https://www.googleapis.com/auth/sasportal" + // ] + // } + +} + // method id "prod_tt_sasportal.customers.deployments.create": type CustomersDeploymentsCreateCall struct { diff --git a/youtube/v3/youtube-api.json b/youtube/v3/youtube-api.json index 670926b06ce..6f34503dfa7 100644 --- a/youtube/v3/youtube-api.json +++ b/youtube/v3/youtube-api.json @@ -3833,7 +3833,7 @@ } } }, - "revision": "20230807", + "revision": "20230816", "rootUrl": "https://youtube.googleapis.com/", "schemas": { "AbuseReport": { @@ -7443,8 +7443,7 @@ "type": "boolean" }, "pauseAdsUntil": { - "description": "If set, automatic cuepoint insertion is paused until this timestamp (\"No Ad Zone\").", - "format": "google-datetime", + "description": "If set, automatic cuepoint insertion is paused until this timestamp (\"No Ad Zone\"). The value is specified in ISO 8601 format.", "type": "string" }, "repeatInterval": { diff --git a/youtube/v3/youtube-gen.go b/youtube/v3/youtube-gen.go index ffe923c39eb..13ec2de0f76 100644 --- a/youtube/v3/youtube-gen.go +++ b/youtube/v3/youtube-gen.go @@ -4150,7 +4150,8 @@ type CuepointSchedule struct { Enabled bool `json:"enabled,omitempty"` // PauseAdsUntil: If set, automatic cuepoint insertion is paused until - // this timestamp ("No Ad Zone"). + // this timestamp ("No Ad Zone"). The value is specified in ISO 8601 + // format. PauseAdsUntil string `json:"pauseAdsUntil,omitempty"` // RepeatInterval: Interval frequency that api uses to insert cuepoints