From 0e56eebe1358284e6dfbedba92e10769ce1bb4d7 Mon Sep 17 00:00:00 2001 From: yoshi-code-bot <70984784+yoshi-code-bot@users.noreply.github.com> Date: Wed, 30 Jun 2021 12:25:09 -0700 Subject: [PATCH] feat: run the generator (#2667) * fix(accessapproval): update the API #### accessapproval:v1 The following keys were changed: - schemas.EnrolledService.properties.cloudProduct.description * feat(analyticsdata): update the API #### analyticsdata:v1beta The following keys were added: - schemas.MinuteRange.description - schemas.MinuteRange.id - schemas.MinuteRange.properties.endMinutesAgo.description - schemas.MinuteRange.properties.endMinutesAgo.format - schemas.MinuteRange.properties.endMinutesAgo.type - schemas.MinuteRange.properties.name.description - schemas.MinuteRange.properties.name.type - schemas.MinuteRange.properties.startMinutesAgo.description - schemas.MinuteRange.properties.startMinutesAgo.format - schemas.MinuteRange.properties.startMinutesAgo.type - schemas.MinuteRange.type - schemas.RunRealtimeReportRequest.properties.minuteRanges.description - schemas.RunRealtimeReportRequest.properties.minuteRanges.items.$ref - schemas.RunRealtimeReportRequest.properties.minuteRanges.type * feat(androiddeviceprovisioning): update the API #### androiddeviceprovisioning:v1 The following keys were added: - schemas.Company.properties.languageCode.description - schemas.Company.properties.languageCode.type - schemas.Company.properties.skipWelcomeEmail.description - schemas.Company.properties.skipWelcomeEmail.type The following keys were changed: - schemas.Company.properties.ownerEmails.description * feat(cloudasset): update the API #### cloudasset:v1 The following keys were added: - resources.v1.methods.searchAllResources.parameters.readMask.description - resources.v1.methods.searchAllResources.parameters.readMask.format - resources.v1.methods.searchAllResources.parameters.readMask.location - resources.v1.methods.searchAllResources.parameters.readMask.type - schemas.ResourceSearchResult.properties.versionedResources.description - schemas.ResourceSearchResult.properties.versionedResources.items.$ref - schemas.ResourceSearchResult.properties.versionedResources.type - schemas.VersionedResource.description - schemas.VersionedResource.id - schemas.VersionedResource.properties.resource.additionalProperties.description - schemas.VersionedResource.properties.resource.additionalProperties.type - schemas.VersionedResource.properties.resource.description - schemas.VersionedResource.properties.resource.type - schemas.VersionedResource.properties.version.description - schemas.VersionedResource.properties.version.type - schemas.VersionedResource.type * feat(cloudidentity): update the API #### cloudidentity:v1beta1 The following keys were added: - schemas.Group.properties.posixGroups.description - schemas.Group.properties.posixGroups.items.$ref - schemas.Group.properties.posixGroups.type - schemas.PosixGroup.description - schemas.PosixGroup.id - schemas.PosixGroup.properties.gid.description - schemas.PosixGroup.properties.gid.format - schemas.PosixGroup.properties.gid.type - schemas.PosixGroup.properties.name.description - schemas.PosixGroup.properties.name.type - schemas.PosixGroup.properties.systemId.description - schemas.PosixGroup.properties.systemId.type - schemas.PosixGroup.type * feat(compute)!: update the API BREAKING CHANGE: This release has breaking changes. #### compute:alpha The following keys were deleted: - resources.regionInstances.methods.recommendLocations.description - resources.regionInstances.methods.recommendLocations.flatPath - resources.regionInstances.methods.recommendLocations.httpMethod - resources.regionInstances.methods.recommendLocations.id - resources.regionInstances.methods.recommendLocations.parameterOrder - resources.regionInstances.methods.recommendLocations.parameters.project.description - resources.regionInstances.methods.recommendLocations.parameters.project.location - resources.regionInstances.methods.recommendLocations.parameters.project.pattern - resources.regionInstances.methods.recommendLocations.parameters.project.required - resources.regionInstances.methods.recommendLocations.parameters.project.type - resources.regionInstances.methods.recommendLocations.parameters.region.description - resources.regionInstances.methods.recommendLocations.parameters.region.location - resources.regionInstances.methods.recommendLocations.parameters.region.pattern - resources.regionInstances.methods.recommendLocations.parameters.region.required - resources.regionInstances.methods.recommendLocations.parameters.region.type - resources.regionInstances.methods.recommendLocations.path - resources.regionInstances.methods.recommendLocations.request.$ref - resources.regionInstances.methods.recommendLocations.response.$ref - resources.regionInstances.methods.recommendLocations.scopes - schemas.RegionInstancesRecommendLocationsResource.description - schemas.RegionInstancesRecommendLocationsResource.id - schemas.RegionInstancesRecommendLocationsResource.properties.instanceSpecs.additionalProperties.$ref - schemas.RegionInstancesRecommendLocationsResource.properties.instanceSpecs.description - schemas.RegionInstancesRecommendLocationsResource.properties.instanceSpecs.type - schemas.RegionInstancesRecommendLocationsResource.properties.locationPolicy.$ref - schemas.RegionInstancesRecommendLocationsResource.properties.locationPolicy.description - schemas.RegionInstancesRecommendLocationsResource.type - schemas.RegionInstancesRecommendLocationsResponse.description - schemas.RegionInstancesRecommendLocationsResponse.id - schemas.RegionInstancesRecommendLocationsResponse.properties.recommendedLocations.additionalProperties.$ref - schemas.RegionInstancesRecommendLocationsResponse.properties.recommendedLocations.description - schemas.RegionInstancesRecommendLocationsResponse.properties.recommendedLocations.type - schemas.RegionInstancesRecommendLocationsResponse.type - schemas.RegionInstancesRecommendLocationsResponseRecommendation.description - schemas.RegionInstancesRecommendLocationsResponseRecommendation.id - schemas.RegionInstancesRecommendLocationsResponseRecommendation.properties.instanceCount.description - schemas.RegionInstancesRecommendLocationsResponseRecommendation.properties.instanceCount.format - schemas.RegionInstancesRecommendLocationsResponseRecommendation.properties.instanceCount.type - schemas.RegionInstancesRecommendLocationsResponseRecommendation.type - schemas.RegionInstancesRecommendLocationsResponseRecommendationsForInstanceSpecs.description - schemas.RegionInstancesRecommendLocationsResponseRecommendationsForInstanceSpecs.id - schemas.RegionInstancesRecommendLocationsResponseRecommendationsForInstanceSpecs.properties.locations.additionalProperties.$ref - schemas.RegionInstancesRecommendLocationsResponseRecommendationsForInstanceSpecs.properties.locations.description - schemas.RegionInstancesRecommendLocationsResponseRecommendationsForInstanceSpecs.properties.locations.type - schemas.RegionInstancesRecommendLocationsResponseRecommendationsForInstanceSpecs.type The following keys were added: - schemas.AttachedDiskInitializeParams.properties.interface.description - schemas.AttachedDiskInitializeParams.properties.interface.enum - schemas.AttachedDiskInitializeParams.properties.interface.enumDescriptions - schemas.AttachedDiskInitializeParams.properties.interface.type - schemas.Scheduling.properties.provisioningModel.description - schemas.Scheduling.properties.provisioningModel.enum - schemas.Scheduling.properties.provisioningModel.enumDescriptions - schemas.Scheduling.properties.provisioningModel.type - schemas.SecurityPolicyRule.properties.redirectOptions.$ref - schemas.SecurityPolicyRule.properties.redirectOptions.description - schemas.SecurityPolicyRuleRedirectOptions.id - schemas.SecurityPolicyRuleRedirectOptions.properties.target.description - schemas.SecurityPolicyRuleRedirectOptions.properties.target.type - schemas.SecurityPolicyRuleRedirectOptions.properties.type.description - schemas.SecurityPolicyRuleRedirectOptions.properties.type.enum - schemas.SecurityPolicyRuleRedirectOptions.properties.type.enumDescriptions - schemas.SecurityPolicyRuleRedirectOptions.properties.type.type - schemas.SecurityPolicyRuleRedirectOptions.type - schemas.Snapshot.properties.sourceInstantSnapshot.description - schemas.Snapshot.properties.sourceInstantSnapshot.type - schemas.Snapshot.properties.sourceInstantSnapshotId.description - schemas.Snapshot.properties.sourceInstantSnapshotId.type - schemas.Subsetting.properties.subsetSize.description - schemas.Subsetting.properties.subsetSize.format - schemas.Subsetting.properties.subsetSize.type The following keys were changed: - resources.regionCommitments.methods.aggregatedList.description - schemas.Address.description - schemas.AttachedDiskInitializeParams.properties.diskType.description - schemas.AttachedDiskInitializeParams.properties.provisionedIops.description - schemas.Backend.properties.capacityScaler.description - schemas.Backend.properties.group.description - schemas.Backend.properties.maxConnections.description - schemas.Backend.properties.maxConnectionsPerEndpoint.description - schemas.Backend.properties.maxConnectionsPerInstance.description - schemas.BackendBucket.properties.compressionMode.description - schemas.BackendService.description - schemas.BackendService.properties.affinityCookieTtlSec.description - schemas.BackendService.properties.cdnPolicy.description - schemas.BackendService.properties.compressionMode.description - schemas.BackendService.properties.customRequestHeaders.description - schemas.BackendService.properties.customResponseHeaders.description - schemas.BackendService.properties.enableCDN.description - schemas.BackendService.properties.failoverPolicy.description - schemas.BackendService.properties.loadBalancingScheme.description - schemas.BackendService.properties.loadBalancingScheme.enumDescriptions - schemas.BackendService.properties.port.description - schemas.BackendService.properties.portName.description - schemas.BackendService.properties.protocol.description - schemas.BackendService.properties.protocol.enumDescriptions - schemas.BackendService.properties.sessionAffinity.description - schemas.BackendServiceFailoverPolicy.description - schemas.BackendServiceFailoverPolicy.properties.dropTrafficIfUnhealthy.description - schemas.BackendServiceFailoverPolicy.properties.failoverRatio.description - schemas.BulkInsertInstanceResource.description - schemas.BulkInsertInstanceResource.properties.namePattern.description - schemas.CircuitBreakers.description - schemas.Commitment.properties.type.enum - schemas.Commitment.properties.type.enumDescriptions - schemas.Disk.properties.provisionedIops.description - schemas.Disk.properties.type.description - schemas.DisksAddResourcePoliciesRequest.properties.resourcePolicies.description - schemas.ExternalVpnGateway.properties.interfaces.description - schemas.GuestAttributes.properties.queryPath.description - schemas.HealthCheckService.properties.healthStatusAggregationPolicy.description - schemas.HttpRetryPolicy.properties.retryConditions.description - schemas.InstanceGroupManager.description #### compute:beta The following keys were added: - schemas.SecurityPolicyRule.properties.headerAction.$ref - schemas.SecurityPolicyRule.properties.headerAction.description - schemas.SecurityPolicyRule.properties.redirectOptions.$ref - schemas.SecurityPolicyRule.properties.redirectOptions.description - schemas.SecurityPolicyRuleHttpHeaderAction.id - schemas.SecurityPolicyRuleHttpHeaderAction.properties.requestHeadersToAdds.description - schemas.SecurityPolicyRuleHttpHeaderAction.properties.requestHeadersToAdds.items.$ref - schemas.SecurityPolicyRuleHttpHeaderAction.properties.requestHeadersToAdds.type - schemas.SecurityPolicyRuleHttpHeaderAction.type - schemas.SecurityPolicyRuleHttpHeaderActionHttpHeaderOption.id - schemas.SecurityPolicyRuleHttpHeaderActionHttpHeaderOption.properties.headerName.description - schemas.SecurityPolicyRuleHttpHeaderActionHttpHeaderOption.properties.headerName.type - schemas.SecurityPolicyRuleHttpHeaderActionHttpHeaderOption.properties.headerValue.description - schemas.SecurityPolicyRuleHttpHeaderActionHttpHeaderOption.properties.headerValue.type - schemas.SecurityPolicyRuleHttpHeaderActionHttpHeaderOption.type - schemas.SecurityPolicyRuleRedirectOptions.id - schemas.SecurityPolicyRuleRedirectOptions.properties.target.description - schemas.SecurityPolicyRuleRedirectOptions.properties.target.type - schemas.SecurityPolicyRuleRedirectOptions.properties.type.description - schemas.SecurityPolicyRuleRedirectOptions.properties.type.enum - schemas.SecurityPolicyRuleRedirectOptions.properties.type.enumDescriptions - schemas.SecurityPolicyRuleRedirectOptions.properties.type.type - schemas.SecurityPolicyRuleRedirectOptions.type The following keys were changed: - resources.regionCommitments.methods.aggregatedList.description - schemas.Address.description - schemas.AttachedDiskInitializeParams.properties.diskType.description - schemas.AttachedDiskInitializeParams.properties.provisionedIops.description - schemas.Backend.properties.capacityScaler.description - schemas.Backend.properties.group.description - schemas.Backend.properties.maxConnections.description - schemas.Backend.properties.maxConnectionsPerEndpoint.description - schemas.Backend.properties.maxConnectionsPerInstance.description - schemas.BackendBucket.properties.compressionMode.description - schemas.BackendService.description - schemas.BackendService.properties.affinityCookieTtlSec.description - schemas.BackendService.properties.cdnPolicy.description - schemas.BackendService.properties.compressionMode.description - schemas.BackendService.properties.customRequestHeaders.description - schemas.BackendService.properties.customResponseHeaders.description - schemas.BackendService.properties.enableCDN.description - schemas.BackendService.properties.failoverPolicy.description - schemas.BackendService.properties.loadBalancingScheme.description - schemas.BackendService.properties.loadBalancingScheme.enumDescriptions - schemas.BackendService.properties.port.description - schemas.BackendService.properties.portName.description - schemas.BackendService.properties.protocol.description - schemas.BackendService.properties.protocol.enumDescriptions - schemas.BackendService.properties.sessionAffinity.description - schemas.BackendServiceFailoverPolicy.description - schemas.BackendServiceFailoverPolicy.properties.dropTrafficIfUnhealthy.description - schemas.BackendServiceFailoverPolicy.properties.failoverRatio.description - schemas.BulkInsertInstanceResource.description - schemas.BulkInsertInstanceResource.properties.namePattern.description - schemas.CircuitBreakers.description - schemas.Disk.properties.provisionedIops.description - schemas.Disk.properties.type.description - schemas.DisksAddResourcePoliciesRequest.properties.resourcePolicies.description - schemas.ExternalVpnGateway.properties.interfaces.description - schemas.GuestAttributes.properties.queryPath.description - schemas.HealthCheckService.properties.healthStatusAggregationPolicy.description - schemas.HttpRetryPolicy.properties.retryConditions.description - schemas.InstanceGroupManager.description #### compute:v1 The following keys were added: - resources.serviceAttachments.methods.aggregatedList.description - resources.serviceAttachments.methods.aggregatedList.flatPath - resources.serviceAttachments.methods.aggregatedList.httpMethod - resources.serviceAttachments.methods.aggregatedList.id - resources.serviceAttachments.methods.aggregatedList.parameterOrder - resources.serviceAttachments.methods.aggregatedList.parameters.filter.description - resources.serviceAttachments.methods.aggregatedList.parameters.filter.location - resources.serviceAttachments.methods.aggregatedList.parameters.filter.type - resources.serviceAttachments.methods.aggregatedList.parameters.includeAllScopes.description - resources.serviceAttachments.methods.aggregatedList.parameters.includeAllScopes.location - resources.serviceAttachments.methods.aggregatedList.parameters.includeAllScopes.type - resources.serviceAttachments.methods.aggregatedList.parameters.maxResults.default - resources.serviceAttachments.methods.aggregatedList.parameters.maxResults.description - resources.serviceAttachments.methods.aggregatedList.parameters.maxResults.format - resources.serviceAttachments.methods.aggregatedList.parameters.maxResults.location - resources.serviceAttachments.methods.aggregatedList.parameters.maxResults.minimum - resources.serviceAttachments.methods.aggregatedList.parameters.maxResults.type - resources.serviceAttachments.methods.aggregatedList.parameters.orderBy.description - resources.serviceAttachments.methods.aggregatedList.parameters.orderBy.location - resources.serviceAttachments.methods.aggregatedList.parameters.orderBy.type - resources.serviceAttachments.methods.aggregatedList.parameters.pageToken.description - resources.serviceAttachments.methods.aggregatedList.parameters.pageToken.location - resources.serviceAttachments.methods.aggregatedList.parameters.pageToken.type - resources.serviceAttachments.methods.aggregatedList.parameters.project.description - resources.serviceAttachments.methods.aggregatedList.parameters.project.location - resources.serviceAttachments.methods.aggregatedList.parameters.project.pattern - resources.serviceAttachments.methods.aggregatedList.parameters.project.required - resources.serviceAttachments.methods.aggregatedList.parameters.project.type - resources.serviceAttachments.methods.aggregatedList.parameters.returnPartialSuccess.description - resources.serviceAttachments.methods.aggregatedList.parameters.returnPartialSuccess.location - resources.serviceAttachments.methods.aggregatedList.parameters.returnPartialSuccess.type - resources.serviceAttachments.methods.aggregatedList.path - resources.serviceAttachments.methods.aggregatedList.response.$ref - resources.serviceAttachments.methods.aggregatedList.scopes - resources.serviceAttachments.methods.delete.description - resources.serviceAttachments.methods.delete.flatPath - resources.serviceAttachments.methods.delete.httpMethod - resources.serviceAttachments.methods.delete.id - resources.serviceAttachments.methods.delete.parameterOrder - resources.serviceAttachments.methods.delete.parameters.project.description - resources.serviceAttachments.methods.delete.parameters.project.location - resources.serviceAttachments.methods.delete.parameters.project.pattern - resources.serviceAttachments.methods.delete.parameters.project.required - resources.serviceAttachments.methods.delete.parameters.project.type - resources.serviceAttachments.methods.delete.parameters.region.description - resources.serviceAttachments.methods.delete.parameters.region.location - resources.serviceAttachments.methods.delete.parameters.region.pattern - resources.serviceAttachments.methods.delete.parameters.region.required - resources.serviceAttachments.methods.delete.parameters.region.type - resources.serviceAttachments.methods.delete.parameters.requestId.description - resources.serviceAttachments.methods.delete.parameters.requestId.location - resources.serviceAttachments.methods.delete.parameters.requestId.type - resources.serviceAttachments.methods.delete.parameters.serviceAttachment.description - resources.serviceAttachments.methods.delete.parameters.serviceAttachment.location - resources.serviceAttachments.methods.delete.parameters.serviceAttachment.pattern - resources.serviceAttachments.methods.delete.parameters.serviceAttachment.required - resources.serviceAttachments.methods.delete.parameters.serviceAttachment.type - resources.serviceAttachments.methods.delete.path - resources.serviceAttachments.methods.delete.response.$ref - resources.serviceAttachments.methods.delete.scopes - resources.serviceAttachments.methods.get.description - resources.serviceAttachments.methods.get.flatPath - resources.serviceAttachments.methods.get.httpMethod - resources.serviceAttachments.methods.get.id - resources.serviceAttachments.methods.get.parameterOrder - resources.serviceAttachments.methods.get.parameters.project.description - resources.serviceAttachments.methods.get.parameters.project.location - resources.serviceAttachments.methods.get.parameters.project.pattern - resources.serviceAttachments.methods.get.parameters.project.required - resources.serviceAttachments.methods.get.parameters.project.type - resources.serviceAttachments.methods.get.parameters.region.description - resources.serviceAttachments.methods.get.parameters.region.location - resources.serviceAttachments.methods.get.parameters.region.pattern - resources.serviceAttachments.methods.get.parameters.region.required - resources.serviceAttachments.methods.get.parameters.region.type - resources.serviceAttachments.methods.get.parameters.serviceAttachment.description - resources.serviceAttachments.methods.get.parameters.serviceAttachment.location - resources.serviceAttachments.methods.get.parameters.serviceAttachment.pattern - resources.serviceAttachments.methods.get.parameters.serviceAttachment.required - resources.serviceAttachments.methods.get.parameters.serviceAttachment.type - resources.serviceAttachments.methods.get.path - resources.serviceAttachments.methods.get.response.$ref - resources.serviceAttachments.methods.get.scopes - resources.serviceAttachments.methods.getIamPolicy.description - resources.serviceAttachments.methods.getIamPolicy.flatPath - resources.serviceAttachments.methods.getIamPolicy.httpMethod - resources.serviceAttachments.methods.getIamPolicy.id - resources.serviceAttachments.methods.getIamPolicy.parameterOrder - resources.serviceAttachments.methods.getIamPolicy.parameters.optionsRequestedPolicyVersion.description - resources.serviceAttachments.methods.getIamPolicy.parameters.optionsRequestedPolicyVersion.format - resources.serviceAttachments.methods.getIamPolicy.parameters.optionsRequestedPolicyVersion.location - resources.serviceAttachments.methods.getIamPolicy.parameters.optionsRequestedPolicyVersion.type - resources.serviceAttachments.methods.getIamPolicy.parameters.project.description - resources.serviceAttachments.methods.getIamPolicy.parameters.project.location - resources.serviceAttachments.methods.getIamPolicy.parameters.project.pattern - resources.serviceAttachments.methods.getIamPolicy.parameters.project.required - resources.serviceAttachments.methods.getIamPolicy.parameters.project.type - resources.serviceAttachments.methods.getIamPolicy.parameters.region.description - resources.serviceAttachments.methods.getIamPolicy.parameters.region.location - resources.serviceAttachments.methods.getIamPolicy.parameters.region.pattern - resources.serviceAttachments.methods.getIamPolicy.parameters.region.required - resources.serviceAttachments.methods.getIamPolicy.parameters.region.type - resources.serviceAttachments.methods.getIamPolicy.parameters.resource.description - resources.serviceAttachments.methods.getIamPolicy.parameters.resource.location - resources.serviceAttachments.methods.getIamPolicy.parameters.resource.pattern - resources.serviceAttachments.methods.getIamPolicy.parameters.resource.required - resources.serviceAttachments.methods.getIamPolicy.parameters.resource.type - resources.serviceAttachments.methods.getIamPolicy.path - resources.serviceAttachments.methods.getIamPolicy.response.$ref - resources.serviceAttachments.methods.getIamPolicy.scopes - resources.serviceAttachments.methods.insert.description - resources.serviceAttachments.methods.insert.flatPath - resources.serviceAttachments.methods.insert.httpMethod - resources.serviceAttachments.methods.insert.id - resources.serviceAttachments.methods.insert.parameterOrder - resources.serviceAttachments.methods.insert.parameters.project.description - resources.serviceAttachments.methods.insert.parameters.project.location - resources.serviceAttachments.methods.insert.parameters.project.pattern - resources.serviceAttachments.methods.insert.parameters.project.required - resources.serviceAttachments.methods.insert.parameters.project.type - resources.serviceAttachments.methods.insert.parameters.region.description - resources.serviceAttachments.methods.insert.parameters.region.location - resources.serviceAttachments.methods.insert.parameters.region.pattern - resources.serviceAttachments.methods.insert.parameters.region.required - resources.serviceAttachments.methods.insert.parameters.region.type - resources.serviceAttachments.methods.insert.parameters.requestId.description - resources.serviceAttachments.methods.insert.parameters.requestId.location - resources.serviceAttachments.methods.insert.parameters.requestId.type - resources.serviceAttachments.methods.insert.path - resources.serviceAttachments.methods.insert.request.$ref - resources.serviceAttachments.methods.insert.response.$ref - resources.serviceAttachments.methods.insert.scopes - resources.serviceAttachments.methods.list.description - resources.serviceAttachments.methods.list.flatPath - resources.serviceAttachments.methods.list.httpMethod - resources.serviceAttachments.methods.list.id - resources.serviceAttachments.methods.list.parameterOrder - resources.serviceAttachments.methods.list.parameters.filter.description - resources.serviceAttachments.methods.list.parameters.filter.location - resources.serviceAttachments.methods.list.parameters.filter.type - resources.serviceAttachments.methods.list.parameters.maxResults.default - resources.serviceAttachments.methods.list.parameters.maxResults.description - resources.serviceAttachments.methods.list.parameters.maxResults.format - resources.serviceAttachments.methods.list.parameters.maxResults.location - resources.serviceAttachments.methods.list.parameters.maxResults.minimum - resources.serviceAttachments.methods.list.parameters.maxResults.type - resources.serviceAttachments.methods.list.parameters.orderBy.description - resources.serviceAttachments.methods.list.parameters.orderBy.location - resources.serviceAttachments.methods.list.parameters.orderBy.type - resources.serviceAttachments.methods.list.parameters.pageToken.description - resources.serviceAttachments.methods.list.parameters.pageToken.location - resources.serviceAttachments.methods.list.parameters.pageToken.type - resources.serviceAttachments.methods.list.parameters.project.description - resources.serviceAttachments.methods.list.parameters.project.location - resources.serviceAttachments.methods.list.parameters.project.pattern - resources.serviceAttachments.methods.list.parameters.project.required - resources.serviceAttachments.methods.list.parameters.project.type - resources.serviceAttachments.methods.list.parameters.region.description - resources.serviceAttachments.methods.list.parameters.region.location - resources.serviceAttachments.methods.list.parameters.region.pattern - resources.serviceAttachments.methods.list.parameters.region.required - resources.serviceAttachments.methods.list.parameters.region.type - resources.serviceAttachments.methods.list.parameters.returnPartialSuccess.description - resources.serviceAttachments.methods.list.parameters.returnPartialSuccess.location - resources.serviceAttachments.methods.list.parameters.returnPartialSuccess.type - resources.serviceAttachments.methods.list.path - resources.serviceAttachments.methods.list.response.$ref - resources.serviceAttachments.methods.list.scopes - resources.serviceAttachments.methods.patch.description - resources.serviceAttachments.methods.patch.flatPath - resources.serviceAttachments.methods.patch.httpMethod - resources.serviceAttachments.methods.patch.id - resources.serviceAttachments.methods.patch.parameterOrder - resources.serviceAttachments.methods.patch.parameters.project.description - resources.serviceAttachments.methods.patch.parameters.project.location - resources.serviceAttachments.methods.patch.parameters.project.pattern - resources.serviceAttachments.methods.patch.parameters.project.required - resources.serviceAttachments.methods.patch.parameters.project.type - resources.serviceAttachments.methods.patch.parameters.region.description - resources.serviceAttachments.methods.patch.parameters.region.location - resources.serviceAttachments.methods.patch.parameters.region.required - resources.serviceAttachments.methods.patch.parameters.region.type - resources.serviceAttachments.methods.patch.parameters.requestId.description - resources.serviceAttachments.methods.patch.parameters.requestId.location - resources.serviceAttachments.methods.patch.parameters.requestId.type - resources.serviceAttachments.methods.patch.parameters.serviceAttachment.description - resources.serviceAttachments.methods.patch.parameters.serviceAttachment.location - resources.serviceAttachments.methods.patch.parameters.serviceAttachment.required - resources.serviceAttachments.methods.patch.parameters.serviceAttachment.type - resources.serviceAttachments.methods.patch.path - resources.serviceAttachments.methods.patch.request.$ref - resources.serviceAttachments.methods.patch.response.$ref - resources.serviceAttachments.methods.patch.scopes - resources.serviceAttachments.methods.setIamPolicy.description - resources.serviceAttachments.methods.setIamPolicy.flatPath - resources.serviceAttachments.methods.setIamPolicy.httpMethod - resources.serviceAttachments.methods.setIamPolicy.id - resources.serviceAttachments.methods.setIamPolicy.parameterOrder - resources.serviceAttachments.methods.setIamPolicy.parameters.project.description - resources.serviceAttachments.methods.setIamPolicy.parameters.project.location - resources.serviceAttachments.methods.setIamPolicy.parameters.project.pattern - resources.serviceAttachments.methods.setIamPolicy.parameters.project.required - resources.serviceAttachments.methods.setIamPolicy.parameters.project.type - resources.serviceAttachments.methods.setIamPolicy.parameters.region.description - resources.serviceAttachments.methods.setIamPolicy.parameters.region.location - resources.serviceAttachments.methods.setIamPolicy.parameters.region.pattern - resources.serviceAttachments.methods.setIamPolicy.parameters.region.required - resources.serviceAttachments.methods.setIamPolicy.parameters.region.type - resources.serviceAttachments.methods.setIamPolicy.parameters.resource.description - resources.serviceAttachments.methods.setIamPolicy.parameters.resource.location - resources.serviceAttachments.methods.setIamPolicy.parameters.resource.pattern - resources.serviceAttachments.methods.setIamPolicy.parameters.resource.required - resources.serviceAttachments.methods.setIamPolicy.parameters.resource.type - resources.serviceAttachments.methods.setIamPolicy.path - resources.serviceAttachments.methods.setIamPolicy.request.$ref - resources.serviceAttachments.methods.setIamPolicy.response.$ref - resources.serviceAttachments.methods.setIamPolicy.scopes - resources.serviceAttachments.methods.testIamPermissions.description - resources.serviceAttachments.methods.testIamPermissions.flatPath - resources.serviceAttachments.methods.testIamPermissions.httpMethod - resources.serviceAttachments.methods.testIamPermissions.id - resources.serviceAttachments.methods.testIamPermissions.parameterOrder - resources.serviceAttachments.methods.testIamPermissions.parameters.project.description - resources.serviceAttachments.methods.testIamPermissions.parameters.project.location - resources.serviceAttachments.methods.testIamPermissions.parameters.project.pattern - resources.serviceAttachments.methods.testIamPermissions.parameters.project.required - resources.serviceAttachments.methods.testIamPermissions.parameters.project.type - resources.serviceAttachments.methods.testIamPermissions.parameters.region.description - resources.serviceAttachments.methods.testIamPermissions.parameters.region.location - resources.serviceAttachments.methods.testIamPermissions.parameters.region.pattern - resources.serviceAttachments.methods.testIamPermissions.parameters.region.required - resources.serviceAttachments.methods.testIamPermissions.parameters.region.type - resources.serviceAttachments.methods.testIamPermissions.parameters.resource.description - resources.serviceAttachments.methods.testIamPermissions.parameters.resource.location - resources.serviceAttachments.methods.testIamPermissions.parameters.resource.pattern - resources.serviceAttachments.methods.testIamPermissions.parameters.resource.required - resources.serviceAttachments.methods.testIamPermissions.parameters.resource.type - resources.serviceAttachments.methods.testIamPermissions.path - resources.serviceAttachments.methods.testIamPermissions.request.$ref - resources.serviceAttachments.methods.testIamPermissions.response.$ref - resources.serviceAttachments.methods.testIamPermissions.scopes - schemas.SecurityPolicy.properties.adaptiveProtectionConfig.$ref - schemas.SecurityPolicyAdaptiveProtectionConfig.description - schemas.SecurityPolicyAdaptiveProtectionConfig.id - schemas.SecurityPolicyAdaptiveProtectionConfig.properties.layer7DdosDefenseConfig.$ref - schemas.SecurityPolicyAdaptiveProtectionConfig.properties.layer7DdosDefenseConfig.description - schemas.SecurityPolicyAdaptiveProtectionConfig.type - schemas.SecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfig.description - schemas.SecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfig.id - schemas.SecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfig.properties.enable.description - schemas.SecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfig.properties.enable.type - schemas.SecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfig.properties.ruleVisibility.description - schemas.SecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfig.properties.ruleVisibility.enum - schemas.SecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfig.properties.ruleVisibility.enumDescriptions - schemas.SecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfig.properties.ruleVisibility.type - schemas.SecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfig.type - schemas.ServiceAttachment.description - schemas.ServiceAttachment.id - schemas.ServiceAttachment.properties.connectedEndpoints.description - schemas.ServiceAttachment.properties.connectedEndpoints.items.$ref - schemas.ServiceAttachment.properties.connectedEndpoints.type - schemas.ServiceAttachment.properties.connectionPreference.description - schemas.ServiceAttachment.properties.connectionPreference.enum - schemas.ServiceAttachment.properties.connectionPreference.enumDescriptions - schemas.ServiceAttachment.properties.connectionPreference.type - schemas.ServiceAttachment.properties.consumerAcceptLists.description - schemas.ServiceAttachment.properties.consumerAcceptLists.items.$ref - schemas.ServiceAttachment.properties.consumerAcceptLists.type - schemas.ServiceAttachment.properties.consumerRejectLists.description - schemas.ServiceAttachment.properties.consumerRejectLists.items.type - schemas.ServiceAttachment.properties.consumerRejectLists.type - schemas.ServiceAttachment.properties.creationTimestamp.description - schemas.ServiceAttachment.properties.creationTimestamp.type - schemas.ServiceAttachment.properties.description.description - schemas.ServiceAttachment.properties.description.type - schemas.ServiceAttachment.properties.enableProxyProtocol.description - schemas.ServiceAttachment.properties.enableProxyProtocol.type - schemas.ServiceAttachment.properties.fingerprint.description - schemas.ServiceAttachment.properties.fingerprint.format - schemas.ServiceAttachment.properties.fingerprint.type - schemas.ServiceAttachment.properties.id.description - schemas.ServiceAttachment.properties.id.format - schemas.ServiceAttachment.properties.id.type - schemas.ServiceAttachment.properties.kind.default - schemas.ServiceAttachment.properties.kind.description - schemas.ServiceAttachment.properties.kind.type - schemas.ServiceAttachment.properties.name.annotations.required - schemas.ServiceAttachment.properties.name.description - schemas.ServiceAttachment.properties.name.pattern - schemas.ServiceAttachment.properties.name.type - schemas.ServiceAttachment.properties.natSubnets.description - schemas.ServiceAttachment.properties.natSubnets.items.type - schemas.ServiceAttachment.properties.natSubnets.type - schemas.ServiceAttachment.properties.producerForwardingRule.description - schemas.ServiceAttachment.properties.producerForwardingRule.type - schemas.ServiceAttachment.properties.pscServiceAttachmentId.$ref - schemas.ServiceAttachment.properties.pscServiceAttachmentId.description - schemas.ServiceAttachment.properties.region.description - schemas.ServiceAttachment.properties.region.type - schemas.ServiceAttachment.properties.selfLink.description - schemas.ServiceAttachment.properties.selfLink.type - schemas.ServiceAttachment.properties.targetService.description - schemas.ServiceAttachment.properties.targetService.type - schemas.ServiceAttachment.type - schemas.ServiceAttachmentAggregatedList.description - schemas.ServiceAttachmentAggregatedList.id - schemas.ServiceAttachmentAggregatedList.properties.id.description - schemas.ServiceAttachmentAggregatedList.properties.id.type - schemas.ServiceAttachmentAggregatedList.properties.items.additionalProperties.$ref - schemas.ServiceAttachmentAggregatedList.properties.items.additionalProperties.description - schemas.ServiceAttachmentAggregatedList.properties.items.description - schemas.ServiceAttachmentAggregatedList.properties.items.type - schemas.ServiceAttachmentAggregatedList.properties.kind.default - schemas.ServiceAttachmentAggregatedList.properties.kind.description - schemas.ServiceAttachmentAggregatedList.properties.kind.type - schemas.ServiceAttachmentAggregatedList.properties.nextPageToken.description - schemas.ServiceAttachmentAggregatedList.properties.nextPageToken.type - schemas.ServiceAttachmentAggregatedList.properties.selfLink.description - schemas.ServiceAttachmentAggregatedList.properties.selfLink.type - schemas.ServiceAttachmentAggregatedList.properties.unreachables.description - schemas.ServiceAttachmentAggregatedList.properties.unreachables.items.type - schemas.ServiceAttachmentAggregatedList.properties.unreachables.type - schemas.ServiceAttachmentAggregatedList.properties.warning.description - schemas.ServiceAttachmentAggregatedList.properties.warning.properties.code.description - schemas.ServiceAttachmentAggregatedList.properties.warning.properties.code.enum - schemas.ServiceAttachmentAggregatedList.properties.warning.properties.code.enumDescriptions - schemas.ServiceAttachmentAggregatedList.properties.warning.properties.code.type - schemas.ServiceAttachmentAggregatedList.properties.warning.properties.data.description - schemas.ServiceAttachmentAggregatedList.properties.warning.properties.data.items.properties.key.description - schemas.ServiceAttachmentAggregatedList.properties.warning.properties.data.items.properties.key.type - schemas.ServiceAttachmentAggregatedList.properties.warning.properties.data.items.properties.value.description - schemas.ServiceAttachmentAggregatedList.properties.warning.properties.data.items.properties.value.type - schemas.ServiceAttachmentAggregatedList.properties.warning.properties.data.items.type - schemas.ServiceAttachmentAggregatedList.properties.warning.properties.data.type - schemas.ServiceAttachmentAggregatedList.properties.warning.properties.message.description - schemas.ServiceAttachmentAggregatedList.properties.warning.properties.message.type - schemas.ServiceAttachmentAggregatedList.properties.warning.type - schemas.ServiceAttachmentAggregatedList.type - schemas.ServiceAttachmentConnectedEndpoint.description - schemas.ServiceAttachmentConnectedEndpoint.id - schemas.ServiceAttachmentConnectedEndpoint.properties.endpoint.description - schemas.ServiceAttachmentConnectedEndpoint.properties.endpoint.type - schemas.ServiceAttachmentConnectedEndpoint.properties.pscConnectionId.description - schemas.ServiceAttachmentConnectedEndpoint.properties.pscConnectionId.format - schemas.ServiceAttachmentConnectedEndpoint.properties.pscConnectionId.type - schemas.ServiceAttachmentConnectedEndpoint.properties.status.description - schemas.ServiceAttachmentConnectedEndpoint.properties.status.enum - schemas.ServiceAttachmentConnectedEndpoint.properties.status.enumDescriptions - schemas.ServiceAttachmentConnectedEndpoint.properties.status.type - schemas.ServiceAttachmentConnectedEndpoint.type - schemas.ServiceAttachmentConsumerProjectLimit.id - schemas.ServiceAttachmentConsumerProjectLimit.properties.connectionLimit.description - schemas.ServiceAttachmentConsumerProjectLimit.properties.connectionLimit.format - schemas.ServiceAttachmentConsumerProjectLimit.properties.connectionLimit.type - schemas.ServiceAttachmentConsumerProjectLimit.properties.projectIdOrNum.description - schemas.ServiceAttachmentConsumerProjectLimit.properties.projectIdOrNum.type - schemas.ServiceAttachmentConsumerProjectLimit.type - schemas.ServiceAttachmentList.id - schemas.ServiceAttachmentList.properties.id.description - schemas.ServiceAttachmentList.properties.id.type - schemas.ServiceAttachmentList.properties.items.description - schemas.ServiceAttachmentList.properties.items.items.$ref - schemas.ServiceAttachmentList.properties.items.type - schemas.ServiceAttachmentList.properties.kind.default - schemas.ServiceAttachmentList.properties.kind.description - schemas.ServiceAttachmentList.properties.kind.type - schemas.ServiceAttachmentList.properties.nextPageToken.description - schemas.ServiceAttachmentList.properties.nextPageToken.type - schemas.ServiceAttachmentList.properties.selfLink.description - schemas.ServiceAttachmentList.properties.selfLink.type - schemas.ServiceAttachmentList.properties.warning.description - schemas.ServiceAttachmentList.properties.warning.properties.code.description - schemas.ServiceAttachmentList.properties.warning.properties.code.enum - schemas.ServiceAttachmentList.properties.warning.properties.code.enumDescriptions - schemas.ServiceAttachmentList.properties.warning.properties.code.type - schemas.ServiceAttachmentList.properties.warning.properties.data.description - schemas.ServiceAttachmentList.properties.warning.properties.data.items.properties.key.description - schemas.ServiceAttachmentList.properties.warning.properties.data.items.properties.key.type - schemas.ServiceAttachmentList.properties.warning.properties.data.items.properties.value.description - schemas.ServiceAttachmentList.properties.warning.properties.data.items.properties.value.type - schemas.ServiceAttachmentList.properties.warning.properties.data.items.type - schemas.ServiceAttachmentList.properties.warning.properties.data.type - schemas.ServiceAttachmentList.properties.warning.properties.message.description - schemas.ServiceAttachmentList.properties.warning.properties.message.type - schemas.ServiceAttachmentList.properties.warning.type - schemas.ServiceAttachmentList.type - schemas.ServiceAttachmentsScopedList.id - schemas.ServiceAttachmentsScopedList.properties.serviceAttachments.description - schemas.ServiceAttachmentsScopedList.properties.serviceAttachments.items.$ref - schemas.ServiceAttachmentsScopedList.properties.serviceAttachments.type - schemas.ServiceAttachmentsScopedList.properties.warning.description - schemas.ServiceAttachmentsScopedList.properties.warning.properties.code.description - schemas.ServiceAttachmentsScopedList.properties.warning.properties.code.enum - schemas.ServiceAttachmentsScopedList.properties.warning.properties.code.enumDescriptions - schemas.ServiceAttachmentsScopedList.properties.warning.properties.code.type - schemas.ServiceAttachmentsScopedList.properties.warning.properties.data.description - schemas.ServiceAttachmentsScopedList.properties.warning.properties.data.items.properties.key.description - schemas.ServiceAttachmentsScopedList.properties.warning.properties.data.items.properties.key.type - schemas.ServiceAttachmentsScopedList.properties.warning.properties.data.items.properties.value.description - schemas.ServiceAttachmentsScopedList.properties.warning.properties.data.items.properties.value.type - schemas.ServiceAttachmentsScopedList.properties.warning.properties.data.items.type - schemas.ServiceAttachmentsScopedList.properties.warning.properties.data.type - schemas.ServiceAttachmentsScopedList.properties.warning.properties.message.description - schemas.ServiceAttachmentsScopedList.properties.warning.properties.message.type - schemas.ServiceAttachmentsScopedList.properties.warning.type - schemas.ServiceAttachmentsScopedList.type - schemas.Uint128.id - schemas.Uint128.properties.high.format - schemas.Uint128.properties.high.type - schemas.Uint128.properties.low.format - schemas.Uint128.properties.low.type - schemas.Uint128.type The following keys were changed: - resources.regionCommitments.methods.aggregatedList.description - schemas.Address.description - schemas.AttachedDiskInitializeParams.properties.diskType.description - schemas.AttachedDiskInitializeParams.properties.provisionedIops.description - schemas.Backend.properties.capacityScaler.description - schemas.Backend.properties.group.description - schemas.Backend.properties.maxConnections.description - schemas.Backend.properties.maxConnectionsPerEndpoint.description - schemas.Backend.properties.maxConnectionsPerInstance.description - schemas.BackendService.description - schemas.BackendService.properties.affinityCookieTtlSec.description - schemas.BackendService.properties.cdnPolicy.description - schemas.BackendService.properties.customRequestHeaders.description - schemas.BackendService.properties.customResponseHeaders.description - schemas.BackendService.properties.enableCDN.description - schemas.BackendService.properties.failoverPolicy.description - schemas.BackendService.properties.loadBalancingScheme.description - schemas.BackendService.properties.loadBalancingScheme.enumDescriptions - schemas.BackendService.properties.port.description - schemas.BackendService.properties.portName.description - schemas.BackendService.properties.protocol.description - schemas.BackendService.properties.protocol.enumDescriptions - schemas.BackendService.properties.sessionAffinity.description - schemas.BackendServiceFailoverPolicy.description - schemas.BackendServiceFailoverPolicy.properties.dropTrafficIfUnhealthy.description - schemas.BackendServiceFailoverPolicy.properties.failoverRatio.description - schemas.BulkInsertInstanceResource.description - schemas.BulkInsertInstanceResource.properties.namePattern.description - schemas.CircuitBreakers.description - schemas.Disk.properties.provisionedIops.description - schemas.Disk.properties.type.description - schemas.DisksAddResourcePoliciesRequest.properties.resourcePolicies.description - schemas.ExternalVpnGateway.properties.interfaces.description - schemas.GuestAttributes.properties.queryPath.description - schemas.HealthCheckService.properties.healthStatusAggregationPolicy.description - schemas.HttpRetryPolicy.properties.retryConditions.description - schemas.InstanceGroupManager.description - schemas.Subnetwork.properties.purpose.enum - schemas.Subnetwork.properties.purpose.enumDescriptions * feat(container): update the API #### container:v1beta1 The following keys were added: - schemas.ClusterUpdate.properties.desiredAuthenticatorGroupsConfig.$ref - schemas.ClusterUpdate.properties.desiredAuthenticatorGroupsConfig.description #### container:v1 The following keys were added: - schemas.ClusterUpdate.properties.desiredAuthenticatorGroupsConfig.$ref - schemas.ClusterUpdate.properties.desiredAuthenticatorGroupsConfig.description * fix(content): update the API #### content:v2.1 The following keys were changed: - schemas.AccountsCustomBatchRequestEntryLinkRequest.properties.linkType.description - schemas.AccountsCustomBatchRequestEntryLinkRequest.properties.services.description * fix(dataproc): update the API #### dataproc:v1beta2 The following keys were changed: - resources.projects.resources.regions.resources.clusters.methods.patch.description - schemas.BasicAutoscalingAlgorithm.properties.yarnConfig.description #### dataproc:v1 The following keys were changed: - resources.projects.resources.regions.resources.clusters.methods.patch.description - schemas.BasicAutoscalingAlgorithm.properties.yarnConfig.description * fix(dialogflow): update the API #### dialogflow:v2beta1 The following keys were changed: - schemas.GoogleCloudDialogflowV2beta1Environment.properties.agentVersion.description #### dialogflow:v2 The following keys were changed: - schemas.GoogleCloudDialogflowV2Environment.properties.agentVersion.description * fix(firebaseappcheck): update the API #### firebaseappcheck:v1beta The following keys were changed: - schemas.GoogleFirebaseAppcheckV1betaDeviceCheckConfig.description - schemas.GoogleFirebaseAppcheckV1betaExchangeAppAttestAttestationResponse.description - schemas.GoogleFirebaseAppcheckV1betaRecaptchaConfig.description * fix(gkehub): update the API #### gkehub:v1alpha The following keys were changed: - schemas.ConfigManagementSyncState.properties.lastSync.description #### gkehub:v1beta The following keys were changed: - schemas.ConfigManagementSyncState.properties.lastSync.description #### gkehub:v1 The following keys were changed: - schemas.ConfigManagementSyncState.properties.lastSync.description * feat(groupssettings): update the API #### groupssettings:v1 The following keys were added: - schemas.Groups.properties.default_sender.description - schemas.Groups.properties.default_sender.type * feat(healthcare): update the API #### healthcare:v1beta1 The following keys were added: - resources.projects.resources.locations.resources.datasets.resources.fhirStores.methods.configureSearch.description - resources.projects.resources.locations.resources.datasets.resources.fhirStores.methods.configureSearch.flatPath - resources.projects.resources.locations.resources.datasets.resources.fhirStores.methods.configureSearch.httpMethod - resources.projects.resources.locations.resources.datasets.resources.fhirStores.methods.configureSearch.id - resources.projects.resources.locations.resources.datasets.resources.fhirStores.methods.configureSearch.parameterOrder - resources.projects.resources.locations.resources.datasets.resources.fhirStores.methods.configureSearch.parameters.name.description - resources.projects.resources.locations.resources.datasets.resources.fhirStores.methods.configureSearch.parameters.name.location - resources.projects.resources.locations.resources.datasets.resources.fhirStores.methods.configureSearch.parameters.name.pattern - resources.projects.resources.locations.resources.datasets.resources.fhirStores.methods.configureSearch.parameters.name.required - resources.projects.resources.locations.resources.datasets.resources.fhirStores.methods.configureSearch.parameters.name.type - resources.projects.resources.locations.resources.datasets.resources.fhirStores.methods.configureSearch.path - resources.projects.resources.locations.resources.datasets.resources.fhirStores.methods.configureSearch.request.$ref - resources.projects.resources.locations.resources.datasets.resources.fhirStores.methods.configureSearch.response.$ref - resources.projects.resources.locations.resources.datasets.resources.fhirStores.methods.configureSearch.scopes - schemas.ConfigureSearchRequest.description - schemas.ConfigureSearchRequest.id - schemas.ConfigureSearchRequest.properties.canonicalUrls.description - schemas.ConfigureSearchRequest.properties.canonicalUrls.items.type - schemas.ConfigureSearchRequest.properties.canonicalUrls.type - schemas.ConfigureSearchRequest.properties.validateOnly.description - schemas.ConfigureSearchRequest.properties.validateOnly.type - schemas.ConfigureSearchRequest.type - schemas.FhirStore.properties.searchConfig.$ref - schemas.FhirStore.properties.searchConfig.description - schemas.SearchConfig.description - schemas.SearchConfig.id - schemas.SearchConfig.properties.searchParameters.description - schemas.SearchConfig.properties.searchParameters.items.$ref - schemas.SearchConfig.properties.searchParameters.type - schemas.SearchConfig.type - schemas.SearchParameter.description - schemas.SearchParameter.id - schemas.SearchParameter.properties.canonicalUrl.description - schemas.SearchParameter.properties.canonicalUrl.type - schemas.SearchParameter.properties.parameter.description - schemas.SearchParameter.properties.parameter.type - schemas.SearchParameter.type The following keys were changed: - schemas.ExportResourcesRequest.properties.bigqueryDestination.description #### healthcare:v1 The following keys were changed: - schemas.ExportResourcesRequest.properties.bigqueryDestination.description * feat(managedidentities): update the API #### managedidentities:v1alpha1 The following keys were added: - resources.projects.resources.locations.resources.global.resources.domains.resources.backups.methods.getIamPolicy.description - resources.projects.resources.locations.resources.global.resources.domains.resources.backups.methods.getIamPolicy.flatPath - resources.projects.resources.locations.resources.global.resources.domains.resources.backups.methods.getIamPolicy.httpMethod - resources.projects.resources.locations.resources.global.resources.domains.resources.backups.methods.getIamPolicy.id - resources.projects.resources.locations.resources.global.resources.domains.resources.backups.methods.getIamPolicy.parameterOrder - resources.projects.resources.locations.resources.global.resources.domains.resources.backups.methods.getIamPolicy.parameters.options.requestedPolicyVersion.description - resources.projects.resources.locations.resources.global.resources.domains.resources.backups.methods.getIamPolicy.parameters.options.requestedPolicyVersion.format - resources.projects.resources.locations.resources.global.resources.domains.resources.backups.methods.getIamPolicy.parameters.options.requestedPolicyVersion.location - resources.projects.resources.locations.resources.global.resources.domains.resources.backups.methods.getIamPolicy.parameters.options.requestedPolicyVersion.type - resources.projects.resources.locations.resources.global.resources.domains.resources.backups.methods.getIamPolicy.parameters.resource.description - resources.projects.resources.locations.resources.global.resources.domains.resources.backups.methods.getIamPolicy.parameters.resource.location - resources.projects.resources.locations.resources.global.resources.domains.resources.backups.methods.getIamPolicy.parameters.resource.pattern - resources.projects.resources.locations.resources.global.resources.domains.resources.backups.methods.getIamPolicy.parameters.resource.required - resources.projects.resources.locations.resources.global.resources.domains.resources.backups.methods.getIamPolicy.parameters.resource.type - resources.projects.resources.locations.resources.global.resources.domains.resources.backups.methods.getIamPolicy.path - resources.projects.resources.locations.resources.global.resources.domains.resources.backups.methods.getIamPolicy.response.$ref - resources.projects.resources.locations.resources.global.resources.domains.resources.backups.methods.getIamPolicy.scopes - resources.projects.resources.locations.resources.global.resources.domains.resources.backups.methods.setIamPolicy.description - resources.projects.resources.locations.resources.global.resources.domains.resources.backups.methods.setIamPolicy.flatPath - resources.projects.resources.locations.resources.global.resources.domains.resources.backups.methods.setIamPolicy.httpMethod - resources.projects.resources.locations.resources.global.resources.domains.resources.backups.methods.setIamPolicy.id - resources.projects.resources.locations.resources.global.resources.domains.resources.backups.methods.setIamPolicy.parameterOrder - resources.projects.resources.locations.resources.global.resources.domains.resources.backups.methods.setIamPolicy.parameters.resource.description - resources.projects.resources.locations.resources.global.resources.domains.resources.backups.methods.setIamPolicy.parameters.resource.location - resources.projects.resources.locations.resources.global.resources.domains.resources.backups.methods.setIamPolicy.parameters.resource.pattern - resources.projects.resources.locations.resources.global.resources.domains.resources.backups.methods.setIamPolicy.parameters.resource.required - resources.projects.resources.locations.resources.global.resources.domains.resources.backups.methods.setIamPolicy.parameters.resource.type - resources.projects.resources.locations.resources.global.resources.domains.resources.backups.methods.setIamPolicy.path - resources.projects.resources.locations.resources.global.resources.domains.resources.backups.methods.setIamPolicy.request.$ref - resources.projects.resources.locations.resources.global.resources.domains.resources.backups.methods.setIamPolicy.response.$ref - resources.projects.resources.locations.resources.global.resources.domains.resources.backups.methods.setIamPolicy.scopes - resources.projects.resources.locations.resources.global.resources.domains.resources.backups.methods.testIamPermissions.description - resources.projects.resources.locations.resources.global.resources.domains.resources.backups.methods.testIamPermissions.flatPath - resources.projects.resources.locations.resources.global.resources.domains.resources.backups.methods.testIamPermissions.httpMethod - resources.projects.resources.locations.resources.global.resources.domains.resources.backups.methods.testIamPermissions.id - resources.projects.resources.locations.resources.global.resources.domains.resources.backups.methods.testIamPermissions.parameterOrder - resources.projects.resources.locations.resources.global.resources.domains.resources.backups.methods.testIamPermissions.parameters.resource.description - resources.projects.resources.locations.resources.global.resources.domains.resources.backups.methods.testIamPermissions.parameters.resource.location - resources.projects.resources.locations.resources.global.resources.domains.resources.backups.methods.testIamPermissions.parameters.resource.pattern - resources.projects.resources.locations.resources.global.resources.domains.resources.backups.methods.testIamPermissions.parameters.resource.required - resources.projects.resources.locations.resources.global.resources.domains.resources.backups.methods.testIamPermissions.parameters.resource.type - resources.projects.resources.locations.resources.global.resources.domains.resources.backups.methods.testIamPermissions.path - resources.projects.resources.locations.resources.global.resources.domains.resources.backups.methods.testIamPermissions.request.$ref - resources.projects.resources.locations.resources.global.resources.domains.resources.backups.methods.testIamPermissions.response.$ref - resources.projects.resources.locations.resources.global.resources.domains.resources.backups.methods.testIamPermissions.scopes - schemas.GoogleCloudSaasacceleratorManagementProvidersV1NodeSloMetadata.properties.perSliEligibility.$ref - schemas.GoogleCloudSaasacceleratorManagementProvidersV1NodeSloMetadata.properties.perSliEligibility.description #### managedidentities:v1 The following keys were added: - schemas.GoogleCloudSaasacceleratorManagementProvidersV1NodeSloMetadata.properties.perSliEligibility.$ref - schemas.GoogleCloudSaasacceleratorManagementProvidersV1NodeSloMetadata.properties.perSliEligibility.description * fix(networksecurity): update the API * fix(notebooks): update the API * fix(retail): update the API #### retail:v2alpha The following keys were changed: - schemas.GoogleCloudRetailV2alphaPredictRequest.properties.params.description - schemas.GoogleCloudRetailV2alphaUserInfo.properties.ipAddress.description - schemas.GoogleCloudRetailV2alphaUserInfo.properties.userAgent.description #### retail:v2beta The following keys were changed: - schemas.GoogleCloudRetailV2betaPredictRequest.properties.params.description - schemas.GoogleCloudRetailV2betaUserInfo.properties.ipAddress.description - schemas.GoogleCloudRetailV2betaUserInfo.properties.userAgent.description #### retail:v2 The following keys were changed: - schemas.GoogleCloudRetailV2PredictRequest.properties.params.description - schemas.GoogleCloudRetailV2UserInfo.properties.ipAddress.description - schemas.GoogleCloudRetailV2UserInfo.properties.userAgent.description * feat(run)!: update the API BREAKING CHANGE: This release has breaking changes. #### run:v1alpha1 The following keys were deleted: - schemas.Capabilities.description - schemas.Capabilities.id - schemas.Capabilities.properties.add.description - schemas.Capabilities.properties.add.items.type - schemas.Capabilities.properties.add.type - schemas.Capabilities.properties.drop.description - schemas.Capabilities.properties.drop.items.type - schemas.Capabilities.properties.drop.type - schemas.Capabilities.type - schemas.Container.properties.command.description - schemas.Container.properties.lifecycle.$ref - schemas.Container.properties.lifecycle.description - schemas.Container.properties.stdin.description - schemas.Container.properties.stdin.type - schemas.Container.properties.stdinOnce.description - schemas.Container.properties.stdinOnce.type - schemas.Container.properties.tty.description - schemas.Container.properties.tty.type - schemas.Container.properties.volumeDevices.description - schemas.Container.properties.volumeDevices.items.$ref - schemas.Container.properties.volumeDevices.type - schemas.ContainerPort.properties.hostIP.description - schemas.ContainerPort.properties.hostIP.type - schemas.ContainerPort.properties.hostPort.description - schemas.ContainerPort.properties.hostPort.format - schemas.ContainerPort.properties.hostPort.type - schemas.HTTPGetAction.properties.port.$ref - schemas.HTTPGetAction.properties.port.description - schemas.Handler.description - schemas.Handler.id - schemas.Handler.properties.exec.$ref - schemas.Handler.properties.exec.description - schemas.Handler.properties.httpGet.$ref - schemas.Handler.properties.httpGet.description - schemas.Handler.properties.tcpSocket.$ref - schemas.Handler.properties.tcpSocket.description - schemas.Handler.type - schemas.IntOrString.description - schemas.IntOrString.id - schemas.IntOrString.properties.intVal.description - schemas.IntOrString.properties.intVal.format - schemas.IntOrString.properties.intVal.type - schemas.IntOrString.properties.strVal.description - schemas.IntOrString.properties.strVal.type - schemas.IntOrString.properties.type.description - schemas.IntOrString.properties.type.format - schemas.IntOrString.properties.type.type - schemas.IntOrString.type - schemas.Lifecycle.description - schemas.Lifecycle.id - schemas.Lifecycle.properties.postStart.$ref - schemas.Lifecycle.properties.postStart.description - schemas.Lifecycle.properties.preStop.$ref - schemas.Lifecycle.properties.preStop.description - schemas.Lifecycle.type - schemas.Probe.properties.handler.$ref - schemas.Probe.properties.handler.description - schemas.Quantity.description - schemas.Quantity.id - schemas.Quantity.properties.string.description - schemas.Quantity.properties.string.type - schemas.Quantity.type - schemas.ResourceRequirements.properties.limitsInMap.additionalProperties.$ref - schemas.ResourceRequirements.properties.limitsInMap.description - schemas.ResourceRequirements.properties.limitsInMap.type - schemas.ResourceRequirements.properties.requestsInMap.additionalProperties.$ref - schemas.ResourceRequirements.properties.requestsInMap.description - schemas.ResourceRequirements.properties.requestsInMap.type - schemas.SELinuxOptions.description - schemas.SELinuxOptions.id - schemas.SELinuxOptions.properties.level.description - schemas.SELinuxOptions.properties.level.type - schemas.SELinuxOptions.properties.role.description - schemas.SELinuxOptions.properties.role.type - schemas.SELinuxOptions.properties.type.description - schemas.SELinuxOptions.properties.type.type - schemas.SELinuxOptions.properties.user.description - schemas.SELinuxOptions.properties.user.type - schemas.SELinuxOptions.type - schemas.SecurityContext.properties.allowPrivilegeEscalation.description - schemas.SecurityContext.properties.allowPrivilegeEscalation.type - schemas.SecurityContext.properties.capabilities.$ref - schemas.SecurityContext.properties.capabilities.description - schemas.SecurityContext.properties.privileged.description - schemas.SecurityContext.properties.privileged.type - schemas.SecurityContext.properties.readOnlyRootFilesystem.description - schemas.SecurityContext.properties.readOnlyRootFilesystem.type - schemas.SecurityContext.properties.runAsGroup.description - schemas.SecurityContext.properties.runAsGroup.format - schemas.SecurityContext.properties.runAsGroup.type - schemas.SecurityContext.properties.runAsNonRoot.description - schemas.SecurityContext.properties.runAsNonRoot.type - schemas.SecurityContext.properties.seLinuxOptions.$ref - schemas.SecurityContext.properties.seLinuxOptions.description - schemas.TCPSocketAction.properties.port.$ref - schemas.VolumeDevice.description - schemas.VolumeDevice.id - schemas.VolumeDevice.properties.devicePath.description - schemas.VolumeDevice.properties.devicePath.type - schemas.VolumeDevice.properties.name.description - schemas.VolumeDevice.properties.name.type - schemas.VolumeDevice.type - schemas.VolumeMount.properties.mountPropagation.description - schemas.VolumeMount.properties.mountPropagation.type The following keys were added: - schemas.Container.properties.startupProbe.$ref - schemas.Container.properties.startupProbe.description - schemas.Probe.properties.exec.$ref - schemas.Probe.properties.exec.description - schemas.Probe.properties.httpGet.$ref - schemas.Probe.properties.httpGet.description - schemas.Probe.properties.tcpSocket.$ref - schemas.Probe.properties.tcpSocket.description - schemas.TCPSocketAction.properties.port.format - schemas.TCPSocketAction.properties.port.type The following keys were changed: - description - schemas.ConfigMapEnvSource.description - schemas.ConfigMapEnvSource.properties.name.description - schemas.ConfigMapEnvSource.properties.optional.description - schemas.ConfigMapKeySelector.description - schemas.ConfigMapKeySelector.properties.key.description - schemas.ConfigMapKeySelector.properties.name.description - schemas.ConfigMapKeySelector.properties.optional.description - schemas.ConfigMapVolumeSource.description - schemas.ConfigMapVolumeSource.properties.defaultMode.description - schemas.ConfigMapVolumeSource.properties.items.description - schemas.ConfigMapVolumeSource.properties.optional.description - schemas.Container.properties.args.description - schemas.Container.properties.env.description - schemas.Container.properties.envFrom.description - schemas.Container.properties.image.description - schemas.Container.properties.imagePullPolicy.description - schemas.Container.properties.livenessProbe.description - schemas.Container.properties.name.description - schemas.Container.properties.ports.description - schemas.Container.properties.readinessProbe.description - schemas.Container.properties.resources.description - schemas.Container.properties.securityContext.description - schemas.Container.properties.terminationMessagePath.description - schemas.Container.properties.terminationMessagePolicy.description - schemas.Container.properties.volumeMounts.description - schemas.Container.properties.workingDir.description - schemas.ContainerPort.properties.containerPort.description - schemas.ContainerPort.properties.name.description - schemas.ContainerPort.properties.protocol.description - schemas.EnvFromSource.description - schemas.EnvFromSource.properties.configMapRef.description - schemas.EnvFromSource.properties.prefix.description - schemas.EnvFromSource.properties.secretRef.description - schemas.EnvVar.properties.value.description - schemas.EnvVar.properties.valueFrom.description - schemas.EnvVarSource.description - schemas.EnvVarSource.properties.configMapKeyRef.description - schemas.EnvVarSource.properties.secretKeyRef.description - schemas.ExecAction.description - schemas.ExecAction.properties.command.description - schemas.HTTPGetAction.description - schemas.HTTPGetAction.properties.host.description - schemas.HTTPGetAction.properties.httpHeaders.description - schemas.HTTPGetAction.properties.path.description - schemas.HTTPGetAction.properties.scheme.description - schemas.HTTPHeader.description - schemas.KeyToPath.properties.key.description - schemas.KeyToPath.properties.mode.description - schemas.KeyToPath.properties.path.description - schemas.LocalObjectReference.description - schemas.LocalObjectReference.properties.name.description - schemas.ObjectMeta.description - schemas.ObjectMeta.properties.annotations.description - schemas.ObjectMeta.properties.clusterName.description - schemas.ObjectMeta.properties.creationTimestamp.description - schemas.ObjectMeta.properties.deletionGracePeriodSeconds.description - schemas.ObjectMeta.properties.deletionTimestamp.description - schemas.ObjectMeta.properties.finalizers.description - schemas.ObjectMeta.properties.generateName.description - schemas.ObjectMeta.properties.generation.description - schemas.ObjectMeta.properties.labels.description - schemas.ObjectMeta.properties.ownerReferences.description - schemas.ObjectMeta.properties.resourceVersion.description - schemas.ObjectMeta.properties.selfLink.description - schemas.ObjectMeta.properties.uid.description - schemas.Probe.description - schemas.Probe.properties.failureThreshold.description - schemas.Probe.properties.initialDelaySeconds.description - schemas.Probe.properties.periodSeconds.description - schemas.Probe.properties.successThreshold.description - schemas.Probe.properties.timeoutSeconds.description - schemas.ResourceRequirements.properties.limits.description - schemas.ResourceRequirements.properties.requests.description - schemas.SecretEnvSource.description - schemas.SecretEnvSource.properties.name.description - schemas.SecretEnvSource.properties.optional.description - schemas.SecretKeySelector.description - schemas.SecretKeySelector.properties.key.description - schemas.SecretKeySelector.properties.name.description - schemas.SecretKeySelector.properties.optional.description - schemas.SecretVolumeSource.description - schemas.SecretVolumeSource.properties.defaultMode.description - schemas.SecretVolumeSource.properties.items.description - schemas.SecretVolumeSource.properties.optional.description - schemas.SecretVolumeSource.properties.secretName.description - schemas.SecurityContext.description - schemas.SecurityContext.properties.runAsUser.description - schemas.TCPSocketAction.description - schemas.TCPSocketAction.properties.host.description - schemas.TCPSocketAction.properties.port.description - schemas.Volume.description - schemas.VolumeMount.description - schemas.VolumeMount.properties.readOnly.description - schemas.VolumeMount.properties.subPath.description #### run:v1 The following keys were changed: - description * feat(sasportal): update the API #### sasportal:v1alpha1 The following keys were added: - schemas.SasPortalDeviceMetadata.properties.antennaModel.description - schemas.SasPortalDeviceMetadata.properties.antennaModel.type * fix(spanner): update the API #### spanner:v1 The following keys were changed: - schemas.TransactionOptions.description * fix(sqladmin): update the API * feat(transcoder): update the API #### transcoder:v1beta1 The following keys were added: - schemas.OperationMetadata.properties.apiVersion.readOnly - schemas.OperationMetadata.properties.cancelRequested.readOnly - schemas.OperationMetadata.properties.createTime.readOnly - schemas.OperationMetadata.properties.endTime.readOnly - schemas.OperationMetadata.properties.statusDetail.readOnly - schemas.OperationMetadata.properties.target.readOnly - schemas.OperationMetadata.properties.verb.readOnly The following keys were changed: - schemas.Image.properties.alpha.description - schemas.OperationMetadata.properties.apiVersion.description - schemas.OperationMetadata.properties.cancelRequested.description - schemas.OperationMetadata.properties.createTime.description - schemas.OperationMetadata.properties.endTime.description - schemas.OperationMetadata.properties.statusDetail.description - schemas.OperationMetadata.properties.target.description - schemas.OperationMetadata.properties.verb.description * fix(translate): update the API #### translate:v3beta1 The following keys were changed: - resources.projects.methods.getSupportedLanguages.parameters.model.description - resources.projects.resources.locations.methods.getSupportedLanguages.parameters.model.description - schemas.BatchTranslateDocumentRequest.properties.models.description - schemas.BatchTranslateTextRequest.properties.models.description - schemas.TranslateDocumentRequest.properties.model.description - schemas.TranslateTextRequest.properties.model.description #### translate:v3 The following keys were changed: - resources.projects.methods.getSupportedLanguages.parameters.model.description - resources.projects.resources.locations.methods.getSupportedLanguages.parameters.model.description - schemas.BatchTranslateTextRequest.properties.models.description - schemas.TranslateTextRequest.properties.model.description * feat: regenerate index files Co-authored-by: Yoshi Automation --- discovery/accessapproval-v1.json | 4 +- discovery/adsense-v2.json | 10 +- discovery/analyticsdata-v1beta.json | 30 +- discovery/androiddeviceprovisioning-v1.json | 12 +- discovery/area120tables-v1alpha1.json | 6 +- discovery/civicinfo-v2.json | 18 +- discovery/cloudasset-v1.json | 34 +- discovery/cloudidentity-v1beta1.json | 29 +- discovery/cloudkms-v1.json | 10 +- discovery/compute-alpha.json | 240 +- discovery/compute-beta.json | 137 +- discovery/compute-v1.json | 1308 ++++- discovery/container-v1.json | 6 +- discovery/container-v1beta1.json | 6 +- discovery/content-v2.1.json | 6 +- discovery/dataproc-v1.json | 6 +- discovery/dataproc-v1beta2.json | 6 +- discovery/dialogflow-v2.json | 4 +- discovery/dialogflow-v2beta1.json | 4 +- discovery/firebaseappcheck-v1beta.json | 8 +- discovery/gkehub-v1.json | 4 +- discovery/gkehub-v1alpha.json | 4 +- discovery/gkehub-v1beta.json | 4 +- discovery/groupssettings-v1.json | 6 +- discovery/healthcare-v1.json | 4 +- discovery/healthcare-v1beta1.json | 83 +- discovery/index.json | 36 +- discovery/managedidentities-v1.json | 6 +- discovery/managedidentities-v1alpha1.json | 97 +- discovery/networksecurity-v1beta1.json | 1764 ++++++ discovery/retail-v2.json | 8 +- discovery/retail-v2alpha.json | 8 +- discovery/retail-v2beta.json | 8 +- discovery/run-v1.json | 4 +- discovery/run-v1alpha1.json | 420 +- discovery/sasportal-v1alpha1.json | 9 +- discovery/spanner-v1.json | 4 +- discovery/sqladmin-v1.json | 105 + discovery/transcoder-v1beta1.json | 25 +- discovery/translate-v3.json | 10 +- discovery/translate-v3beta1.json | 14 +- src/apis/accessapproval/v1.ts | 2 +- src/apis/analyticsdata/v1beta.ts | 22 + src/apis/androiddeviceprovisioning/v1.ts | 12 +- src/apis/cloudasset/v1.ts | 23 + src/apis/cloudidentity/v1beta1.ts | 24 + src/apis/compute/alpha.ts | 342 +- src/apis/compute/beta.ts | 120 +- src/apis/compute/v1.ts | 1946 ++++++- src/apis/container/v1.ts | 4 + src/apis/container/v1beta1.ts | 4 + src/apis/content/v2.1.ts | 4 +- src/apis/dataproc/v1.ts | 4 +- src/apis/dataproc/v1beta2.ts | 4 +- src/apis/dialogflow/v2.ts | 2 +- src/apis/dialogflow/v2beta1.ts | 2 +- src/apis/firebaseappcheck/v1beta.ts | 6 +- src/apis/gkehub/v1.ts | 2 +- src/apis/gkehub/v1alpha.ts | 2 +- src/apis/gkehub/v1beta.ts | 2 +- src/apis/groupssettings/v1.ts | 9 + src/apis/healthcare/v1.ts | 2 +- src/apis/healthcare/v1beta1.ts | 202 +- src/apis/index.ts | 6 + src/apis/managedidentities/v1.ts | 4 + src/apis/managedidentities/v1alpha1.ts | 485 ++ src/apis/networksecurity/README.md | 28 + src/apis/networksecurity/index.ts | 48 + src/apis/networksecurity/package.json | 43 + src/apis/networksecurity/tsconfig.json | 10 + src/apis/networksecurity/v1beta1.ts | 5352 +++++++++++++++++++ src/apis/networksecurity/webpack.config.js | 79 + src/apis/notebooks/README.md | 2 +- src/apis/retail/v2.ts | 6 +- src/apis/retail/v2alpha.ts | 6 +- src/apis/retail/v2beta.ts | 6 +- src/apis/run/v1.ts | 2 +- src/apis/run/v1alpha1.ts | 380 +- src/apis/sasportal/v1alpha1.ts | 7 +- src/apis/spanner/v1.ts | 2 +- src/apis/sqladmin/index.ts | 13 +- src/apis/sqladmin/v1.ts | 124 + src/apis/transcoder/v1beta1.ts | 16 +- src/apis/translate/v3.ts | 12 +- src/apis/translate/v3beta1.ts | 16 +- src/index.ts | 2 + 86 files changed, 12509 insertions(+), 1387 deletions(-) create mode 100644 discovery/networksecurity-v1beta1.json create mode 100644 discovery/sqladmin-v1.json create mode 100644 src/apis/networksecurity/README.md create mode 100644 src/apis/networksecurity/index.ts create mode 100644 src/apis/networksecurity/package.json create mode 100644 src/apis/networksecurity/tsconfig.json create mode 100644 src/apis/networksecurity/v1beta1.ts create mode 100644 src/apis/networksecurity/webpack.config.js create mode 100644 src/apis/sqladmin/v1.ts diff --git a/discovery/accessapproval-v1.json b/discovery/accessapproval-v1.json index ac6cbb570fd..f9efe373db6 100644 --- a/discovery/accessapproval-v1.json +++ b/discovery/accessapproval-v1.json @@ -754,7 +754,7 @@ } } }, - "revision": "20210513", + "revision": "20210625", "rootUrl": "https://accessapproval.googleapis.com/", "schemas": { "AccessApprovalSettings": { @@ -935,7 +935,7 @@ "id": "EnrolledService", "properties": { "cloudProduct": { - "description": "The product for which Access Approval will be enrolled. Allowed values are listed below (case-sensitive): * all * App Engine * BigQuery * Cloud Bigtable * Cloud Key Management Service * Compute Engine * Cloud Dataflow * Cloud Identity and Access Management * Cloud Logging * Cloud Pub/Sub * Cloud Spanner * Cloud SQL * Cloud Storage * Google Kubernetes Engine * Persistent Disk Note: These values are supported as input for legacy purposes, but will not be returned from the API. * all * appengine.googleapis.com * bigquery.googleapis.com * bigtable.googleapis.com * container.googleapis.com * cloudkms.googleapis.com * cloudsql.googleapis.com * compute.googleapis.com * dataflow.googleapis.com * iam.googleapis.com * logging.googleapis.com * pubsub.googleapis.com * spanner.googleapis.com * storage.googleapis.com Calls to UpdateAccessApprovalSettings using 'all' or any of the XXX.googleapis.com will be translated to the associated product name ('all', 'App Engine', etc.). Note: 'all' will enroll the resource in all products supported at both 'GA' and 'Preview' levels. More information about levels of support is available at https://cloud.google.com/access-approval/docs/supported-services", + "description": "The product for which Access Approval will be enrolled. Allowed values are listed below (case-sensitive): * all * GA * App Engine * BigQuery * Cloud Bigtable * Cloud Key Management Service * Compute Engine * Cloud Dataflow * Cloud DLP * Cloud EKM * Cloud HSM * Cloud Identity and Access Management * Cloud Logging * Cloud Pub/Sub * Cloud Spanner * Cloud SQL * Cloud Storage * Google Kubernetes Engine * Persistent Disk Note: These values are supported as input for legacy purposes, but will not be returned from the API. * all * ga-only * appengine.googleapis.com * bigquery.googleapis.com * bigtable.googleapis.com * container.googleapis.com * cloudkms.googleapis.com * cloudsql.googleapis.com * compute.googleapis.com * dataflow.googleapis.com * dlp.googleapis.com * iam.googleapis.com * logging.googleapis.com * pubsub.googleapis.com * spanner.googleapis.com * storage.googleapis.com Calls to UpdateAccessApprovalSettings using 'all' or any of the XXX.googleapis.com will be translated to the associated product name ('all', 'App Engine', etc.). Note: 'all' will enroll the resource in all products supported at both 'GA' and 'Preview' levels. More information about levels of support is available at https://cloud.google.com/access-approval/docs/supported-services", "type": "string" }, "enrollmentLevel": { diff --git a/discovery/adsense-v2.json b/discovery/adsense-v2.json index b3f4e4275ad..81f946b2644 100644 --- a/discovery/adsense-v2.json +++ b/discovery/adsense-v2.json @@ -701,6 +701,8 @@ "REQUESTED_AD_TYPE_CODE", "SERVED_AD_TYPE_NAME", "SERVED_AD_TYPE_CODE", + "AD_FORMAT_NAME", + "AD_FORMAT_CODE", "CUSTOM_SEARCH_STYLE_NAME", "CUSTOM_SEARCH_STYLE_ID", "DOMAIN_REGISTRANT", @@ -747,6 +749,8 @@ "Requested ad type code (e.g. \"IMAGE\", \"RADLINK\", \"OTHER\").", "Localized served ad type name (e.g. \"Display\", \"Link unit\", \"Other\").", "Served ad type code (e.g. \"IMAGE\", \"RADLINK\", \"OTHER\").", + "Localized ad format name indicating the way an ad is shown to the users on your site (e.g. \"In-page\", \"Anchor\", \"Vignette\").", + "Ad format code indicating the way an ad is shown to the users on your site (e.g. \"ON_PAGE\", \"ANCHOR\", \"INTERSTITIAL\").", "Custom search style name.", "Custom search style id.", "Domain registrants.", @@ -1005,6 +1009,8 @@ "REQUESTED_AD_TYPE_CODE", "SERVED_AD_TYPE_NAME", "SERVED_AD_TYPE_CODE", + "AD_FORMAT_NAME", + "AD_FORMAT_CODE", "CUSTOM_SEARCH_STYLE_NAME", "CUSTOM_SEARCH_STYLE_ID", "DOMAIN_REGISTRANT", @@ -1051,6 +1057,8 @@ "Requested ad type code (e.g. \"IMAGE\", \"RADLINK\", \"OTHER\").", "Localized served ad type name (e.g. \"Display\", \"Link unit\", \"Other\").", "Served ad type code (e.g. \"IMAGE\", \"RADLINK\", \"OTHER\").", + "Localized ad format name indicating the way an ad is shown to the users on your site (e.g. \"In-page\", \"Anchor\", \"Vignette\").", + "Ad format code indicating the way an ad is shown to the users on your site (e.g. \"ON_PAGE\", \"ANCHOR\", \"INTERSTITIAL\").", "Custom search style name.", "Custom search style id.", "Domain registrants.", @@ -1559,7 +1567,7 @@ } } }, - "revision": "20210417", + "revision": "20210629", "rootUrl": "https://adsense.googleapis.com/", "schemas": { "Account": { diff --git a/discovery/analyticsdata-v1beta.json b/discovery/analyticsdata-v1beta.json index cacd3127378..32b826776ec 100644 --- a/discovery/analyticsdata-v1beta.json +++ b/discovery/analyticsdata-v1beta.json @@ -284,7 +284,7 @@ } } }, - "revision": "20210403", + "revision": "20210629", "rootUrl": "https://analyticsdata.googleapis.com/", "schemas": { "BatchRunPivotReportsRequest": { @@ -873,6 +873,27 @@ }, "type": "object" }, + "MinuteRange": { + "description": "A contiguous set of minutes: startMinutesAgo, startMinutesAgo + 1, ..., endMinutesAgo. Requests are allowed up to 2 minute ranges.", + "id": "MinuteRange", + "properties": { + "endMinutesAgo": { + "description": "The inclusive end minute for the query as a number of minutes before now. Cannot be before `startMinutesAgo`. For example, `\"endMinutesAgo\": 15` specifies the report should include event data from prior to 15 minutes ago. If unspecified, `endMinutesAgo` is defaulted to 0. Standard Analytics properties can request any minute in the last 30 minutes of event data (`endMinutesAgo <= 29`), and 360 Analytics properties can request any minute in the last 60 minutes of event data (`endMinutesAgo <= 59`).", + "format": "int32", + "type": "integer" + }, + "name": { + "description": "Assigns a name to this minute range. The dimension `dateRange` is valued to this name in a report response. If set, cannot begin with `date_range_` or `RESERVED_`. If not set, minute ranges are named by their zero based index in the request: `date_range_0`, `date_range_1`, etc.", + "type": "string" + }, + "startMinutesAgo": { + "description": "The inclusive start minute for the query as a number of minutes before now. For example, `\"startMinutesAgo\": 29` specifies the report should include event data from 29 minutes ago and after. Cannot be after `endMinutesAgo`. If unspecified, `startMinutesAgo` is defaulted to 29. Standard Analytics properties can request up to the last 30 minutes of event data (`startMinutesAgo <= 29`), and 360 Analytics properties can request up to the last 60 minutes of event data (`startMinutesAgo <= 59`).", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, "NumericFilter": { "description": "Filters for numeric or date values.", "id": "NumericFilter", @@ -1307,6 +1328,13 @@ }, "type": "array" }, + "minuteRanges": { + "description": "The minute ranges of event data to read. If unspecified, one minute range for the last 30 minutes will be used. If multiple minute ranges are requested, each response row will contain a zero based minute range index. If two minute ranges overlap, the event data for the overlapping minutes is included in the response rows for both minute ranges.", + "items": { + "$ref": "MinuteRange" + }, + "type": "array" + }, "orderBys": { "description": "Specifies how rows are ordered in the response.", "items": { diff --git a/discovery/androiddeviceprovisioning-v1.json b/discovery/androiddeviceprovisioning-v1.json index d81ee7d2ec2..86096b03345 100644 --- a/discovery/androiddeviceprovisioning-v1.json +++ b/discovery/androiddeviceprovisioning-v1.json @@ -825,7 +825,7 @@ } } }, - "revision": "20200801", + "revision": "20210629", "rootUrl": "https://androiddeviceprovisioning.googleapis.com/", "schemas": { "ClaimDeviceRequest": { @@ -913,18 +913,26 @@ "description": "Required. The name of the company. For example _XYZ Corp_. Displayed to the company's employees in the zero-touch enrollment portal.", "type": "string" }, + "languageCode": { + "description": "Input only. The preferred locale of the customer represented as a BCP47 language code. This field is validated on input and requests containing unsupported language codes will be rejected. Supported language codes: Arabic (ar) Chinese (Hong Kong) (zh-HK) Chinese (Simplified) (zh-CN) Chinese (Traditional) (zh-TW) Czech (cs) Danish (da) Dutch (nl) English (UK) (en-GB) English (US) (en-US) Filipino (fil) Finnish (fi) French (fr) German (de) Hebrew (iw) Hindi (hi) Hungarian (hu) Indonesian (id) Italian (it) Japanese (ja) Korean (ko) Norwegian (Bokmal) (no) Polish (pl) Portuguese (Brazil) (pt-BR) Portuguese (Portugal) (pt-PT) Russian (ru) Spanish (es) Spanish (Latin America) (es-419) Swedish (sv) Thai (th) Turkish (tr) Ukrainian (uk) Vietnamese (vi)", + "type": "string" + }, "name": { "description": "Output only. The API resource name of the company. The resource name is one of the following formats: * `partners/[PARTNER_ID]/customers/[CUSTOMER_ID]` * `partners/[PARTNER_ID]/vendors/[VENDOR_ID]` * `partners/[PARTNER_ID]/vendors/[VENDOR_ID]/customers/[CUSTOMER_ID]` Assigned by the server.", "readOnly": true, "type": "string" }, "ownerEmails": { - "description": "Required. Input only. Email address of customer's users in the owner role. At least one `owner_email` is required. Each email address must be associated with a Google Account. Owners share the same access as admins but can also add, delete, and edit your organization's portal users.", + "description": "Required. Input only. Email address of customer's users in the owner role. At least one `owner_email` is required. Owners share the same access as admins but can also add, delete, and edit your organization's portal users.", "items": { "type": "string" }, "type": "array" }, + "skipWelcomeEmail": { + "description": "Input only. If set to true, welcome email will not be sent to the customer. It is recommended to skip the welcome email if devices will be claimed with additional DEVICE_PROTECTION service, as the customer will receive separate emails at device claim time. This field is ignored if this is not a Zero-touch customer.", + "type": "boolean" + }, "termsStatus": { "description": "Output only. Whether any user from the company has accepted the latest Terms of Service (ToS). See TermsStatus.", "enum": [ diff --git a/discovery/area120tables-v1alpha1.json b/discovery/area120tables-v1alpha1.json index c0e4136bc16..b0f79958d3d 100644 --- a/discovery/area120tables-v1alpha1.json +++ b/discovery/area120tables-v1alpha1.json @@ -12,10 +12,10 @@ "description": "See and download all your Google Drive files" }, "https://www.googleapis.com/auth/spreadsheets": { - "description": "See, edit, create, and delete your spreadsheets in Google Drive" + "description": "See, edit, create, and delete all your Google Sheets spreadsheets" }, "https://www.googleapis.com/auth/spreadsheets.readonly": { - "description": "View your Google Spreadsheets" + "description": "See all your Google Sheets spreadsheets" }, "https://www.googleapis.com/auth/tables": { "description": "See, edit, create, and delete your tables in Tables by Area 120" @@ -586,7 +586,7 @@ } } }, - "revision": "20210415", + "revision": "20210629", "rootUrl": "https://area120tables.googleapis.com/", "schemas": { "BatchCreateRowsRequest": { diff --git a/discovery/civicinfo-v2.json b/discovery/civicinfo-v2.json index b9c7353501f..7f2560f86d6 100644 --- a/discovery/civicinfo-v2.json +++ b/discovery/civicinfo-v2.json @@ -234,7 +234,8 @@ "highestCourtJudge", "judge", "schoolBoard", - "specialPurposeOfficer" + "specialPurposeOfficer", + "otherRole" ], "enumDescriptions": [ "", @@ -247,6 +248,7 @@ "", "", "", + "", "" ], "location": "query", @@ -320,7 +322,8 @@ "highestCourtJudge", "judge", "schoolBoard", - "specialPurposeOfficer" + "specialPurposeOfficer", + "otherRole" ], "enumDescriptions": [ "", @@ -333,6 +336,7 @@ "", "", "", + "", "" ], "location": "query", @@ -348,7 +352,7 @@ } } }, - "revision": "20201016", + "revision": "20210629", "rootUrl": "https://civicinfo.googleapis.com/", "schemas": { "AdministrationRegion": { @@ -647,7 +651,8 @@ "highestCourtJudge", "judge", "schoolBoard", - "specialPurposeOfficer" + "specialPurposeOfficer", + "otherRole" ], "enumDescriptions": [ "", @@ -660,6 +665,7 @@ "", "", "", + "", "" ], "type": "string" @@ -934,7 +940,8 @@ "highestCourtJudge", "judge", "schoolBoard", - "specialPurposeOfficer" + "specialPurposeOfficer", + "otherRole" ], "enumDescriptions": [ "", @@ -947,6 +954,7 @@ "", "", "", + "", "" ], "type": "string" diff --git a/discovery/cloudasset-v1.json b/discovery/cloudasset-v1.json index c9b14264186..80e0705d79f 100644 --- a/discovery/cloudasset-v1.json +++ b/discovery/cloudasset-v1.json @@ -686,6 +686,12 @@ "location": "query", "type": "string" }, + "readMask": { + "description": "Optional. A comma-separated list of fields specifying which fields to be returned in ResourceSearchResult. Only '*' or combination of top level fields can be specified. Field names of both snake_case and camelCase are supported. Examples: `\"*\"`, `\"name,location\"`, `\"name,versionedResources\"`. The read_mask paths must be valid field paths listed but not limited to (both snake_case and camelCase are supported): * name * asset_type or assetType * project * display_name or displayName * description * location * labels * network_tags or networkTags * kms_key or kmsKey * create_time or createTime * update_time or updateTime * state * additional_attributes or additionalAttributes * versioned_resources or versionedResources If read_mask is not specified, all fields except versionedResources will be returned. If only '*' is specified, all fields including versionedResources will be returned. Any invalid field path will trigger INVALID_ARGUMENT error.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + }, "scope": { "description": "Required. A scope can be a project, a folder, or an organization. The search is limited to the resources within the `scope`. The caller must be granted the [`cloudasset.assets.searchAllResources`](https://cloud.google.com/asset-inventory/docs/access-control#required_permissions) permission on the desired scope. The allowed values are: * projects/{PROJECT_ID} (e.g., \"projects/foo-bar\") * projects/{PROJECT_NUMBER} (e.g., \"projects/12345678\") * folders/{FOLDER_NUMBER} (e.g., \"folders/1234567\") * organizations/{ORGANIZATION_NUMBER} (e.g., \"organizations/123456\")", "location": "path", @@ -705,7 +711,7 @@ } } }, - "revision": "20210611", + "revision": "20210625", "rootUrl": "https://cloudasset.googleapis.com/", "schemas": { "AccessSelector": { @@ -2801,6 +2807,13 @@ "description": "The last update timestamp of this resource, at which the resource was last modified or deleted. The granularity is in seconds. Timestamp.nanos will always be 0. This field is available only when the resource's proto contains it. To search against `update_time`: * use a field query. - value in seconds since unix epoch. Example: `updateTime < 1609459200` - value in date string. Example: `updateTime < 2021-01-01` - value in date-time string (must be quoted). Example: `updateTime < \"2021-01-01T00:00:00\"`", "format": "google-datetime", "type": "string" + }, + "versionedResources": { + "description": "Versioned resource representations of this resource. This is repeated because there could be multiple versions of resource representations during version migration. This `versioned_resources` field is not searchable. Some attributes of the resource representations are exposed in `additional_attributes` field, so as to allow users to search on them.", + "items": { + "$ref": "VersionedResource" + }, + "type": "array" } }, "type": "object" @@ -3011,6 +3024,25 @@ }, "type": "object" }, + "VersionedResource": { + "description": "Resource representation as defined by the corresponding service providing the resource for a given API version.", + "id": "VersionedResource", + "properties": { + "resource": { + "additionalProperties": { + "description": "Properties of the object.", + "type": "any" + }, + "description": "JSON representation of the resource as defined by the corresponding service providing this resource. Example: If the resource is an instance provided by Compute Engine, this field will contain the JSON representation of the instance as defined by Compute Engine: `https://cloud.google.com/compute/docs/reference/rest/v1/instances`. You can find the resource definition for each supported resource type in this table: `https://cloud.google.com/asset-inventory/docs/supported-asset-types#searchable_asset_types`", + "type": "object" + }, + "version": { + "description": "API version of the resource. Example: If the resource is an instance provided by Compute Engine v1 API as defined in `https://cloud.google.com/compute/docs/reference/rest/v1/instances`, version will be \"v1\".", + "type": "string" + } + }, + "type": "object" + }, "WindowsQuickFixEngineeringPackage": { "description": "Information related to a Quick Fix Engineering package. Fields are taken from Windows QuickFixEngineering Interface and match the source names: https://docs.microsoft.com/en-us/windows/win32/cimwin32prov/win32-quickfixengineering", "id": "WindowsQuickFixEngineeringPackage", diff --git a/discovery/cloudidentity-v1beta1.json b/discovery/cloudidentity-v1beta1.json index fd2ad2cad21..f613d467d9d 100644 --- a/discovery/cloudidentity-v1beta1.json +++ b/discovery/cloudidentity-v1beta1.json @@ -1336,7 +1336,7 @@ } } }, - "revision": "20210614", + "revision": "20210623", "rootUrl": "https://cloudidentity.googleapis.com/", "schemas": { "AndroidAttributes": { @@ -2633,6 +2633,13 @@ "description": "Required. Immutable. The resource name of the entity under which this `Group` resides in the Cloud Identity resource hierarchy. Must be of the form `identitysources/{identity_source_id}` for external- identity-mapped groups or `customers/{customer_id}` for Google Groups. The `customer_id` must begin with \"C\" (for example, 'C046psxkn').", "type": "string" }, + "posixGroups": { + "description": "Optional. The POSIX groups associated with the `Group`.", + "items": { + "$ref": "PosixGroup" + }, + "type": "array" + }, "updateTime": { "description": "Output only. The time when the `Group` was last updated.", "format": "google-datetime", @@ -3063,6 +3070,26 @@ }, "type": "object" }, + "PosixGroup": { + "description": "POSIX Group definition to represent a group in a POSIX compliant system.", + "id": "PosixGroup", + "properties": { + "gid": { + "description": "GID of the POSIX group.", + "format": "uint64", + "type": "string" + }, + "name": { + "description": "Name of the POSIX group.", + "type": "string" + }, + "systemId": { + "description": "System identifier for which group name and gid apply to. If not specified it will default to empty value.", + "type": "string" + } + }, + "type": "object" + }, "SearchGroupsResponse": { "description": "The response message for GroupsService.SearchGroups.", "id": "SearchGroupsResponse", diff --git a/discovery/cloudkms-v1.json b/discovery/cloudkms-v1.json index 537f00a9dd3..53c4b30decd 100644 --- a/discovery/cloudkms-v1.json +++ b/discovery/cloudkms-v1.json @@ -1259,7 +1259,7 @@ } } }, - "revision": "20210522", + "revision": "20210622", "rootUrl": "https://cloudkms.googleapis.com/", "schemas": { "AsymmetricDecryptRequest": { @@ -1554,6 +1554,7 @@ "RSA_DECRYPT_OAEP_4096_SHA512", "EC_SIGN_P256_SHA256", "EC_SIGN_P384_SHA384", + "EC_SIGN_SECP256K1_SHA256", "EXTERNAL_SYMMETRIC_ENCRYPTION" ], "enumDescriptions": [ @@ -1573,6 +1574,7 @@ "RSAES-OAEP 4096 bit key with a SHA512 digest.", "ECDSA on the NIST P-256 curve with a SHA256 digest.", "ECDSA on the NIST P-384 curve with a SHA384 digest.", + "ECDSA on the non-NIST secp256k1 curve. This curve is only supported for HSM protection level.", "Algorithm representing symmetric encryption by an external key manager." ], "readOnly": true, @@ -1699,6 +1701,7 @@ "RSA_DECRYPT_OAEP_4096_SHA512", "EC_SIGN_P256_SHA256", "EC_SIGN_P384_SHA384", + "EC_SIGN_SECP256K1_SHA256", "EXTERNAL_SYMMETRIC_ENCRYPTION" ], "enumDescriptions": [ @@ -1718,6 +1721,7 @@ "RSAES-OAEP 4096 bit key with a SHA512 digest.", "ECDSA on the NIST P-256 curve with a SHA256 digest.", "ECDSA on the NIST P-384 curve with a SHA384 digest.", + "ECDSA on the non-NIST secp256k1 curve. This curve is only supported for HSM protection level.", "Algorithm representing symmetric encryption by an external key manager." ], "type": "string" @@ -1962,6 +1966,7 @@ "RSA_DECRYPT_OAEP_4096_SHA512", "EC_SIGN_P256_SHA256", "EC_SIGN_P384_SHA384", + "EC_SIGN_SECP256K1_SHA256", "EXTERNAL_SYMMETRIC_ENCRYPTION" ], "enumDescriptions": [ @@ -1981,6 +1986,7 @@ "RSAES-OAEP 4096 bit key with a SHA512 digest.", "ECDSA on the NIST P-256 curve with a SHA256 digest.", "ECDSA on the NIST P-384 curve with a SHA384 digest.", + "ECDSA on the non-NIST secp256k1 curve. This curve is only supported for HSM protection level.", "Algorithm representing symmetric encryption by an external key manager." ], "type": "string" @@ -2354,6 +2360,7 @@ "RSA_DECRYPT_OAEP_4096_SHA512", "EC_SIGN_P256_SHA256", "EC_SIGN_P384_SHA384", + "EC_SIGN_SECP256K1_SHA256", "EXTERNAL_SYMMETRIC_ENCRYPTION" ], "enumDescriptions": [ @@ -2373,6 +2380,7 @@ "RSAES-OAEP 4096 bit key with a SHA512 digest.", "ECDSA on the NIST P-256 curve with a SHA256 digest.", "ECDSA on the NIST P-384 curve with a SHA384 digest.", + "ECDSA on the non-NIST secp256k1 curve. This curve is only supported for HSM protection level.", "Algorithm representing symmetric encryption by an external key manager." ], "type": "string" diff --git a/discovery/compute-alpha.json b/discovery/compute-alpha.json index 8fd5959e41f..5762b371725 100644 --- a/discovery/compute-alpha.json +++ b/discovery/compute-alpha.json @@ -20717,7 +20717,7 @@ "regionCommitments": { "methods": { "aggregatedList": { - "description": "Retrieves an aggregated list of commitments.", + "description": "Retrieves an aggregated list of commitments by region.", "flatPath": "projects/{project}/aggregated/commitments", "httpMethod": "GET", "id": "compute.regionCommitments.aggregatedList", @@ -24547,43 +24547,6 @@ "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/compute" ] - }, - "recommendLocations": { - "description": "Returns recommended locations (zones in a region) for specified sets of homogenous instances.", - "flatPath": "projects/{project}/regions/{region}/instances/recommendLocations", - "httpMethod": "POST", - "id": "compute.regionInstances.recommendLocations", - "parameterOrder": [ - "project", - "region" - ], - "parameters": { - "project": { - "description": "Project ID for this request.", - "location": "path", - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", - "required": true, - "type": "string" - }, - "region": { - "description": "The name of the region for this request.", - "location": "path", - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", - "required": true, - "type": "string" - } - }, - "path": "projects/{project}/regions/{region}/instances/recommendLocations", - "request": { - "$ref": "RegionInstancesRecommendLocationsResource" - }, - "response": { - "$ref": "RegionInstancesRecommendLocationsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/compute" - ] } } }, @@ -38203,7 +38166,7 @@ "type": "object" }, "Address": { - "description": "Use global external addresses for GFE-based external HTTP(S) load balancers in Premium Tier. Use global internal addresses for reserved peering network range. Use regional external addresses for the following resources: - External IP addresses for VM instances - Regional external forwarding rules - Cloud NAT external IP addresses - GFE based LBs in Standard Tier - Network LBs in Premium or Standard Tier - Cloud VPN gateways (both Classic and HA) Use regional internal IP addresses for subnet IP ranges (primary and secondary). This includes: - Internal IP addresses for VM instances - Alias IP ranges of VM instances (/32 only) - Regional internal forwarding rules - Internal TCP/UDP load balancer addresses - Internal HTTP(S) load balancer addresses - Cloud DNS inbound forwarding IP addresses For more information, read reserved IP address.", + "description": "Use global external addresses for GFE-based external HTTP(S) load balancers in Premium Tier. Use global internal addresses for reserved peering network range. Use regional external addresses for the following resources: - External IP addresses for VM instances - Regional external forwarding rules - Cloud NAT external IP addresses - GFE based LBs in Standard Tier - Network LBs in Premium or Standard Tier - Cloud VPN gateways (both Classic and HA) Use regional internal IP addresses for subnet IP ranges (primary and secondary). This includes: - Internal IP addresses for VM instances - Alias IP ranges of VM instances (/32 only) - Regional internal forwarding rules - Internal TCP/UDP load balancer addresses - Internal HTTP(S) load balancer addresses - Cloud DNS inbound forwarding IP addresses For more information, see Reserving a static external IP address.", "id": "Address", "properties": { "address": { @@ -38986,7 +38949,7 @@ "type": "string" }, "diskType": { - "description": "Specifies the disk type to use to create the instance. If not specified, the default is pd-standard, specified using the full URL. For example: https://www.googleapis.com/compute/v1/projects/project/zones/zone /diskTypes/pd-standard Other values include pd-ssd and local-ssd. If you define this field, you can provide either the full or partial URL. For example, the following are valid values: - https://www.googleapis.com/compute/v1/projects/project/zones/zone /diskTypes/diskType - projects/project/zones/zone/diskTypes/diskType - zones/zone/diskTypes/diskType Note that for InstanceTemplate, this is the name of the disk type, not URL.", + "description": "Specifies the disk type to use to create the instance. If not specified, the default is pd-standard, specified using the full URL. For example: https://www.googleapis.com/compute/v1/projects/project/zones/zone /diskTypes/pd-standard For a full list of acceptable values, see Persistent disk types. If you define this field, you can provide either the full or partial URL. For example, the following are valid values: - https://www.googleapis.com/compute/v1/projects/project/zones/zone /diskTypes/diskType - projects/project/zones/zone/diskTypes/diskType - zones/zone/diskTypes/diskType Note that for InstanceTemplate, this is the name of the disk type, not URL.", "type": "string" }, "guestOsFeatures": { @@ -38996,6 +38959,20 @@ }, "type": "array" }, + "interface": { + "description": "Specifies the disk interface to use for attaching this disk, which is either SCSI or NVME. The default is SCSI.", + "enum": [ + "NVME", + "SCSI", + "UNSPECIFIED" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, "labels": { "additionalProperties": { "type": "string" @@ -39022,7 +38999,7 @@ "type": "string" }, "provisionedIops": { - "description": "Indicates how many IOPS must be provisioned for the disk.", + "description": "Indicates how many IOPS to provision for the disk. This sets the number of I/O operations per second that the disk can handle. Values must be between 10,000 and 120,000. For more details, see the Extreme persistent disk documentation.", "format": "int64", "type": "string" }, @@ -39914,7 +39891,7 @@ "type": "string" }, "capacityScaler": { - "description": "A multiplier applied to the backend's target capacity of its balancing mode. The default value is 1, which means the group serves up to 100% of its configured capacity (depending on balancingMode). A setting of 0 means the group is completely drained, offering 0% of its available capacity. The valid ranges are 0.0 and [0.1,1.0]. You cannot configure a setting larger than 0 and smaller than 0.1. You cannot configure a setting of 0 when there is only one backend attached to the backend service. Not supported by: - Internal TCP/UDP Load Balancing - Network Load Balancing", + "description": "A multiplier applied to the backend's target capacity of its balancing mode. The default value is 1, which means the group serves up to 100% of its configured capacity (depending on balancingMode). A setting of 0 means the group is completely drained, offering 0% of its available capacity. The valid ranges are 0.0 and [0.1,1.0]. You cannot configure a setting larger than 0 and smaller than 0.1. You cannot configure a setting of 0 when there is only one backend attached to the backend service.", "format": "float", "type": "number" }, @@ -39927,21 +39904,21 @@ "type": "boolean" }, "group": { - "description": "The fully-qualified URL of an instance group or network endpoint group (NEG) resource. The type of backend that a backend service supports depends on the backend service's loadBalancingScheme. - When the loadBalancingScheme for the backend service is EXTERNAL (except Network Load Balancing), INTERNAL_SELF_MANAGED, or INTERNAL_MANAGED , the backend can be either an instance group or a NEG. The backends on the backend service must be either all instance groups or all NEGs. You cannot mix instance group and NEG backends on the same backend service. - When the loadBalancingScheme for the backend service is EXTERNAL for Network Load Balancing or INTERNAL for Internal TCP/UDP Load Balancing, the backend must be an instance group. NEGs are not supported. For regional services, the backend must be in the same region as the backend service. You must use the *fully-qualified* URL (starting with https://www.googleapis.com/) to specify the instance group or NEG. Partial URLs are not supported.", + "description": "The fully-qualified URL of an instance group or network endpoint group (NEG) resource. To determine what types of backends a load balancer supports, see the [Backend services overview](https://cloud.google.com/load-balancing/docs/backend-service#backends). You must use the *fully-qualified* URL (starting with https://www.googleapis.com/) to specify the instance group or NEG. Partial URLs are not supported.", "type": "string" }, "maxConnections": { - "description": "Defines a target maximum number of simultaneous connections. For usage guidelines, see Connection balancing mode and Utilization balancing mode. Not available if the backend's balancingMode is RATE. Not supported by: - Internal TCP/UDP Load Balancing - Network Load Balancing", + "description": "Defines a target maximum number of simultaneous connections. For usage guidelines, see Connection balancing mode and Utilization balancing mode. Not available if the backend's balancingMode is RATE.", "format": "int32", "type": "integer" }, "maxConnectionsPerEndpoint": { - "description": "Defines a target maximum number of simultaneous connections. For usage guidelines, see Connection balancing mode and Utilization balancing mode. Not available if the backend's balancingMode is RATE. Not supported by: - Internal TCP/UDP Load Balancing - Network Load Balancing.", + "description": "Defines a target maximum number of simultaneous connections. For usage guidelines, see Connection balancing mode and Utilization balancing mode. Not available if the backend's balancingMode is RATE.", "format": "int32", "type": "integer" }, "maxConnectionsPerInstance": { - "description": "Defines a target maximum number of simultaneous connections. For usage guidelines, see Connection balancing mode and Utilization balancing mode. Not available if the backend's balancingMode is RATE. Not supported by: - Internal TCP/UDP Load Balancing - Network Load Balancing.", + "description": "Defines a target maximum number of simultaneous connections. For usage guidelines, see Connection balancing mode and Utilization balancing mode. Not available if the backend's balancingMode is RATE.", "format": "int32", "type": "integer" }, @@ -39980,7 +39957,7 @@ "description": "Cloud CDN configuration for this BackendBucket." }, "compressionMode": { - "description": "Compress text responses using Brotli or gzip compression, based on the client’s Accept-Encoding header.", + "description": "Compress text responses using Brotli or gzip compression, based on the client's Accept-Encoding header.", "enum": [ "AUTOMATIC", "DISABLED" @@ -40287,11 +40264,11 @@ "type": "object" }, "BackendService": { - "description": "Represents a Backend Service resource. A backend service defines how Google Cloud load balancers distribute traffic. The backend service configuration contains a set of values, such as the protocol used to connect to backends, various distribution and session settings, health checks, and timeouts. These settings provide fine-grained control over how your load balancer behaves. Most of the settings have default values that allow for easy configuration if you need to get started quickly. Backend services in Google Compute Engine can be either regionally or globally scoped. * [Global](/compute/docs/reference/rest/alpha/backendServices) * [Regional](/compute/docs/reference/rest/alpha/regionBackendServices) For more information, see Backend Services.", + "description": "Represents a Backend Service resource. A backend service defines how Google Cloud load balancers distribute traffic. The backend service configuration contains a set of values, such as the protocol used to connect to backends, various distribution and session settings, health checks, and timeouts. These settings provide fine-grained control over how your load balancer behaves. Most of the settings have default values that allow for easy configuration if you need to get started quickly. Backend services in Google Compute Engine can be either regionally or globally scoped. * [Global](https://cloud.google.com/compute/docs/reference/rest/alpha/backendServices) * [Regional](https://cloud.google.com/compute/docs/reference/rest/alpha/regionBackendServices) For more information, see Backend Services.", "id": "BackendService", "properties": { "affinityCookieTtlSec": { - "description": "Lifetime of cookies in seconds. Only applicable if the loadBalancingScheme is EXTERNAL, INTERNAL_SELF_MANAGED, or INTERNAL_MANAGED, the protocol is HTTP or HTTPS, and the sessionAffinity is GENERATED_COOKIE, or HTTP_COOKIE. If set to 0, the cookie is non-persistent and lasts only until the end of the browser session (or equivalent). The maximum allowed value is one day ( 86,400). Not supported when the backend service is referenced by a URL map that is bound to target gRPC proxy that has validateForProxyless field set to true.", + "description": "Lifetime of cookies in seconds. This setting is applicable to external and internal HTTP(S) load balancers and Traffic Director and requires GENERATED_COOKIE or HTTP_COOKIE session affinity. If set to 0, the cookie is non-persistent and lasts only until the end of the browser session (or equivalent). The maximum allowed value is one day (86,400). Not supported when the backend service is referenced by a URL map that is bound to target gRPC proxy that has validateForProxyless field set to true.", "format": "int32", "type": "integer" }, @@ -40304,13 +40281,13 @@ }, "cdnPolicy": { "$ref": "BackendServiceCdnPolicy", - "description": "Cloud CDN configuration for this BackendService. Only available for external HTTP(S) Load Balancing." + "description": "Cloud CDN configuration for this BackendService. Only available for specified load balancer types." }, "circuitBreakers": { "$ref": "CircuitBreakers" }, "compressionMode": { - "description": "Compress text responses using Brotli or gzip compression, based on the client’s Accept-Encoding header.", + "description": "Compress text responses using Brotli or gzip compression, based on the client's Accept-Encoding header.", "enum": [ "AUTOMATIC", "DISABLED" @@ -40336,14 +40313,14 @@ "type": "string" }, "customRequestHeaders": { - "description": "Headers that the HTTP/S load balancer should add to proxied requests.", + "description": "Headers that the load balancer adds to proxied requests. See [Creating custom headers](https://cloud.google.com/load-balancing/docs/custom-headers).", "items": { "type": "string" }, "type": "array" }, "customResponseHeaders": { - "description": "Headers that the HTTP/S load balancer should add to proxied responses.", + "description": "Headers that the load balancer adds to proxied responses. See [Creating custom headers](https://cloud.google.com/load-balancing/docs/custom-headers).", "items": { "type": "string" }, @@ -40358,12 +40335,12 @@ "type": "string" }, "enableCDN": { - "description": "If true, enables Cloud CDN for the backend service. Only applicable if the loadBalancingScheme is EXTERNAL and the protocol is HTTP or HTTPS.", + "description": "If true, enables Cloud CDN for the backend service of an external HTTP(S) load balancer.", "type": "boolean" }, "failoverPolicy": { "$ref": "BackendServiceFailoverPolicy", - "description": "Applicable only to Failover for Internal TCP/UDP Load Balancing and Network Load Balancing. Requires at least one backend instance group to be defined as a backup (failover) backend." + "description": "Requires at least one backend instance group to be defined as a backup (failover) backend. For load balancers that have configurable failover: [Internal TCP/UDP Load Balancing](https://cloud.google.com/load-balancing/docs/internal/failover-overview) and [external TCP/UDP Load Balancing](/network/networklb-failover-overview)." }, "fingerprint": { "description": "Fingerprint of this resource. A hash of the contents stored in this object. This field is used in optimistic locking. This field will be ignored when inserting a BackendService. An up-to-date fingerprint must be provided in order to update the BackendService, otherwise the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make a get() request to retrieve a BackendService.", @@ -40392,7 +40369,7 @@ "type": "string" }, "loadBalancingScheme": { - "description": "Specifies the load balancer type. Choose EXTERNAL for external HTTP(S), SSL Proxy, TCP Proxy and Network Load Balancing. Choose INTERNAL for Internal TCP/UDP Load Balancing. Choose INTERNAL_MANAGED for Internal HTTP(S) Load Balancing. INTERNAL_SELF_MANAGED for Traffic Director. A backend service created for one type of load balancer cannot be used with another. For more information, refer to Choosing a load balancer.", + "description": "Specifies the load balancer type. A backend service created for one type of load balancer cannot be used with another. For more information, refer to Choosing a load balancer.", "enum": [ "EXTERNAL", "EXTERNAL_MANAGED", @@ -40402,7 +40379,7 @@ "INVALID_LOAD_BALANCING_SCHEME" ], "enumDescriptions": [ - "Signifies that this will be used for HTTP(S), SSL Proxy, TCP Proxy or Network Load Balancing", + "Signifies that this will be used for external HTTP(S), SSL Proxy, TCP Proxy, or Network Load Balancing", "Signifies that this will be used for External Managed HTTP(S), SSL Proxy, or TCP Proxy Load Balancing.", "Signifies that this will be used for Internal TCP/UDP Load Balancing.", "Signifies that this will be used for Internal HTTP(S) Load Balancing.", @@ -40455,16 +40432,16 @@ "description": "Settings controlling the eviction of unhealthy hosts from the load balancing pool for the backend service. If not set, this feature is considered disabled. This field is applicable to either: - A regional backend service with the service_protocol set to HTTP, HTTPS, or HTTP2, and load_balancing_scheme set to INTERNAL_MANAGED. - A global backend service with the load_balancing_scheme set to INTERNAL_SELF_MANAGED. Not supported when the backend service is referenced by a URL map that is bound to target gRPC proxy that has validateForProxyless field set to true." }, "port": { - "description": "Deprecated in favor of portName. The TCP port to connect on the backend. The default value is 80. Backend services for Internal TCP/UDP Load Balancing and Network Load Balancing require you omit port.", + "description": "Deprecated in favor of portName. The TCP port to connect on the backend. The default value is 80. For Internal TCP/UDP Load Balancing and Network Load Balancing, omit port.", "format": "int32", "type": "integer" }, "portName": { - "description": "A named port on a backend instance group representing the port for communication to the backend VMs in that group. Required when the loadBalancingScheme is EXTERNAL (except Network Load Balancing), INTERNAL_MANAGED, or INTERNAL_SELF_MANAGED and the backends are instance groups. The named port must be defined on each backend instance group. This parameter has no meaning if the backends are NEGs. Backend services for Internal TCP/UDP Load Balancing and Network Load Balancing require you omit port_name.", + "description": "A named port on a backend instance group representing the port for communication to the backend VMs in that group. The named port must be [defined on each backend instance group](https://cloud.google.com/load-balancing/docs/backend-service#named_ports). This parameter has no meaning if the backends are NEGs. For Internal TCP/UDP Load Balancing and Network Load Balancing, omit port_name.", "type": "string" }, "protocol": { - "description": "The protocol this BackendService uses to communicate with backends. Possible values are HTTP, HTTPS, HTTP2, TCP, SSL, UDP or GRPC. depending on the chosen load balancer or Traffic Director configuration. Refer to the documentation for the load balancer or for Traffic Director for more information. Must be set to GRPC when the backend service is referenced by a URL map that is bound to target gRPC proxy.", + "description": "The protocol this BackendService uses to communicate with backends. Possible values are HTTP, HTTPS, HTTP2, TCP, SSL, UDP or GRPC. depending on the chosen load balancer or Traffic Director configuration. Refer to the documentation for the load balancers or for Traffic Director for more information. Must be set to GRPC when the backend service is referenced by a URL map that is bound to target gRPC proxy.", "enum": [ "ALL", "GRPC", @@ -40483,8 +40460,8 @@ "HTTP/2 with SSL.", "", "TCP proxying with SSL.", - "TCP proxying or TCP pass-through (Internal TCP/UDP Load Balancing and Network Load Balancing).", - "UDP (available for Internal TCP/UDP Load Balancing and Network Load Balancing).", + "TCP proxying or TCP pass-through.", + "UDP.", "If a Backend Service has UNSPECIFIED as its protocol, it can be used with any L3/L4 Forwarding Rules." ], "type": "string" @@ -40510,7 +40487,7 @@ "type": "string" }, "sessionAffinity": { - "description": "Type of session affinity to use. The default is NONE. When the loadBalancingScheme is EXTERNAL: * For Network Load Balancing, the possible values are NONE, CLIENT_IP, CLIENT_IP_PROTO, or CLIENT_IP_PORT_PROTO. * For all other load balancers that use loadBalancingScheme=EXTERNAL, the possible values are NONE, CLIENT_IP, or GENERATED_COOKIE. * You can use GENERATED_COOKIE if the protocol is HTTP, HTTP2, or HTTPS. When the loadBalancingScheme is INTERNAL, possible values are NONE, CLIENT_IP, CLIENT_IP_PROTO, or CLIENT_IP_PORT_PROTO. When the loadBalancingScheme is INTERNAL_SELF_MANAGED, or INTERNAL_MANAGED, possible values are NONE, CLIENT_IP, GENERATED_COOKIE, HEADER_FIELD, or HTTP_COOKIE. Not supported when the backend service is referenced by a URL map that is bound to target gRPC proxy that has validateForProxyless field set to true.", + "description": "Type of session affinity to use. The default is NONE. For a detailed description of session affinity options, see: [Session affinity](https://cloud.google.com/load-balancing/docs/backend-service#session_affinity). Not supported when the backend service is referenced by a URL map that is bound to target gRPC proxy that has validateForProxyless field set to true.", "enum": [ "CLIENT_IP", "CLIENT_IP_NO_DESTINATION", @@ -40818,7 +40795,7 @@ "type": "object" }, "BackendServiceFailoverPolicy": { - "description": "Applicable only to Failover for Internal TCP/UDP Load Balancing and Network Load Balancing. On failover or failback, this field indicates whether connection draining will be honored. GCP has a fixed connection draining timeout of 10 minutes. A setting of true terminates existing TCP connections to the active pool during failover and failback, immediately draining traffic. A setting of false allows existing TCP connections to persist, even on VMs no longer in the active pool, for up to the duration of the connection draining timeout (10 minutes).", + "description": "For load balancers that have configurable failover: [Internal TCP/UDP Load Balancing](https://cloud.google.com/load-balancing/docs/internal/failover-overview) and [external TCP/UDP Load Balancing](/network/networklb-failover-overview). On failover or failback, this field indicates whether connection draining will be honored. Google Cloud has a fixed connection draining timeout of 10 minutes. A setting of true terminates existing TCP connections to the active pool during failover and failback, immediately draining traffic. A setting of false allows existing TCP connections to persist, even on VMs no longer in the active pool, for up to the duration of the connection draining timeout (10 minutes).", "id": "BackendServiceFailoverPolicy", "properties": { "disableConnectionDrainOnFailover": { @@ -40826,11 +40803,11 @@ "type": "boolean" }, "dropTrafficIfUnhealthy": { - "description": "Applicable only to Failover for Internal TCP/UDP Load Balancing and Network Load Balancing, If set to true, connections to the load balancer are dropped when all primary and all backup backend VMs are unhealthy.If set to false, connections are distributed among all primary VMs when all primary and all backup backend VMs are unhealthy. The default is false.", + "description": "If set to true, connections to the load balancer are dropped when all primary and all backup backend VMs are unhealthy.If set to false, connections are distributed among all primary VMs when all primary and all backup backend VMs are unhealthy. For load balancers that have configurable failover: [Internal TCP/UDP Load Balancing](https://cloud.google.com/load-balancing/docs/internal/failover-overview) and [external TCP/UDP Load Balancing](/network/networklb-failover-overview). The default is false.", "type": "boolean" }, "failoverRatio": { - "description": "Applicable only to Failover for Internal TCP/UDP Load Balancing and Network Load Balancing. The value of the field must be in the range [0, 1]. If the value is 0, the load balancer performs a failover when the number of healthy primary VMs equals zero. For all other values, the load balancer performs a failover when the total number of healthy primary VMs is less than this ratio.", + "description": "The value of the field must be in the range [0, 1]. If the value is 0, the load balancer performs a failover when the number of healthy primary VMs equals zero. For all other values, the load balancer performs a failover when the total number of healthy primary VMs is less than this ratio. For load balancers that have configurable failover: [Internal TCP/UDP Load Balancing](https://cloud.google.com/load-balancing/docs/internal/failover-overview) and [external TCP/UDP Load Balancing](/network/networklb-failover-overview).", "format": "float", "type": "number" } @@ -41436,7 +41413,7 @@ "type": "object" }, "BulkInsertInstanceResource": { - "description": "A transient resource used in compute.instances.bulkInsert and compute.regionInstances.bulkInsert and compute.regionInstances.recommendLocations. This resource is not persisted anywhere, it is used only for processing the requests.", + "description": "A transient resource used in compute.instances.bulkInsert and compute.regionInstances.bulkInsert . This resource is not persisted anywhere, it is used only for processing the requests.", "id": "BulkInsertInstanceResource", "properties": { "count": { @@ -41462,7 +41439,7 @@ "type": "string" }, "namePattern": { - "description": "The string pattern used for the names of the VMs. Either name_pattern or per_instance_properties must be set. The pattern should contain one continuous sequence of placeholder hash characters (#) with each character corresponding to one digit of the generated instance name. Example: name_pattern of inst-#### will generate instance names such as inst-0001, inst-0002, ... . If there already exist instance(s) whose names match the name pattern in the same project and zone, then the generated instance numbers will start after the biggest existing number. For example, if there exists an instance with name inst-0050, then instance names generated using the pattern inst-#### will be inst-0051, inst-0052, etc. The name pattern placeholder # ...# can contain up to 18 characters.", + "description": "The string pattern used for the names of the VMs. Either name_pattern or per_instance_properties must be set. The pattern must contain one continuous sequence of placeholder hash characters (#) with each character corresponding to one digit of the generated instance name. Example: a name_pattern of inst-#### generates instance names such as inst-0001 and inst-0002. If existing instances in the same project and zone have names that match the name pattern then the generated instance numbers start after the biggest existing number. For example, if there exists an instance with name inst-0050, then instance names generated using the pattern inst-#### begin with inst-0051. The name pattern placeholder #...# can contain up to 18 characters.", "type": "string" }, "perInstanceProperties": { @@ -41615,7 +41592,7 @@ "type": "object" }, "CircuitBreakers": { - "description": "Settings controlling the volume of connections to a backend service.", + "description": "Settings controlling the volume of requests, connections and retries to this backend service.", "id": "CircuitBreakers", "properties": { "connectTimeout": { @@ -41815,6 +41792,7 @@ "GENERAL_PURPOSE_E2", "GENERAL_PURPOSE_N2", "GENERAL_PURPOSE_N2D", + "GENERAL_PURPOSE_P2D", "MEMORY_OPTIMIZED", "TYPE_UNSPECIFIED" ], @@ -41827,6 +41805,7 @@ "", "", "", + "", "" ], "type": "string" @@ -42565,7 +42544,7 @@ "type": "string" }, "provisionedIops": { - "description": "Indicates how many IOPS must be provisioned for the disk.", + "description": "Indicates how many IOPS to provision for the disk. This sets the number of I/O operations per second that the disk can handle. Values must be between 10,000 and 120,000. For more details, see the Extreme persistent disk documentation.", "format": "int64", "type": "string" }, @@ -42687,7 +42666,7 @@ "type": "string" }, "type": { - "description": "URL of the disk type resource describing which disk type to use to create the disk. Provide this when creating the disk. For example: projects/project /zones/zone/diskTypes/pd-standard or pd-ssd", + "description": "URL of the disk type resource describing which disk type to use to create the disk. Provide this when creating the disk. For example: projects/project /zones/zone/diskTypes/pd-ssd . See Persistent disk types.", "type": "string" }, "userLicenses": { @@ -43405,7 +43384,7 @@ "id": "DisksAddResourcePoliciesRequest", "properties": { "resourcePolicies": { - "description": "Resource policies to be added to this disk. Currently you can only specify one policy here.", + "description": "Full or relative path to the resource policy to be added to this disk. You can only specify one resource policy.", "items": { "type": "string" }, @@ -43800,7 +43779,7 @@ "type": "string" }, "interfaces": { - "description": "List of interfaces for this external VPN gateway. If your peer-side gateway is an on-premises gateway and non-AWS cloud providers’ gateway, at most two interfaces can be provided for an external VPN gateway. If your peer side is an AWS virtual private gateway, four interfaces should be provided for an external VPN gateway.", + "description": "List of interfaces for this external VPN gateway. If your peer-side gateway is an on-premises gateway and non-AWS cloud providers' gateway, at most two interfaces can be provided for an external VPN gateway. If your peer side is an AWS virtual private gateway, four interfaces should be provided for an external VPN gateway.", "items": { "$ref": "ExternalVpnGatewayInterface" }, @@ -45969,7 +45948,7 @@ "type": "string" }, "queryPath": { - "description": "The path to be queried. This can be the default namespace ('/') or a nested namespace ('/\\/') or a specified key ('/\\/\\')", + "description": "The path to be queried. This can be the default namespace ('') or a nested namespace ('\\/') or a specified key ('\\/\\').", "type": "string" }, "queryValue": { @@ -46530,7 +46509,7 @@ "type": "array" }, "healthStatusAggregationPolicy": { - "description": "Optional. Policy for how the results from multiple health checks for the same endpoint are aggregated. Defaults to NO_AGGREGATION if unspecified. - NO_AGGREGATION. An EndpointHealth message is returned for each backend in the health check service. - AND. If any backend's health check reports UNHEALTHY, then UNHEALTHY is the HealthState of the entire health check service. If all backend's are healthy, the HealthState of the health check service is HEALTHY. .", + "description": "Optional. Policy for how the results from multiple health checks for the same endpoint are aggregated. Defaults to NO_AGGREGATION if unspecified. - NO_AGGREGATION. An EndpointHealth message is returned for each pair in the health check service. - AND. If any health check of an endpoint reports UNHEALTHY, then UNHEALTHY is the HealthState of the endpoint. If all health checks report HEALTHY, the HealthState of the endpoint is HEALTHY. .", "enum": [ "AND", "NO_AGGREGATION" @@ -47718,7 +47697,7 @@ "description": "Specifies a non-zero timeout per retry attempt. If not specified, will use the timeout set in HttpRouteAction. If timeout in HttpRouteAction is not set, will use the largest timeout among all backend services associated with the route." }, "retryConditions": { - "description": "Specifies one or more conditions when this retry rule applies. Valid values are: - 5xx: Loadbalancer will attempt a retry if the backend service responds with any 5xx response code, or if the backend service does not respond at all, example: disconnects, reset, read timeout, connection failure, and refused streams. - gateway-error: Similar to 5xx, but only applies to response codes 502, 503 or 504. - - connect-failure: Loadbalancer will retry on failures connecting to backend services, for example due to connection timeouts. - retriable-4xx: Loadbalancer will retry for retriable 4xx response codes. Currently the only retriable error supported is 409. - refused-stream:Loadbalancer will retry if the backend service resets the stream with a REFUSED_STREAM error code. This reset type indicates that it is safe to retry. - cancelledLoadbalancer will retry if the gRPC status code in the response header is set to cancelled - deadline-exceeded: Loadbalancer will retry if the gRPC status code in the response header is set to deadline-exceeded - resource-exhausted: Loadbalancer will retry if the gRPC status code in the response header is set to resource-exhausted - unavailable: Loadbalancer will retry if the gRPC status code in the response header is set to unavailable ", + "description": "Specifies one or more conditions when this retry policy applies. Valid values are: - 5xx: Retry will be attempted if the instance or endpoint responds with any 5xx response code, or if the instance or endpoint does not respond at all, example: disconnects, reset, read timeout, connection failure, and refused streams. - gateway-error: Similar to 5xx, but only applies to response codes 502, 503 or 504. - - connect-failure: A retry will be attempted on failures connecting to the instance or endpoint, for example due to connection timeouts. - retriable-4xx: A retry will be attempted if the instance or endpoint responds with a retriable 4xx response code. Currently the only retriable error supported is 409. - refused-stream: A retry will be attempted if the instance or endpoint resets the stream with a REFUSED_STREAM error code. This reset type indicates that it is safe to retry. - cancelled: A retry will be attempted if the gRPC status code in the response header is set to cancelled. - deadline-exceeded: A retry will be attempted if the gRPC status code in the response header is set to deadline-exceeded. - internal: A retry will be attempted if the gRPC status code in the response header is set to internal. - resource-exhausted: A retry will be attempted if the gRPC status code in the response header is set to resource-exhausted. - unavailable: A retry will be attempted if the gRPC status code in the response header is set to unavailable. ", "items": { "type": "string" }, @@ -49350,7 +49329,7 @@ "type": "object" }, "InstanceGroupManager": { - "description": "Whether the instance is a standby. # Properties of a standby instance comparing to the regular instance: # | regular | standby managed by IGM? | yes | yes added to the IG? | yes | yes counts towards IGM's target size? | yes | no taken into account by Autoscaler? | yes | no # receives traffic from LB? | yes | no Represents a Managed Instance Group resource. An instance group is a collection of VM instances that you can manage as a single entity. For more information, read Instance groups. For zonal Managed Instance Group, use the instanceGroupManagers resource. For regional Managed Instance Group, use the regionInstanceGroupManagers resource.", + "description": "Represents a Managed Instance Group resource. An instance group is a collection of VM instances that you can manage as a single entity. For more information, read Instance groups. For zonal Managed Instance Group, use the instanceGroupManagers resource. For regional Managed Instance Group, use the regionInstanceGroupManagers resource.", "id": "InstanceGroupManager", "properties": { "autoHealingPolicies": { @@ -63022,64 +63001,6 @@ }, "type": "object" }, - "RegionInstancesRecommendLocationsResource": { - "description": "A transient resource used in compute.regionInstances.recommendLocations. This resource is not saved anywhere and used only to process the request.", - "id": "RegionInstancesRecommendLocationsResource", - "properties": { - "instanceSpecs": { - "additionalProperties": { - "$ref": "BulkInsertInstanceResource" - }, - "description": "Specification of named homogeneous instance sets to find location for. Keys of this map are arbitrary (but must be different), defined by the caller used only in the response. They must follow RFC 1035 name standard. Specifically, they must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. Values are trimmed BulkInsertInstanceResource messages, without the following fields: - min_count - predefined_name - name_pattern - per_instance_properties - instance - secure_tag - location_policy ", - "type": "object" - }, - "locationPolicy": { - "$ref": "LocationPolicy", - "description": "Location policy to indicate allowed zones for instances, together with the shape of the distribution." - } - }, - "type": "object" - }, - "RegionInstancesRecommendLocationsResponse": { - "description": "Response for for compute.regionInstances.recommendLocations.", - "id": "RegionInstancesRecommendLocationsResponse", - "properties": { - "recommendedLocations": { - "additionalProperties": { - "$ref": "RegionInstancesRecommendLocationsResponseRecommendationsForInstanceSpecs" - }, - "description": "Instance count recommendations, keys are instance spec names.", - "type": "object" - } - }, - "type": "object" - }, - "RegionInstancesRecommendLocationsResponseRecommendation": { - "description": "Instance count recommendation for a single zone.", - "id": "RegionInstancesRecommendLocationsResponseRecommendation", - "properties": { - "instanceCount": { - "description": "Count of instances recommended.", - "format": "int32", - "type": "integer" - } - }, - "type": "object" - }, - "RegionInstancesRecommendLocationsResponseRecommendationsForInstanceSpecs": { - "description": "Instance count recommendations for a single instance specification.", - "id": "RegionInstancesRecommendLocationsResponseRecommendationsForInstanceSpecs", - "properties": { - "locations": { - "additionalProperties": { - "$ref": "RegionInstancesRecommendLocationsResponseRecommendation" - }, - "description": "Instance count recommendations, keys are zone names.", - "type": "object" - } - }, - "type": "object" - }, "RegionInstantSnapshotsExportRequest": { "id": "RegionInstantSnapshotsExportRequest", "properties": { @@ -66483,6 +66404,16 @@ "preemptible": { "description": "Defines whether the instance is preemptible. This can only be set during instance creation or while the instance is stopped and therefore, in a `TERMINATED` state. See Instance Life Cycle for more information on the possible instance states.", "type": "boolean" + }, + "provisioningModel": { + "description": "Specifies the provisioning model of the instance.", + "enum": [ + "SPOT" + ], + "enumDescriptions": [ + "Heavily discounted, no guaranteed runtime." + ], + "type": "string" } }, "type": "object" @@ -67199,6 +67130,10 @@ "$ref": "SecurityPolicyRuleRateLimitOptions", "description": "Must be specified if the action is \"rate_based_ban\" or \"throttle\". Cannot be specified for any other actions." }, + "redirectOptions": { + "$ref": "SecurityPolicyRuleRedirectOptions", + "description": "Parameters defining the redirect action. Cannot be specified for any other actions." + }, "redirectTarget": { "description": "This must be specified for redirect actions. Cannot be specified for any other actions.", "type": "string" @@ -67407,6 +67342,28 @@ }, "type": "object" }, + "SecurityPolicyRuleRedirectOptions": { + "id": "SecurityPolicyRuleRedirectOptions", + "properties": { + "target": { + "description": "Target for the redirect action. This is required if the type is EXTERNAL_302 and cannot be specified for GOOGLE_RECAPTCHA.", + "type": "string" + }, + "type": { + "description": "Type of the redirect action.", + "enum": [ + "EXTERNAL_302", + "GOOGLE_RECAPTCHA" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, "SecuritySettings": { "description": "The authentication and authorization settings for a BackendService.", "id": "SecuritySettings", @@ -68371,6 +68328,14 @@ "description": "[Output Only] The ID value of the disk used to create this snapshot. This value may be used to determine whether the snapshot was taken from the current or a previous instance of a given disk name.", "type": "string" }, + "sourceInstantSnapshot": { + "description": "The source instant snapshot used to create this snapshot. You can provide this as a partial or full URL to the resource. For example, the following are valid values: - https://www.googleapis.com/compute/v1/projects/project/zones/zone /instantSnapshots/instantSnapshot - projects/project/zones/zone/instantSnapshots/instantSnapshot - zones/zone/instantSnapshots/instantSnapshot ", + "type": "string" + }, + "sourceInstantSnapshotId": { + "description": "[Output Only] The unique ID of the instant snapshot used to create this snapshot. This value identifies the exact instant snapshot that was used to create this persistent disk. For example, if you created the persistent disk from an instant snapshot that was later deleted and recreated under the same name, the source instant snapshot ID would identify the exact instant snapshot that was used.", + "type": "string" + }, "status": { "description": "[Output Only] The status of the snapshot. This can be CREATING, DELETING, FAILED, READY, or UPLOADING.", "enum": [ @@ -70224,6 +70189,11 @@ "No Subsetting. Clients may open connections and send traffic to all backends of this backend service. This can lead to performance issues if there is substantial imbalance in the count of clients and backends." ], "type": "string" + }, + "subsetSize": { + "description": "The number of backends per backend group assigned to each proxy instance or each service mesh client. An input parameter to the `CONSISTENT_HASH_SUBSETTING` algorithm. Can only be set if `policy` is set to `CONSISTENT_HASH_SUBSETTING`. Can only be set if load balancing scheme is `INTERNAL_MANAGED` or 'INTERNAL_SELF_MANAGED'. 'subset_size' is optional for Internal HTTP(S) load balancing and required for Traffic Director. If you do not provide this value, Cloud Load Balancing will calculate it dynamically to optimize the number of proxies/clients visible to each backend and vice versa. Must be greater than 0. If `subset_size` is larger than the number of backends/endpoints, then subsetting is disabled.", + "format": "int32", + "type": "integer" } }, "type": "object" diff --git a/discovery/compute-beta.json b/discovery/compute-beta.json index 6ab7029a313..e4a8f64105b 100644 --- a/discovery/compute-beta.json +++ b/discovery/compute-beta.json @@ -18531,7 +18531,7 @@ "regionCommitments": { "methods": { "aggregatedList": { - "description": "Retrieves an aggregated list of commitments.", + "description": "Retrieves an aggregated list of commitments by region.", "flatPath": "projects/{project}/aggregated/commitments", "httpMethod": "GET", "id": "compute.regionCommitments.aggregatedList", @@ -32668,7 +32668,7 @@ "type": "object" }, "Address": { - "description": "Use global external addresses for GFE-based external HTTP(S) load balancers in Premium Tier. Use global internal addresses for reserved peering network range. Use regional external addresses for the following resources: - External IP addresses for VM instances - Regional external forwarding rules - Cloud NAT external IP addresses - GFE based LBs in Standard Tier - Network LBs in Premium or Standard Tier - Cloud VPN gateways (both Classic and HA) Use regional internal IP addresses for subnet IP ranges (primary and secondary). This includes: - Internal IP addresses for VM instances - Alias IP ranges of VM instances (/32 only) - Regional internal forwarding rules - Internal TCP/UDP load balancer addresses - Internal HTTP(S) load balancer addresses - Cloud DNS inbound forwarding IP addresses For more information, read reserved IP address.", + "description": "Use global external addresses for GFE-based external HTTP(S) load balancers in Premium Tier. Use global internal addresses for reserved peering network range. Use regional external addresses for the following resources: - External IP addresses for VM instances - Regional external forwarding rules - Cloud NAT external IP addresses - GFE based LBs in Standard Tier - Network LBs in Premium or Standard Tier - Cloud VPN gateways (both Classic and HA) Use regional internal IP addresses for subnet IP ranges (primary and secondary). This includes: - Internal IP addresses for VM instances - Alias IP ranges of VM instances (/32 only) - Regional internal forwarding rules - Internal TCP/UDP load balancer addresses - Internal HTTP(S) load balancer addresses - Cloud DNS inbound forwarding IP addresses For more information, see Reserving a static external IP address.", "id": "Address", "properties": { "address": { @@ -33400,7 +33400,7 @@ "type": "string" }, "diskType": { - "description": "Specifies the disk type to use to create the instance. If not specified, the default is pd-standard, specified using the full URL. For example: https://www.googleapis.com/compute/v1/projects/project/zones/zone /diskTypes/pd-standard Other values include pd-ssd and local-ssd. If you define this field, you can provide either the full or partial URL. For example, the following are valid values: - https://www.googleapis.com/compute/v1/projects/project/zones/zone /diskTypes/diskType - projects/project/zones/zone/diskTypes/diskType - zones/zone/diskTypes/diskType Note that for InstanceTemplate, this is the name of the disk type, not URL.", + "description": "Specifies the disk type to use to create the instance. If not specified, the default is pd-standard, specified using the full URL. For example: https://www.googleapis.com/compute/v1/projects/project/zones/zone /diskTypes/pd-standard For a full list of acceptable values, see Persistent disk types. If you define this field, you can provide either the full or partial URL. For example, the following are valid values: - https://www.googleapis.com/compute/v1/projects/project/zones/zone /diskTypes/diskType - projects/project/zones/zone/diskTypes/diskType - zones/zone/diskTypes/diskType Note that for InstanceTemplate, this is the name of the disk type, not URL.", "type": "string" }, "guestOsFeatures": { @@ -33436,7 +33436,7 @@ "type": "string" }, "provisionedIops": { - "description": "Indicates how many IOPS must be provisioned for the disk.", + "description": "Indicates how many IOPS to provision for the disk. This sets the number of I/O operations per second that the disk can handle. Values must be between 10,000 and 120,000. For more details, see the Extreme persistent disk documentation.", "format": "int64", "type": "string" }, @@ -34262,7 +34262,7 @@ "type": "string" }, "capacityScaler": { - "description": "A multiplier applied to the backend's target capacity of its balancing mode. The default value is 1, which means the group serves up to 100% of its configured capacity (depending on balancingMode). A setting of 0 means the group is completely drained, offering 0% of its available capacity. The valid ranges are 0.0 and [0.1,1.0]. You cannot configure a setting larger than 0 and smaller than 0.1. You cannot configure a setting of 0 when there is only one backend attached to the backend service. Not supported by: - Internal TCP/UDP Load Balancing - Network Load Balancing", + "description": "A multiplier applied to the backend's target capacity of its balancing mode. The default value is 1, which means the group serves up to 100% of its configured capacity (depending on balancingMode). A setting of 0 means the group is completely drained, offering 0% of its available capacity. The valid ranges are 0.0 and [0.1,1.0]. You cannot configure a setting larger than 0 and smaller than 0.1. You cannot configure a setting of 0 when there is only one backend attached to the backend service.", "format": "float", "type": "number" }, @@ -34275,21 +34275,21 @@ "type": "boolean" }, "group": { - "description": "The fully-qualified URL of an instance group or network endpoint group (NEG) resource. The type of backend that a backend service supports depends on the backend service's loadBalancingScheme. - When the loadBalancingScheme for the backend service is EXTERNAL (except Network Load Balancing), INTERNAL_SELF_MANAGED, or INTERNAL_MANAGED , the backend can be either an instance group or a NEG. The backends on the backend service must be either all instance groups or all NEGs. You cannot mix instance group and NEG backends on the same backend service. - When the loadBalancingScheme for the backend service is EXTERNAL for Network Load Balancing or INTERNAL for Internal TCP/UDP Load Balancing, the backend must be an instance group. NEGs are not supported. For regional services, the backend must be in the same region as the backend service. You must use the *fully-qualified* URL (starting with https://www.googleapis.com/) to specify the instance group or NEG. Partial URLs are not supported.", + "description": "The fully-qualified URL of an instance group or network endpoint group (NEG) resource. To determine what types of backends a load balancer supports, see the [Backend services overview](https://cloud.google.com/load-balancing/docs/backend-service#backends). You must use the *fully-qualified* URL (starting with https://www.googleapis.com/) to specify the instance group or NEG. Partial URLs are not supported.", "type": "string" }, "maxConnections": { - "description": "Defines a target maximum number of simultaneous connections. For usage guidelines, see Connection balancing mode and Utilization balancing mode. Not available if the backend's balancingMode is RATE. Not supported by: - Internal TCP/UDP Load Balancing - Network Load Balancing", + "description": "Defines a target maximum number of simultaneous connections. For usage guidelines, see Connection balancing mode and Utilization balancing mode. Not available if the backend's balancingMode is RATE.", "format": "int32", "type": "integer" }, "maxConnectionsPerEndpoint": { - "description": "Defines a target maximum number of simultaneous connections. For usage guidelines, see Connection balancing mode and Utilization balancing mode. Not available if the backend's balancingMode is RATE. Not supported by: - Internal TCP/UDP Load Balancing - Network Load Balancing.", + "description": "Defines a target maximum number of simultaneous connections. For usage guidelines, see Connection balancing mode and Utilization balancing mode. Not available if the backend's balancingMode is RATE.", "format": "int32", "type": "integer" }, "maxConnectionsPerInstance": { - "description": "Defines a target maximum number of simultaneous connections. For usage guidelines, see Connection balancing mode and Utilization balancing mode. Not available if the backend's balancingMode is RATE. Not supported by: - Internal TCP/UDP Load Balancing - Network Load Balancing.", + "description": "Defines a target maximum number of simultaneous connections. For usage guidelines, see Connection balancing mode and Utilization balancing mode. Not available if the backend's balancingMode is RATE.", "format": "int32", "type": "integer" }, @@ -34328,7 +34328,7 @@ "description": "Cloud CDN configuration for this BackendBucket." }, "compressionMode": { - "description": "Compress text responses using Brotli or gzip compression, based on the client’s Accept-Encoding header.", + "description": "Compress text responses using Brotli or gzip compression, based on the client's Accept-Encoding header.", "enum": [ "AUTOMATIC", "DISABLED" @@ -34631,11 +34631,11 @@ "type": "object" }, "BackendService": { - "description": "Represents a Backend Service resource. A backend service defines how Google Cloud load balancers distribute traffic. The backend service configuration contains a set of values, such as the protocol used to connect to backends, various distribution and session settings, health checks, and timeouts. These settings provide fine-grained control over how your load balancer behaves. Most of the settings have default values that allow for easy configuration if you need to get started quickly. Backend services in Google Compute Engine can be either regionally or globally scoped. * [Global](/compute/docs/reference/rest/beta/backendServices) * [Regional](/compute/docs/reference/rest/beta/regionBackendServices) For more information, see Backend Services.", + "description": "Represents a Backend Service resource. A backend service defines how Google Cloud load balancers distribute traffic. The backend service configuration contains a set of values, such as the protocol used to connect to backends, various distribution and session settings, health checks, and timeouts. These settings provide fine-grained control over how your load balancer behaves. Most of the settings have default values that allow for easy configuration if you need to get started quickly. Backend services in Google Compute Engine can be either regionally or globally scoped. * [Global](https://cloud.google.com/compute/docs/reference/rest/beta/backendServices) * [Regional](https://cloud.google.com/compute/docs/reference/rest/beta/regionBackendServices) For more information, see Backend Services.", "id": "BackendService", "properties": { "affinityCookieTtlSec": { - "description": "Lifetime of cookies in seconds. Only applicable if the loadBalancingScheme is EXTERNAL, INTERNAL_SELF_MANAGED, or INTERNAL_MANAGED, the protocol is HTTP or HTTPS, and the sessionAffinity is GENERATED_COOKIE, or HTTP_COOKIE. If set to 0, the cookie is non-persistent and lasts only until the end of the browser session (or equivalent). The maximum allowed value is one day ( 86,400). Not supported when the backend service is referenced by a URL map that is bound to target gRPC proxy that has validateForProxyless field set to true.", + "description": "Lifetime of cookies in seconds. This setting is applicable to external and internal HTTP(S) load balancers and Traffic Director and requires GENERATED_COOKIE or HTTP_COOKIE session affinity. If set to 0, the cookie is non-persistent and lasts only until the end of the browser session (or equivalent). The maximum allowed value is one day (86,400). Not supported when the backend service is referenced by a URL map that is bound to target gRPC proxy that has validateForProxyless field set to true.", "format": "int32", "type": "integer" }, @@ -34648,13 +34648,13 @@ }, "cdnPolicy": { "$ref": "BackendServiceCdnPolicy", - "description": "Cloud CDN configuration for this BackendService. Only available for external HTTP(S) Load Balancing." + "description": "Cloud CDN configuration for this BackendService. Only available for specified load balancer types." }, "circuitBreakers": { "$ref": "CircuitBreakers" }, "compressionMode": { - "description": "Compress text responses using Brotli or gzip compression, based on the client’s Accept-Encoding header.", + "description": "Compress text responses using Brotli or gzip compression, based on the client's Accept-Encoding header.", "enum": [ "AUTOMATIC", "DISABLED" @@ -34680,14 +34680,14 @@ "type": "string" }, "customRequestHeaders": { - "description": "Headers that the HTTP/S load balancer should add to proxied requests.", + "description": "Headers that the load balancer adds to proxied requests. See [Creating custom headers](https://cloud.google.com/load-balancing/docs/custom-headers).", "items": { "type": "string" }, "type": "array" }, "customResponseHeaders": { - "description": "Headers that the HTTP/S load balancer should add to proxied responses.", + "description": "Headers that the load balancer adds to proxied responses. See [Creating custom headers](https://cloud.google.com/load-balancing/docs/custom-headers).", "items": { "type": "string" }, @@ -34702,12 +34702,12 @@ "type": "string" }, "enableCDN": { - "description": "If true, enables Cloud CDN for the backend service. Only applicable if the loadBalancingScheme is EXTERNAL and the protocol is HTTP or HTTPS.", + "description": "If true, enables Cloud CDN for the backend service of an external HTTP(S) load balancer.", "type": "boolean" }, "failoverPolicy": { "$ref": "BackendServiceFailoverPolicy", - "description": "Applicable only to Failover for Internal TCP/UDP Load Balancing and Network Load Balancing. Requires at least one backend instance group to be defined as a backup (failover) backend." + "description": "Requires at least one backend instance group to be defined as a backup (failover) backend. For load balancers that have configurable failover: [Internal TCP/UDP Load Balancing](https://cloud.google.com/load-balancing/docs/internal/failover-overview) and [external TCP/UDP Load Balancing](/network/networklb-failover-overview)." }, "fingerprint": { "description": "Fingerprint of this resource. A hash of the contents stored in this object. This field is used in optimistic locking. This field will be ignored when inserting a BackendService. An up-to-date fingerprint must be provided in order to update the BackendService, otherwise the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make a get() request to retrieve a BackendService.", @@ -34736,7 +34736,7 @@ "type": "string" }, "loadBalancingScheme": { - "description": "Specifies the load balancer type. Choose EXTERNAL for external HTTP(S), SSL Proxy, TCP Proxy and Network Load Balancing. Choose INTERNAL for Internal TCP/UDP Load Balancing. Choose INTERNAL_MANAGED for Internal HTTP(S) Load Balancing. INTERNAL_SELF_MANAGED for Traffic Director. A backend service created for one type of load balancer cannot be used with another. For more information, refer to Choosing a load balancer.", + "description": "Specifies the load balancer type. A backend service created for one type of load balancer cannot be used with another. For more information, refer to Choosing a load balancer.", "enum": [ "EXTERNAL", "INTERNAL", @@ -34745,7 +34745,7 @@ "INVALID_LOAD_BALANCING_SCHEME" ], "enumDescriptions": [ - "Signifies that this will be used for HTTP(S), SSL Proxy, TCP Proxy or Network Load Balancing", + "Signifies that this will be used for external HTTP(S), SSL Proxy, TCP Proxy, or Network Load Balancing", "Signifies that this will be used for Internal TCP/UDP Load Balancing.", "Signifies that this will be used for Internal HTTP(S) Load Balancing.", "Signifies that this will be used by Traffic Director.", @@ -34797,16 +34797,16 @@ "description": "Settings controlling the eviction of unhealthy hosts from the load balancing pool for the backend service. If not set, this feature is considered disabled. This field is applicable to either: - A regional backend service with the service_protocol set to HTTP, HTTPS, or HTTP2, and load_balancing_scheme set to INTERNAL_MANAGED. - A global backend service with the load_balancing_scheme set to INTERNAL_SELF_MANAGED. Not supported when the backend service is referenced by a URL map that is bound to target gRPC proxy that has validateForProxyless field set to true." }, "port": { - "description": "Deprecated in favor of portName. The TCP port to connect on the backend. The default value is 80. Backend services for Internal TCP/UDP Load Balancing and Network Load Balancing require you omit port.", + "description": "Deprecated in favor of portName. The TCP port to connect on the backend. The default value is 80. For Internal TCP/UDP Load Balancing and Network Load Balancing, omit port.", "format": "int32", "type": "integer" }, "portName": { - "description": "A named port on a backend instance group representing the port for communication to the backend VMs in that group. Required when the loadBalancingScheme is EXTERNAL (except Network Load Balancing), INTERNAL_MANAGED, or INTERNAL_SELF_MANAGED and the backends are instance groups. The named port must be defined on each backend instance group. This parameter has no meaning if the backends are NEGs. Backend services for Internal TCP/UDP Load Balancing and Network Load Balancing require you omit port_name.", + "description": "A named port on a backend instance group representing the port for communication to the backend VMs in that group. The named port must be [defined on each backend instance group](https://cloud.google.com/load-balancing/docs/backend-service#named_ports). This parameter has no meaning if the backends are NEGs. For Internal TCP/UDP Load Balancing and Network Load Balancing, omit port_name.", "type": "string" }, "protocol": { - "description": "The protocol this BackendService uses to communicate with backends. Possible values are HTTP, HTTPS, HTTP2, TCP, SSL, UDP or GRPC. depending on the chosen load balancer or Traffic Director configuration. Refer to the documentation for the load balancer or for Traffic Director for more information. Must be set to GRPC when the backend service is referenced by a URL map that is bound to target gRPC proxy.", + "description": "The protocol this BackendService uses to communicate with backends. Possible values are HTTP, HTTPS, HTTP2, TCP, SSL, UDP or GRPC. depending on the chosen load balancer or Traffic Director configuration. Refer to the documentation for the load balancers or for Traffic Director for more information. Must be set to GRPC when the backend service is referenced by a URL map that is bound to target gRPC proxy.", "enum": [ "GRPC", "HTTP", @@ -34823,8 +34823,8 @@ "HTTP/2 with SSL.", "", "TCP proxying with SSL.", - "TCP proxying or TCP pass-through (Internal TCP/UDP Load Balancing and Network Load Balancing).", - "UDP (available for Internal TCP/UDP Load Balancing and Network Load Balancing).", + "TCP proxying or TCP pass-through.", + "UDP.", "If a Backend Service has UNSPECIFIED as its protocol, it can be used with any L3/L4 Forwarding Rules." ], "type": "string" @@ -34846,7 +34846,7 @@ "type": "string" }, "sessionAffinity": { - "description": "Type of session affinity to use. The default is NONE. When the loadBalancingScheme is EXTERNAL: * For Network Load Balancing, the possible values are NONE, CLIENT_IP, CLIENT_IP_PROTO, or CLIENT_IP_PORT_PROTO. * For all other load balancers that use loadBalancingScheme=EXTERNAL, the possible values are NONE, CLIENT_IP, or GENERATED_COOKIE. * You can use GENERATED_COOKIE if the protocol is HTTP, HTTP2, or HTTPS. When the loadBalancingScheme is INTERNAL, possible values are NONE, CLIENT_IP, CLIENT_IP_PROTO, or CLIENT_IP_PORT_PROTO. When the loadBalancingScheme is INTERNAL_SELF_MANAGED, or INTERNAL_MANAGED, possible values are NONE, CLIENT_IP, GENERATED_COOKIE, HEADER_FIELD, or HTTP_COOKIE. Not supported when the backend service is referenced by a URL map that is bound to target gRPC proxy that has validateForProxyless field set to true.", + "description": "Type of session affinity to use. The default is NONE. For a detailed description of session affinity options, see: [Session affinity](https://cloud.google.com/load-balancing/docs/backend-service#session_affinity). Not supported when the backend service is referenced by a URL map that is bound to target gRPC proxy that has validateForProxyless field set to true.", "enum": [ "CLIENT_IP", "CLIENT_IP_NO_DESTINATION", @@ -35154,7 +35154,7 @@ "type": "object" }, "BackendServiceFailoverPolicy": { - "description": "Applicable only to Failover for Internal TCP/UDP Load Balancing and Network Load Balancing. On failover or failback, this field indicates whether connection draining will be honored. GCP has a fixed connection draining timeout of 10 minutes. A setting of true terminates existing TCP connections to the active pool during failover and failback, immediately draining traffic. A setting of false allows existing TCP connections to persist, even on VMs no longer in the active pool, for up to the duration of the connection draining timeout (10 minutes).", + "description": "For load balancers that have configurable failover: [Internal TCP/UDP Load Balancing](https://cloud.google.com/load-balancing/docs/internal/failover-overview) and [external TCP/UDP Load Balancing](/network/networklb-failover-overview). On failover or failback, this field indicates whether connection draining will be honored. Google Cloud has a fixed connection draining timeout of 10 minutes. A setting of true terminates existing TCP connections to the active pool during failover and failback, immediately draining traffic. A setting of false allows existing TCP connections to persist, even on VMs no longer in the active pool, for up to the duration of the connection draining timeout (10 minutes).", "id": "BackendServiceFailoverPolicy", "properties": { "disableConnectionDrainOnFailover": { @@ -35162,11 +35162,11 @@ "type": "boolean" }, "dropTrafficIfUnhealthy": { - "description": "Applicable only to Failover for Internal TCP/UDP Load Balancing and Network Load Balancing, If set to true, connections to the load balancer are dropped when all primary and all backup backend VMs are unhealthy.If set to false, connections are distributed among all primary VMs when all primary and all backup backend VMs are unhealthy. The default is false.", + "description": "If set to true, connections to the load balancer are dropped when all primary and all backup backend VMs are unhealthy.If set to false, connections are distributed among all primary VMs when all primary and all backup backend VMs are unhealthy. For load balancers that have configurable failover: [Internal TCP/UDP Load Balancing](https://cloud.google.com/load-balancing/docs/internal/failover-overview) and [external TCP/UDP Load Balancing](/network/networklb-failover-overview). The default is false.", "type": "boolean" }, "failoverRatio": { - "description": "Applicable only to Failover for Internal TCP/UDP Load Balancing and Network Load Balancing. The value of the field must be in the range [0, 1]. If the value is 0, the load balancer performs a failover when the number of healthy primary VMs equals zero. For all other values, the load balancer performs a failover when the total number of healthy primary VMs is less than this ratio.", + "description": "The value of the field must be in the range [0, 1]. If the value is 0, the load balancer performs a failover when the number of healthy primary VMs equals zero. For all other values, the load balancer performs a failover when the total number of healthy primary VMs is less than this ratio. For load balancers that have configurable failover: [Internal TCP/UDP Load Balancing](https://cloud.google.com/load-balancing/docs/internal/failover-overview) and [external TCP/UDP Load Balancing](/network/networklb-failover-overview).", "format": "float", "type": "number" } @@ -35730,7 +35730,7 @@ "type": "object" }, "BulkInsertInstanceResource": { - "description": "A transient resource used in compute.instances.bulkInsert and compute.regionInstances.bulkInsert and compute.regionInstances.recommendLocations. This resource is not persisted anywhere, it is used only for processing the requests.", + "description": "A transient resource used in compute.instances.bulkInsert and compute.regionInstances.bulkInsert . This resource is not persisted anywhere, it is used only for processing the requests.", "id": "BulkInsertInstanceResource", "properties": { "count": { @@ -35752,7 +35752,7 @@ "type": "string" }, "namePattern": { - "description": "The string pattern used for the names of the VMs. Either name_pattern or per_instance_properties must be set. The pattern should contain one continuous sequence of placeholder hash characters (#) with each character corresponding to one digit of the generated instance name. Example: name_pattern of inst-#### will generate instance names such as inst-0001, inst-0002, ... . If there already exist instance(s) whose names match the name pattern in the same project and zone, then the generated instance numbers will start after the biggest existing number. For example, if there exists an instance with name inst-0050, then instance names generated using the pattern inst-#### will be inst-0051, inst-0052, etc. The name pattern placeholder # ...# can contain up to 18 characters.", + "description": "The string pattern used for the names of the VMs. Either name_pattern or per_instance_properties must be set. The pattern must contain one continuous sequence of placeholder hash characters (#) with each character corresponding to one digit of the generated instance name. Example: a name_pattern of inst-#### generates instance names such as inst-0001 and inst-0002. If existing instances in the same project and zone have names that match the name pattern then the generated instance numbers start after the biggest existing number. For example, if there exists an instance with name inst-0050, then instance names generated using the pattern inst-#### begin with inst-0051. The name pattern placeholder #...# can contain up to 18 characters.", "type": "string" }, "perInstanceProperties": { @@ -35841,7 +35841,7 @@ "type": "object" }, "CircuitBreakers": { - "description": "Settings controlling the volume of connections to a backend service.", + "description": "Settings controlling the volume of requests, connections and retries to this backend service.", "id": "CircuitBreakers", "properties": { "connectTimeout": { @@ -36739,7 +36739,7 @@ "type": "string" }, "provisionedIops": { - "description": "Indicates how many IOPS must be provisioned for the disk.", + "description": "Indicates how many IOPS to provision for the disk. This sets the number of I/O operations per second that the disk can handle. Values must be between 10,000 and 120,000. For more details, see the Extreme persistent disk documentation.", "format": "int64", "type": "string" }, @@ -36841,7 +36841,7 @@ "type": "string" }, "type": { - "description": "URL of the disk type resource describing which disk type to use to create the disk. Provide this when creating the disk. For example: projects/project /zones/zone/diskTypes/pd-standard or pd-ssd", + "description": "URL of the disk type resource describing which disk type to use to create the disk. Provide this when creating the disk. For example: projects/project /zones/zone/diskTypes/pd-ssd . See Persistent disk types.", "type": "string" }, "users": { @@ -37548,7 +37548,7 @@ "id": "DisksAddResourcePoliciesRequest", "properties": { "resourcePolicies": { - "description": "Resource policies to be added to this disk. Currently you can only specify one policy here.", + "description": "Full or relative path to the resource policy to be added to this disk. You can only specify one resource policy.", "items": { "type": "string" }, @@ -37943,7 +37943,7 @@ "type": "string" }, "interfaces": { - "description": "List of interfaces for this external VPN gateway. If your peer-side gateway is an on-premises gateway and non-AWS cloud providers’ gateway, at most two interfaces can be provided for an external VPN gateway. If your peer side is an AWS virtual private gateway, four interfaces should be provided for an external VPN gateway.", + "description": "List of interfaces for this external VPN gateway. If your peer-side gateway is an on-premises gateway and non-AWS cloud providers' gateway, at most two interfaces can be provided for an external VPN gateway. If your peer side is an AWS virtual private gateway, four interfaces should be provided for an external VPN gateway.", "items": { "$ref": "ExternalVpnGatewayInterface" }, @@ -39520,7 +39520,7 @@ "type": "string" }, "queryPath": { - "description": "The path to be queried. This can be the default namespace ('/') or a nested namespace ('/\\/') or a specified key ('/\\/\\')", + "description": "The path to be queried. This can be the default namespace ('') or a nested namespace ('\\/') or a specified key ('\\/\\').", "type": "string" }, "queryValue": { @@ -40028,7 +40028,7 @@ "type": "array" }, "healthStatusAggregationPolicy": { - "description": "Optional. Policy for how the results from multiple health checks for the same endpoint are aggregated. Defaults to NO_AGGREGATION if unspecified. - NO_AGGREGATION. An EndpointHealth message is returned for each backend in the health check service. - AND. If any backend's health check reports UNHEALTHY, then UNHEALTHY is the HealthState of the entire health check service. If all backend's are healthy, the HealthState of the health check service is HEALTHY. .", + "description": "Optional. Policy for how the results from multiple health checks for the same endpoint are aggregated. Defaults to NO_AGGREGATION if unspecified. - NO_AGGREGATION. An EndpointHealth message is returned for each pair in the health check service. - AND. If any health check of an endpoint reports UNHEALTHY, then UNHEALTHY is the HealthState of the endpoint. If all health checks report HEALTHY, the HealthState of the endpoint is HEALTHY. .", "enum": [ "AND", "NO_AGGREGATION" @@ -40986,7 +40986,7 @@ "description": "Specifies a non-zero timeout per retry attempt. If not specified, will use the timeout set in HttpRouteAction. If timeout in HttpRouteAction is not set, will use the largest timeout among all backend services associated with the route." }, "retryConditions": { - "description": "Specifies one or more conditions when this retry rule applies. Valid values are: - 5xx: Loadbalancer will attempt a retry if the backend service responds with any 5xx response code, or if the backend service does not respond at all, example: disconnects, reset, read timeout, connection failure, and refused streams. - gateway-error: Similar to 5xx, but only applies to response codes 502, 503 or 504. - - connect-failure: Loadbalancer will retry on failures connecting to backend services, for example due to connection timeouts. - retriable-4xx: Loadbalancer will retry for retriable 4xx response codes. Currently the only retriable error supported is 409. - refused-stream:Loadbalancer will retry if the backend service resets the stream with a REFUSED_STREAM error code. This reset type indicates that it is safe to retry. - cancelledLoadbalancer will retry if the gRPC status code in the response header is set to cancelled - deadline-exceeded: Loadbalancer will retry if the gRPC status code in the response header is set to deadline-exceeded - resource-exhausted: Loadbalancer will retry if the gRPC status code in the response header is set to resource-exhausted - unavailable: Loadbalancer will retry if the gRPC status code in the response header is set to unavailable ", + "description": "Specifies one or more conditions when this retry policy applies. Valid values are: - 5xx: Retry will be attempted if the instance or endpoint responds with any 5xx response code, or if the instance or endpoint does not respond at all, example: disconnects, reset, read timeout, connection failure, and refused streams. - gateway-error: Similar to 5xx, but only applies to response codes 502, 503 or 504. - - connect-failure: A retry will be attempted on failures connecting to the instance or endpoint, for example due to connection timeouts. - retriable-4xx: A retry will be attempted if the instance or endpoint responds with a retriable 4xx response code. Currently the only retriable error supported is 409. - refused-stream: A retry will be attempted if the instance or endpoint resets the stream with a REFUSED_STREAM error code. This reset type indicates that it is safe to retry. - cancelled: A retry will be attempted if the gRPC status code in the response header is set to cancelled. - deadline-exceeded: A retry will be attempted if the gRPC status code in the response header is set to deadline-exceeded. - internal: A retry will be attempted if the gRPC status code in the response header is set to internal. - resource-exhausted: A retry will be attempted if the gRPC status code in the response header is set to resource-exhausted. - unavailable: A retry will be attempted if the gRPC status code in the response header is set to unavailable. ", "items": { "type": "string" }, @@ -42367,7 +42367,7 @@ "type": "object" }, "InstanceGroupManager": { - "description": "Whether the instance is a standby. # Properties of a standby instance comparing to the regular instance: # | regular | standby managed by IGM? | yes | yes added to the IG? | yes | yes counts towards IGM's target size? | yes | no taken into account by Autoscaler? | yes | no # receives traffic from LB? | yes | no Represents a Managed Instance Group resource. An instance group is a collection of VM instances that you can manage as a single entity. For more information, read Instance groups. For zonal Managed Instance Group, use the instanceGroupManagers resource. For regional Managed Instance Group, use the regionInstanceGroupManagers resource.", + "description": "Represents a Managed Instance Group resource. An instance group is a collection of VM instances that you can manage as a single entity. For more information, read Instance groups. For zonal Managed Instance Group, use the instanceGroupManagers resource. For regional Managed Instance Group, use the regionInstanceGroupManagers resource.", "id": "InstanceGroupManager", "properties": { "autoHealingPolicies": { @@ -57474,6 +57474,10 @@ "description": "Denotes whether to enable logging for a particular rule. If logging is enabled, logs will be exported to the configured export destination in Stackdriver. Logs may be exported to BigQuery or Pub/Sub. Note: you cannot enable logging on \"goto_next\" rules. This field may only be specified when the versioned_expr is set to FIREWALL.", "type": "boolean" }, + "headerAction": { + "$ref": "SecurityPolicyRuleHttpHeaderAction", + "description": "Optional, additional actions that are performed on headers." + }, "kind": { "default": "compute#securityPolicyRule", "description": "[Output only] Type of the resource. Always compute#securityPolicyRule for security policy rules", @@ -57492,6 +57496,10 @@ "format": "int32", "type": "integer" }, + "redirectOptions": { + "$ref": "SecurityPolicyRuleRedirectOptions", + "description": "Parameters defining the redirect action. Cannot be specified for any other actions." + }, "ruleNumber": { "description": "Identifier for the rule. This is only unique within the given security policy. This can only be set during rule creation, if rule number is not specified it will be generated by the server.", "format": "int64", @@ -57519,6 +57527,33 @@ }, "type": "object" }, + "SecurityPolicyRuleHttpHeaderAction": { + "id": "SecurityPolicyRuleHttpHeaderAction", + "properties": { + "requestHeadersToAdds": { + "description": "The list of request headers to add or overwrite if they're already present.", + "items": { + "$ref": "SecurityPolicyRuleHttpHeaderActionHttpHeaderOption" + }, + "type": "array" + } + }, + "type": "object" + }, + "SecurityPolicyRuleHttpHeaderActionHttpHeaderOption": { + "id": "SecurityPolicyRuleHttpHeaderActionHttpHeaderOption", + "properties": { + "headerName": { + "description": "The name of the header to set.", + "type": "string" + }, + "headerValue": { + "description": "The value to set the named header to.", + "type": "string" + } + }, + "type": "object" + }, "SecurityPolicyRuleMatcher": { "description": "Represents a match condition that incoming traffic is evaluated against. Exactly one field must be specified.", "id": "SecurityPolicyRuleMatcher", @@ -57590,6 +57625,28 @@ }, "type": "object" }, + "SecurityPolicyRuleRedirectOptions": { + "id": "SecurityPolicyRuleRedirectOptions", + "properties": { + "target": { + "description": "Target for the redirect action. This is required if the type is EXTERNAL_302 and cannot be specified for GOOGLE_RECAPTCHA.", + "type": "string" + }, + "type": { + "description": "Type of the redirect action.", + "enum": [ + "EXTERNAL_302", + "GOOGLE_RECAPTCHA" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, "SecuritySettings": { "description": "The authentication and authorization settings for a BackendService.", "id": "SecuritySettings", diff --git a/discovery/compute-v1.json b/discovery/compute-v1.json index 2f9a2a57dd3..7e4056364da 100644 --- a/discovery/compute-v1.json +++ b/discovery/compute-v1.json @@ -15978,7 +15978,7 @@ "regionCommitments": { "methods": { "aggregatedList": { - "description": "Retrieves an aggregated list of commitments.", + "description": "Retrieves an aggregated list of commitments by region.", "flatPath": "projects/{project}/aggregated/commitments", "httpMethod": "GET", "id": "compute.regionCommitments.aggregatedList", @@ -22408,6 +22408,453 @@ } } }, + "serviceAttachments": { + "methods": { + "aggregatedList": { + "description": "Retrieves the list of all ServiceAttachment resources, regional and global, available to the specified project.", + "flatPath": "projects/{project}/aggregated/serviceAttachments", + "httpMethod": "GET", + "id": "compute.serviceAttachments.aggregatedList", + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```", + "location": "query", + "type": "string" + }, + "includeAllScopes": { + "description": "Indicates whether every visible scope for each scope type (zone, region, global) should be included in the response. For new resource types added after this field, the flag has no effect as new resource types will always include every visible scope for each scope type in response. For resource types which predate this field, if this flag is omitted or false, only scopes of the scope types where the resource type is expected to be found will be included.", + "location": "query", + "type": "boolean" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Name of the project scoping this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "location": "query", + "type": "boolean" + } + }, + "path": "projects/{project}/aggregated/serviceAttachments", + "response": { + "$ref": "ServiceAttachmentAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "delete": { + "description": "Deletes the specified ServiceAttachment in the given scope", + "flatPath": "projects/{project}/regions/{region}/serviceAttachments/{serviceAttachment}", + "httpMethod": "DELETE", + "id": "compute.serviceAttachments.delete", + "parameterOrder": [ + "project", + "region", + "serviceAttachment" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region of this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). end_interface: MixerMutationRequestBuilder", + "location": "query", + "type": "string" + }, + "serviceAttachment": { + "description": "Name of the ServiceAttachment resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/regions/{region}/serviceAttachments/{serviceAttachment}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified ServiceAttachment resource in the given scope.", + "flatPath": "projects/{project}/regions/{region}/serviceAttachments/{serviceAttachment}", + "httpMethod": "GET", + "id": "compute.serviceAttachments.get", + "parameterOrder": [ + "project", + "region", + "serviceAttachment" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region of this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "serviceAttachment": { + "description": "Name of the ServiceAttachment resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/regions/{region}/serviceAttachments/{serviceAttachment}", + "response": { + "$ref": "ServiceAttachment" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "getIamPolicy": { + "description": "Gets the access control policy for a resource. May be empty if no such policy or resource exists.", + "flatPath": "projects/{project}/regions/{region}/serviceAttachments/{resource}/getIamPolicy", + "httpMethod": "GET", + "id": "compute.serviceAttachments.getIamPolicy", + "parameterOrder": [ + "project", + "region", + "resource" + ], + "parameters": { + "optionsRequestedPolicyVersion": { + "description": "Requested IAM Policy version.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "The name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name or id of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/regions/{region}/serviceAttachments/{resource}/getIamPolicy", + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "description": "Creates a ServiceAttachment in the specified project in the given scope using the parameters that are included in the request.", + "flatPath": "projects/{project}/regions/{region}/serviceAttachments", + "httpMethod": "POST", + "id": "compute.serviceAttachments.insert", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region of this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). end_interface: MixerMutationRequestBuilder", + "location": "query", + "type": "string" + } + }, + "path": "projects/{project}/regions/{region}/serviceAttachments", + "request": { + "$ref": "ServiceAttachment" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Lists the ServiceAttachments for a project in the given scope.", + "flatPath": "projects/{project}/regions/{region}/serviceAttachments", + "httpMethod": "GET", + "id": "compute.serviceAttachments.list", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region of this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "location": "query", + "type": "boolean" + } + }, + "path": "projects/{project}/regions/{region}/serviceAttachments", + "response": { + "$ref": "ServiceAttachmentList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "description": "Patches the specified ServiceAttachment resource with the data included in the request. This method supports PATCH semantics and uses JSON merge patch format and processing rules.", + "flatPath": "projects/{project}/regions/{region}/serviceAttachments/{serviceAttachment}", + "httpMethod": "PATCH", + "id": "compute.serviceAttachments.patch", + "parameterOrder": [ + "project", + "region", + "serviceAttachment" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "The region scoping this request and should conform to RFC1035.", + "location": "path", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). end_interface: MixerMutationRequestBuilder", + "location": "query", + "type": "string" + }, + "serviceAttachment": { + "description": "The resource id of the ServiceAttachment to patch. It should conform to RFC1035 resource name or be a string form on an unsigned long number.", + "location": "path", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/regions/{region}/serviceAttachments/{serviceAttachment}", + "request": { + "$ref": "ServiceAttachment" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setIamPolicy": { + "description": "Sets the access control policy on the specified resource. Replaces any existing policy.", + "flatPath": "projects/{project}/regions/{region}/serviceAttachments/{resource}/setIamPolicy", + "httpMethod": "POST", + "id": "compute.serviceAttachments.setIamPolicy", + "parameterOrder": [ + "project", + "region", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "The name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name or id of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/regions/{region}/serviceAttachments/{resource}/setIamPolicy", + "request": { + "$ref": "RegionSetPolicyRequest" + }, + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "flatPath": "projects/{project}/regions/{region}/serviceAttachments/{resource}/testIamPermissions", + "httpMethod": "POST", + "id": "compute.serviceAttachments.testIamPermissions", + "parameterOrder": [ + "project", + "region", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "The name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "resource": { + "description": "Name or id of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/regions/{region}/serviceAttachments/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } + }, "snapshots": { "methods": { "delete": { @@ -28211,7 +28658,7 @@ "type": "object" }, "Address": { - "description": "Use global external addresses for GFE-based external HTTP(S) load balancers in Premium Tier. Use global internal addresses for reserved peering network range. Use regional external addresses for the following resources: - External IP addresses for VM instances - Regional external forwarding rules - Cloud NAT external IP addresses - GFE based LBs in Standard Tier - Network LBs in Premium or Standard Tier - Cloud VPN gateways (both Classic and HA) Use regional internal IP addresses for subnet IP ranges (primary and secondary). This includes: - Internal IP addresses for VM instances - Alias IP ranges of VM instances (/32 only) - Regional internal forwarding rules - Internal TCP/UDP load balancer addresses - Internal HTTP(S) load balancer addresses - Cloud DNS inbound forwarding IP addresses For more information, read reserved IP address.", + "description": "Use global external addresses for GFE-based external HTTP(S) load balancers in Premium Tier. Use global internal addresses for reserved peering network range. Use regional external addresses for the following resources: - External IP addresses for VM instances - Regional external forwarding rules - Cloud NAT external IP addresses - GFE based LBs in Standard Tier - Network LBs in Premium or Standard Tier - Cloud VPN gateways (both Classic and HA) Use regional internal IP addresses for subnet IP ranges (primary and secondary). This includes: - Internal IP addresses for VM instances - Alias IP ranges of VM instances (/32 only) - Regional internal forwarding rules - Internal TCP/UDP load balancer addresses - Internal HTTP(S) load balancer addresses - Cloud DNS inbound forwarding IP addresses For more information, see Reserving a static external IP address.", "id": "Address", "properties": { "address": { @@ -28916,7 +29363,7 @@ "type": "string" }, "diskType": { - "description": "Specifies the disk type to use to create the instance. If not specified, the default is pd-standard, specified using the full URL. For example: https://www.googleapis.com/compute/v1/projects/project/zones/zone /diskTypes/pd-standard Other values include pd-ssd and local-ssd. If you define this field, you can provide either the full or partial URL. For example, the following are valid values: - https://www.googleapis.com/compute/v1/projects/project/zones/zone /diskTypes/diskType - projects/project/zones/zone/diskTypes/diskType - zones/zone/diskTypes/diskType Note that for InstanceTemplate, this is the name of the disk type, not URL.", + "description": "Specifies the disk type to use to create the instance. If not specified, the default is pd-standard, specified using the full URL. For example: https://www.googleapis.com/compute/v1/projects/project/zones/zone /diskTypes/pd-standard For a full list of acceptable values, see Persistent disk types. If you define this field, you can provide either the full or partial URL. For example, the following are valid values: - https://www.googleapis.com/compute/v1/projects/project/zones/zone /diskTypes/diskType - projects/project/zones/zone/diskTypes/diskType - zones/zone/diskTypes/diskType Note that for InstanceTemplate, this is the name of the disk type, not URL.", "type": "string" }, "labels": { @@ -28941,7 +29388,7 @@ "type": "string" }, "provisionedIops": { - "description": "Indicates how many IOPS must be provisioned for the disk.", + "description": "Indicates how many IOPS to provision for the disk. This sets the number of I/O operations per second that the disk can handle. Values must be between 10,000 and 120,000. For more details, see the Extreme persistent disk documentation.", "format": "int64", "type": "string" }, @@ -29746,7 +30193,7 @@ "type": "string" }, "capacityScaler": { - "description": "A multiplier applied to the backend's target capacity of its balancing mode. The default value is 1, which means the group serves up to 100% of its configured capacity (depending on balancingMode). A setting of 0 means the group is completely drained, offering 0% of its available capacity. The valid ranges are 0.0 and [0.1,1.0]. You cannot configure a setting larger than 0 and smaller than 0.1. You cannot configure a setting of 0 when there is only one backend attached to the backend service. Not supported by: - Internal TCP/UDP Load Balancing - Network Load Balancing", + "description": "A multiplier applied to the backend's target capacity of its balancing mode. The default value is 1, which means the group serves up to 100% of its configured capacity (depending on balancingMode). A setting of 0 means the group is completely drained, offering 0% of its available capacity. The valid ranges are 0.0 and [0.1,1.0]. You cannot configure a setting larger than 0 and smaller than 0.1. You cannot configure a setting of 0 when there is only one backend attached to the backend service.", "format": "float", "type": "number" }, @@ -29759,21 +30206,21 @@ "type": "boolean" }, "group": { - "description": "The fully-qualified URL of an instance group or network endpoint group (NEG) resource. The type of backend that a backend service supports depends on the backend service's loadBalancingScheme. - When the loadBalancingScheme for the backend service is EXTERNAL (except Network Load Balancing), INTERNAL_SELF_MANAGED, or INTERNAL_MANAGED , the backend can be either an instance group or a NEG. The backends on the backend service must be either all instance groups or all NEGs. You cannot mix instance group and NEG backends on the same backend service. - When the loadBalancingScheme for the backend service is EXTERNAL for Network Load Balancing or INTERNAL for Internal TCP/UDP Load Balancing, the backend must be an instance group. NEGs are not supported. For regional services, the backend must be in the same region as the backend service. You must use the *fully-qualified* URL (starting with https://www.googleapis.com/) to specify the instance group or NEG. Partial URLs are not supported.", + "description": "The fully-qualified URL of an instance group or network endpoint group (NEG) resource. To determine what types of backends a load balancer supports, see the [Backend services overview](https://cloud.google.com/load-balancing/docs/backend-service#backends). You must use the *fully-qualified* URL (starting with https://www.googleapis.com/) to specify the instance group or NEG. Partial URLs are not supported.", "type": "string" }, "maxConnections": { - "description": "Defines a target maximum number of simultaneous connections. For usage guidelines, see Connection balancing mode and Utilization balancing mode. Not available if the backend's balancingMode is RATE. Not supported by: - Internal TCP/UDP Load Balancing - Network Load Balancing", + "description": "Defines a target maximum number of simultaneous connections. For usage guidelines, see Connection balancing mode and Utilization balancing mode. Not available if the backend's balancingMode is RATE.", "format": "int32", "type": "integer" }, "maxConnectionsPerEndpoint": { - "description": "Defines a target maximum number of simultaneous connections. For usage guidelines, see Connection balancing mode and Utilization balancing mode. Not available if the backend's balancingMode is RATE. Not supported by: - Internal TCP/UDP Load Balancing - Network Load Balancing.", + "description": "Defines a target maximum number of simultaneous connections. For usage guidelines, see Connection balancing mode and Utilization balancing mode. Not available if the backend's balancingMode is RATE.", "format": "int32", "type": "integer" }, "maxConnectionsPerInstance": { - "description": "Defines a target maximum number of simultaneous connections. For usage guidelines, see Connection balancing mode and Utilization balancing mode. Not available if the backend's balancingMode is RATE. Not supported by: - Internal TCP/UDP Load Balancing - Network Load Balancing.", + "description": "Defines a target maximum number of simultaneous connections. For usage guidelines, see Connection balancing mode and Utilization balancing mode. Not available if the backend's balancingMode is RATE.", "format": "int32", "type": "integer" }, @@ -30074,11 +30521,11 @@ "type": "object" }, "BackendService": { - "description": "Represents a Backend Service resource. A backend service defines how Google Cloud load balancers distribute traffic. The backend service configuration contains a set of values, such as the protocol used to connect to backends, various distribution and session settings, health checks, and timeouts. These settings provide fine-grained control over how your load balancer behaves. Most of the settings have default values that allow for easy configuration if you need to get started quickly. Backend services in Google Compute Engine can be either regionally or globally scoped. * [Global](/compute/docs/reference/rest/v1/backendServices) * [Regional](/compute/docs/reference/rest/v1/regionBackendServices) For more information, see Backend Services.", + "description": "Represents a Backend Service resource. A backend service defines how Google Cloud load balancers distribute traffic. The backend service configuration contains a set of values, such as the protocol used to connect to backends, various distribution and session settings, health checks, and timeouts. These settings provide fine-grained control over how your load balancer behaves. Most of the settings have default values that allow for easy configuration if you need to get started quickly. Backend services in Google Compute Engine can be either regionally or globally scoped. * [Global](https://cloud.google.com/compute/docs/reference/rest/v1/backendServices) * [Regional](https://cloud.google.com/compute/docs/reference/rest/v1/regionBackendServices) For more information, see Backend Services.", "id": "BackendService", "properties": { "affinityCookieTtlSec": { - "description": "Lifetime of cookies in seconds. Only applicable if the loadBalancingScheme is EXTERNAL, INTERNAL_SELF_MANAGED, or INTERNAL_MANAGED, the protocol is HTTP or HTTPS, and the sessionAffinity is GENERATED_COOKIE, or HTTP_COOKIE. If set to 0, the cookie is non-persistent and lasts only until the end of the browser session (or equivalent). The maximum allowed value is one day ( 86,400). Not supported when the backend service is referenced by a URL map that is bound to target gRPC proxy that has validateForProxyless field set to true.", + "description": "Lifetime of cookies in seconds. This setting is applicable to external and internal HTTP(S) load balancers and Traffic Director and requires GENERATED_COOKIE or HTTP_COOKIE session affinity. If set to 0, the cookie is non-persistent and lasts only until the end of the browser session (or equivalent). The maximum allowed value is one day (86,400). Not supported when the backend service is referenced by a URL map that is bound to target gRPC proxy that has validateForProxyless field set to true.", "format": "int32", "type": "integer" }, @@ -30091,7 +30538,7 @@ }, "cdnPolicy": { "$ref": "BackendServiceCdnPolicy", - "description": "Cloud CDN configuration for this BackendService. Only available for external HTTP(S) Load Balancing." + "description": "Cloud CDN configuration for this BackendService. Only available for specified load balancer types." }, "circuitBreakers": { "$ref": "CircuitBreakers" @@ -30108,14 +30555,14 @@ "type": "string" }, "customRequestHeaders": { - "description": "Headers that the HTTP/S load balancer should add to proxied requests.", + "description": "Headers that the load balancer adds to proxied requests. See [Creating custom headers](https://cloud.google.com/load-balancing/docs/custom-headers).", "items": { "type": "string" }, "type": "array" }, "customResponseHeaders": { - "description": "Headers that the HTTP/S load balancer should add to proxied responses.", + "description": "Headers that the load balancer adds to proxied responses. See [Creating custom headers](https://cloud.google.com/load-balancing/docs/custom-headers).", "items": { "type": "string" }, @@ -30126,12 +30573,12 @@ "type": "string" }, "enableCDN": { - "description": "If true, enables Cloud CDN for the backend service. Only applicable if the loadBalancingScheme is EXTERNAL and the protocol is HTTP or HTTPS.", + "description": "If true, enables Cloud CDN for the backend service of an external HTTP(S) load balancer.", "type": "boolean" }, "failoverPolicy": { "$ref": "BackendServiceFailoverPolicy", - "description": "Applicable only to Failover for Internal TCP/UDP Load Balancing and Network Load Balancing. Requires at least one backend instance group to be defined as a backup (failover) backend." + "description": "Requires at least one backend instance group to be defined as a backup (failover) backend. For load balancers that have configurable failover: [Internal TCP/UDP Load Balancing](https://cloud.google.com/load-balancing/docs/internal/failover-overview) and [external TCP/UDP Load Balancing](/network/networklb-failover-overview)." }, "fingerprint": { "description": "Fingerprint of this resource. A hash of the contents stored in this object. This field is used in optimistic locking. This field will be ignored when inserting a BackendService. An up-to-date fingerprint must be provided in order to update the BackendService, otherwise the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make a get() request to retrieve a BackendService.", @@ -30160,7 +30607,7 @@ "type": "string" }, "loadBalancingScheme": { - "description": "Specifies the load balancer type. Choose EXTERNAL for external HTTP(S), SSL Proxy, TCP Proxy and Network Load Balancing. Choose INTERNAL for Internal TCP/UDP Load Balancing. Choose INTERNAL_MANAGED for Internal HTTP(S) Load Balancing. INTERNAL_SELF_MANAGED for Traffic Director. A backend service created for one type of load balancer cannot be used with another. For more information, refer to Choosing a load balancer.", + "description": "Specifies the load balancer type. A backend service created for one type of load balancer cannot be used with another. For more information, refer to Choosing a load balancer.", "enum": [ "EXTERNAL", "INTERNAL", @@ -30169,7 +30616,7 @@ "INVALID_LOAD_BALANCING_SCHEME" ], "enumDescriptions": [ - "Signifies that this will be used for HTTP(S), SSL Proxy, TCP Proxy or Network Load Balancing", + "Signifies that this will be used for external HTTP(S), SSL Proxy, TCP Proxy, or Network Load Balancing", "Signifies that this will be used for Internal TCP/UDP Load Balancing.", "Signifies that this will be used for Internal HTTP(S) Load Balancing.", "Signifies that this will be used by Traffic Director.", @@ -30221,16 +30668,16 @@ "description": "Settings controlling the eviction of unhealthy hosts from the load balancing pool for the backend service. If not set, this feature is considered disabled. This field is applicable to either: - A regional backend service with the service_protocol set to HTTP, HTTPS, or HTTP2, and load_balancing_scheme set to INTERNAL_MANAGED. - A global backend service with the load_balancing_scheme set to INTERNAL_SELF_MANAGED. Not supported when the backend service is referenced by a URL map that is bound to target gRPC proxy that has validateForProxyless field set to true." }, "port": { - "description": "Deprecated in favor of portName. The TCP port to connect on the backend. The default value is 80. Backend services for Internal TCP/UDP Load Balancing and Network Load Balancing require you omit port.", + "description": "Deprecated in favor of portName. The TCP port to connect on the backend. The default value is 80. For Internal TCP/UDP Load Balancing and Network Load Balancing, omit port.", "format": "int32", "type": "integer" }, "portName": { - "description": "A named port on a backend instance group representing the port for communication to the backend VMs in that group. Required when the loadBalancingScheme is EXTERNAL (except Network Load Balancing), INTERNAL_MANAGED, or INTERNAL_SELF_MANAGED and the backends are instance groups. The named port must be defined on each backend instance group. This parameter has no meaning if the backends are NEGs. Backend services for Internal TCP/UDP Load Balancing and Network Load Balancing require you omit port_name.", + "description": "A named port on a backend instance group representing the port for communication to the backend VMs in that group. The named port must be [defined on each backend instance group](https://cloud.google.com/load-balancing/docs/backend-service#named_ports). This parameter has no meaning if the backends are NEGs. For Internal TCP/UDP Load Balancing and Network Load Balancing, omit port_name.", "type": "string" }, "protocol": { - "description": "The protocol this BackendService uses to communicate with backends. Possible values are HTTP, HTTPS, HTTP2, TCP, SSL, UDP or GRPC. depending on the chosen load balancer or Traffic Director configuration. Refer to the documentation for the load balancer or for Traffic Director for more information. Must be set to GRPC when the backend service is referenced by a URL map that is bound to target gRPC proxy.", + "description": "The protocol this BackendService uses to communicate with backends. Possible values are HTTP, HTTPS, HTTP2, TCP, SSL, UDP or GRPC. depending on the chosen load balancer or Traffic Director configuration. Refer to the documentation for the load balancers or for Traffic Director for more information. Must be set to GRPC when the backend service is referenced by a URL map that is bound to target gRPC proxy.", "enum": [ "GRPC", "HTTP", @@ -30246,8 +30693,8 @@ "HTTP/2 with SSL.", "", "TCP proxying with SSL.", - "TCP proxying or TCP pass-through (Internal TCP/UDP Load Balancing and Network Load Balancing).", - "UDP (available for Internal TCP/UDP Load Balancing and Network Load Balancing)." + "TCP proxying or TCP pass-through.", + "UDP." ], "type": "string" }, @@ -30268,7 +30715,7 @@ "type": "string" }, "sessionAffinity": { - "description": "Type of session affinity to use. The default is NONE. When the loadBalancingScheme is EXTERNAL: * For Network Load Balancing, the possible values are NONE, CLIENT_IP, CLIENT_IP_PROTO, or CLIENT_IP_PORT_PROTO. * For all other load balancers that use loadBalancingScheme=EXTERNAL, the possible values are NONE, CLIENT_IP, or GENERATED_COOKIE. * You can use GENERATED_COOKIE if the protocol is HTTP, HTTP2, or HTTPS. When the loadBalancingScheme is INTERNAL, possible values are NONE, CLIENT_IP, CLIENT_IP_PROTO, or CLIENT_IP_PORT_PROTO. When the loadBalancingScheme is INTERNAL_SELF_MANAGED, or INTERNAL_MANAGED, possible values are NONE, CLIENT_IP, GENERATED_COOKIE, HEADER_FIELD, or HTTP_COOKIE. Not supported when the backend service is referenced by a URL map that is bound to target gRPC proxy that has validateForProxyless field set to true.", + "description": "Type of session affinity to use. The default is NONE. For a detailed description of session affinity options, see: [Session affinity](https://cloud.google.com/load-balancing/docs/backend-service#session_affinity). Not supported when the backend service is referenced by a URL map that is bound to target gRPC proxy that has validateForProxyless field set to true.", "enum": [ "CLIENT_IP", "CLIENT_IP_NO_DESTINATION", @@ -30533,7 +30980,7 @@ "type": "object" }, "BackendServiceFailoverPolicy": { - "description": "Applicable only to Failover for Internal TCP/UDP Load Balancing and Network Load Balancing. On failover or failback, this field indicates whether connection draining will be honored. GCP has a fixed connection draining timeout of 10 minutes. A setting of true terminates existing TCP connections to the active pool during failover and failback, immediately draining traffic. A setting of false allows existing TCP connections to persist, even on VMs no longer in the active pool, for up to the duration of the connection draining timeout (10 minutes).", + "description": "For load balancers that have configurable failover: [Internal TCP/UDP Load Balancing](https://cloud.google.com/load-balancing/docs/internal/failover-overview) and [external TCP/UDP Load Balancing](/network/networklb-failover-overview). On failover or failback, this field indicates whether connection draining will be honored. Google Cloud has a fixed connection draining timeout of 10 minutes. A setting of true terminates existing TCP connections to the active pool during failover and failback, immediately draining traffic. A setting of false allows existing TCP connections to persist, even on VMs no longer in the active pool, for up to the duration of the connection draining timeout (10 minutes).", "id": "BackendServiceFailoverPolicy", "properties": { "disableConnectionDrainOnFailover": { @@ -30541,11 +30988,11 @@ "type": "boolean" }, "dropTrafficIfUnhealthy": { - "description": "Applicable only to Failover for Internal TCP/UDP Load Balancing and Network Load Balancing, If set to true, connections to the load balancer are dropped when all primary and all backup backend VMs are unhealthy.If set to false, connections are distributed among all primary VMs when all primary and all backup backend VMs are unhealthy. The default is false.", + "description": "If set to true, connections to the load balancer are dropped when all primary and all backup backend VMs are unhealthy.If set to false, connections are distributed among all primary VMs when all primary and all backup backend VMs are unhealthy. For load balancers that have configurable failover: [Internal TCP/UDP Load Balancing](https://cloud.google.com/load-balancing/docs/internal/failover-overview) and [external TCP/UDP Load Balancing](/network/networklb-failover-overview). The default is false.", "type": "boolean" }, "failoverRatio": { - "description": "Applicable only to Failover for Internal TCP/UDP Load Balancing and Network Load Balancing. The value of the field must be in the range [0, 1]. If the value is 0, the load balancer performs a failover when the number of healthy primary VMs equals zero. For all other values, the load balancer performs a failover when the total number of healthy primary VMs is less than this ratio.", + "description": "The value of the field must be in the range [0, 1]. If the value is 0, the load balancer performs a failover when the number of healthy primary VMs equals zero. For all other values, the load balancer performs a failover when the total number of healthy primary VMs is less than this ratio. For load balancers that have configurable failover: [Internal TCP/UDP Load Balancing](https://cloud.google.com/load-balancing/docs/internal/failover-overview) and [external TCP/UDP Load Balancing](/network/networklb-failover-overview).", "format": "float", "type": "number" } @@ -30866,7 +31313,7 @@ "type": "object" }, "BulkInsertInstanceResource": { - "description": "A transient resource used in compute.instances.bulkInsert and compute.regionInstances.bulkInsert and compute.regionInstances.recommendLocations. This resource is not persisted anywhere, it is used only for processing the requests.", + "description": "A transient resource used in compute.instances.bulkInsert and compute.regionInstances.bulkInsert . This resource is not persisted anywhere, it is used only for processing the requests.", "id": "BulkInsertInstanceResource", "properties": { "count": { @@ -30888,7 +31335,7 @@ "type": "string" }, "namePattern": { - "description": "The string pattern used for the names of the VMs. Either name_pattern or per_instance_properties must be set. The pattern should contain one continuous sequence of placeholder hash characters (#) with each character corresponding to one digit of the generated instance name. Example: name_pattern of inst-#### will generate instance names such as inst-0001, inst-0002, ... . If there already exist instance(s) whose names match the name pattern in the same project and zone, then the generated instance numbers will start after the biggest existing number. For example, if there exists an instance with name inst-0050, then instance names generated using the pattern inst-#### will be inst-0051, inst-0052, etc. The name pattern placeholder # ...# can contain up to 18 characters.", + "description": "The string pattern used for the names of the VMs. Either name_pattern or per_instance_properties must be set. The pattern must contain one continuous sequence of placeholder hash characters (#) with each character corresponding to one digit of the generated instance name. Example: a name_pattern of inst-#### generates instance names such as inst-0001 and inst-0002. If existing instances in the same project and zone have names that match the name pattern then the generated instance numbers start after the biggest existing number. For example, if there exists an instance with name inst-0050, then instance names generated using the pattern inst-#### begin with inst-0051. The name pattern placeholder #...# can contain up to 18 characters.", "type": "string" }, "perInstanceProperties": { @@ -30963,7 +31410,7 @@ "type": "object" }, "CircuitBreakers": { - "description": "Settings controlling the volume of connections to a backend service.", + "description": "Settings controlling the volume of requests, connections and retries to this backend service.", "id": "CircuitBreakers", "properties": { "maxConnections": { @@ -31807,7 +32254,7 @@ "type": "string" }, "provisionedIops": { - "description": "Indicates how many IOPS must be provisioned for the disk.", + "description": "Indicates how many IOPS to provision for the disk. This sets the number of I/O operations per second that the disk can handle. Values must be between 10,000 and 120,000. For more details, see the Extreme persistent disk documentation.", "format": "int64", "type": "string" }, @@ -31897,7 +32344,7 @@ "type": "string" }, "type": { - "description": "URL of the disk type resource describing which disk type to use to create the disk. Provide this when creating the disk. For example: projects/project /zones/zone/diskTypes/pd-standard or pd-ssd", + "description": "URL of the disk type resource describing which disk type to use to create the disk. Provide this when creating the disk. For example: projects/project /zones/zone/diskTypes/pd-ssd . See Persistent disk types.", "type": "string" }, "users": { @@ -32604,7 +33051,7 @@ "id": "DisksAddResourcePoliciesRequest", "properties": { "resourcePolicies": { - "description": "Resource policies to be added to this disk. Currently you can only specify one policy here.", + "description": "Full or relative path to the resource policy to be added to this disk. You can only specify one resource policy.", "items": { "type": "string" }, @@ -32998,7 +33445,7 @@ "type": "string" }, "interfaces": { - "description": "List of interfaces for this external VPN gateway. If your peer-side gateway is an on-premises gateway and non-AWS cloud providers’ gateway, at most two interfaces can be provided for an external VPN gateway. If your peer side is an AWS virtual private gateway, four interfaces should be provided for an external VPN gateway.", + "description": "List of interfaces for this external VPN gateway. If your peer-side gateway is an on-premises gateway and non-AWS cloud providers' gateway, at most two interfaces can be provided for an external VPN gateway. If your peer side is an AWS virtual private gateway, four interfaces should be provided for an external VPN gateway.", "items": { "$ref": "ExternalVpnGatewayInterface" }, @@ -34552,7 +34999,7 @@ "type": "string" }, "queryPath": { - "description": "The path to be queried. This can be the default namespace ('/') or a nested namespace ('/\\/') or a specified key ('/\\/\\')", + "description": "The path to be queried. This can be the default namespace ('') or a nested namespace ('\\/') or a specified key ('\\/\\').", "type": "string" }, "queryValue": { @@ -35060,7 +35507,7 @@ "type": "array" }, "healthStatusAggregationPolicy": { - "description": "Optional. Policy for how the results from multiple health checks for the same endpoint are aggregated. Defaults to NO_AGGREGATION if unspecified. - NO_AGGREGATION. An EndpointHealth message is returned for each backend in the health check service. - AND. If any backend's health check reports UNHEALTHY, then UNHEALTHY is the HealthState of the entire health check service. If all backend's are healthy, the HealthState of the health check service is HEALTHY. .", + "description": "Optional. Policy for how the results from multiple health checks for the same endpoint are aggregated. Defaults to NO_AGGREGATION if unspecified. - NO_AGGREGATION. An EndpointHealth message is returned for each pair in the health check service. - AND. If any health check of an endpoint reports UNHEALTHY, then UNHEALTHY is the HealthState of the endpoint. If all health checks report HEALTHY, the HealthState of the endpoint is HEALTHY. .", "enum": [ "AND", "NO_AGGREGATION" @@ -35987,7 +36434,7 @@ "description": "Specifies a non-zero timeout per retry attempt. If not specified, will use the timeout set in HttpRouteAction. If timeout in HttpRouteAction is not set, will use the largest timeout among all backend services associated with the route." }, "retryConditions": { - "description": "Specifies one or more conditions when this retry rule applies. Valid values are: - 5xx: Loadbalancer will attempt a retry if the backend service responds with any 5xx response code, or if the backend service does not respond at all, example: disconnects, reset, read timeout, connection failure, and refused streams. - gateway-error: Similar to 5xx, but only applies to response codes 502, 503 or 504. - - connect-failure: Loadbalancer will retry on failures connecting to backend services, for example due to connection timeouts. - retriable-4xx: Loadbalancer will retry for retriable 4xx response codes. Currently the only retriable error supported is 409. - refused-stream:Loadbalancer will retry if the backend service resets the stream with a REFUSED_STREAM error code. This reset type indicates that it is safe to retry. - cancelledLoadbalancer will retry if the gRPC status code in the response header is set to cancelled - deadline-exceeded: Loadbalancer will retry if the gRPC status code in the response header is set to deadline-exceeded - resource-exhausted: Loadbalancer will retry if the gRPC status code in the response header is set to resource-exhausted - unavailable: Loadbalancer will retry if the gRPC status code in the response header is set to unavailable ", + "description": "Specifies one or more conditions when this retry policy applies. Valid values are: - 5xx: Retry will be attempted if the instance or endpoint responds with any 5xx response code, or if the instance or endpoint does not respond at all, example: disconnects, reset, read timeout, connection failure, and refused streams. - gateway-error: Similar to 5xx, but only applies to response codes 502, 503 or 504. - - connect-failure: A retry will be attempted on failures connecting to the instance or endpoint, for example due to connection timeouts. - retriable-4xx: A retry will be attempted if the instance or endpoint responds with a retriable 4xx response code. Currently the only retriable error supported is 409. - refused-stream: A retry will be attempted if the instance or endpoint resets the stream with a REFUSED_STREAM error code. This reset type indicates that it is safe to retry. - cancelled: A retry will be attempted if the gRPC status code in the response header is set to cancelled. - deadline-exceeded: A retry will be attempted if the gRPC status code in the response header is set to deadline-exceeded. - internal: A retry will be attempted if the gRPC status code in the response header is set to internal. - resource-exhausted: A retry will be attempted if the gRPC status code in the response header is set to resource-exhausted. - unavailable: A retry will be attempted if the gRPC status code in the response header is set to unavailable. ", "items": { "type": "string" }, @@ -37307,7 +37754,7 @@ "type": "object" }, "InstanceGroupManager": { - "description": "Whether the instance is a standby. # Properties of a standby instance comparing to the regular instance: # | regular | standby managed by IGM? | yes | yes added to the IG? | yes | yes counts towards IGM's target size? | yes | no taken into account by Autoscaler? | yes | no # receives traffic from LB? | yes | no Represents a Managed Instance Group resource. An instance group is a collection of VM instances that you can manage as a single entity. For more information, read Instance groups. For zonal Managed Instance Group, use the instanceGroupManagers resource. For regional Managed Instance Group, use the regionInstanceGroupManagers resource.", + "description": "Represents a Managed Instance Group resource. An instance group is a collection of VM instances that you can manage as a single entity. For more information, read Instance groups. For zonal Managed Instance Group, use the instanceGroupManagers resource. For regional Managed Instance Group, use the regionInstanceGroupManagers resource.", "id": "InstanceGroupManager", "properties": { "autoHealingPolicies": { @@ -51323,6 +51770,9 @@ "description": "Represents a Google Cloud Armor security policy resource. Only external backend services that use load balancers can reference a security policy. For more information, see Google Cloud Armor security policy overview.", "id": "SecurityPolicy", "properties": { + "adaptiveProtectionConfig": { + "$ref": "SecurityPolicyAdaptiveProtectionConfig" + }, "advancedOptionsConfig": { "$ref": "SecurityPolicyAdvancedOptionsConfig" }, @@ -51368,6 +51818,40 @@ }, "type": "object" }, + "SecurityPolicyAdaptiveProtectionConfig": { + "description": "Configuration options for Cloud Armor Adaptive Protection (CAAP).", + "id": "SecurityPolicyAdaptiveProtectionConfig", + "properties": { + "layer7DdosDefenseConfig": { + "$ref": "SecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfig", + "description": "If set to true, enables Cloud Armor Machine Learning." + } + }, + "type": "object" + }, + "SecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfig": { + "description": "Configuration options for L7 DDoS detection.", + "id": "SecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfig", + "properties": { + "enable": { + "description": "If set to true, enables CAAP for L7 DDoS detection.", + "type": "boolean" + }, + "ruleVisibility": { + "description": "Rule visibility can be one of the following: STANDARD - opaque rules. (default) PREMIUM - transparent rules.", + "enum": [ + "PREMIUM", + "STANDARD" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + } + }, + "type": "object" + }, "SecurityPolicyAdvancedOptionsConfig": { "id": "SecurityPolicyAdvancedOptionsConfig", "properties": { @@ -51507,167 +51991,659 @@ }, "type": "object" }, - "SecurityPolicyReference": { - "id": "SecurityPolicyReference", - "properties": { - "securityPolicy": { - "type": "string" - } - }, - "type": "object" - }, - "SecurityPolicyRule": { - "description": "Represents a rule that describes one or more match conditions along with the action to be taken when traffic matches this condition (allow or deny).", - "id": "SecurityPolicyRule", + "SecurityPolicyReference": { + "id": "SecurityPolicyReference", + "properties": { + "securityPolicy": { + "type": "string" + } + }, + "type": "object" + }, + "SecurityPolicyRule": { + "description": "Represents a rule that describes one or more match conditions along with the action to be taken when traffic matches this condition (allow or deny).", + "id": "SecurityPolicyRule", + "properties": { + "action": { + "description": "The Action to perform when the client connection triggers the rule. Can currently be either \"allow\" or \"deny()\" where valid values for status are 403, 404, and 502.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "kind": { + "default": "compute#securityPolicyRule", + "description": "[Output only] Type of the resource. Always compute#securityPolicyRule for security policy rules", + "type": "string" + }, + "match": { + "$ref": "SecurityPolicyRuleMatcher", + "description": "A match condition that incoming traffic is evaluated against. If it evaluates to true, the corresponding 'action' is enforced." + }, + "preview": { + "description": "If set to true, the specified action is not enforced.", + "type": "boolean" + }, + "priority": { + "description": "An integer indicating the priority of a rule in the list. The priority must be a positive value between 0 and 2147483647. Rules are evaluated from highest to lowest priority where 0 is the highest priority and 2147483647 is the lowest priority.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "SecurityPolicyRuleMatcher": { + "description": "Represents a match condition that incoming traffic is evaluated against. Exactly one field must be specified.", + "id": "SecurityPolicyRuleMatcher", + "properties": { + "config": { + "$ref": "SecurityPolicyRuleMatcherConfig", + "description": "The configuration options available when specifying versioned_expr. This field must be specified if versioned_expr is specified and cannot be specified if versioned_expr is not specified." + }, + "expr": { + "$ref": "Expr", + "description": "User defined CEVAL expression. A CEVAL expression is used to specify match criteria such as origin.ip, source.region_code and contents in the request header." + }, + "versionedExpr": { + "description": "Preconfigured versioned expression. If this field is specified, config must also be specified. Available preconfigured expressions along with their requirements are: SRC_IPS_V1 - must specify the corresponding src_ip_range field in config.", + "enum": [ + "SRC_IPS_V1" + ], + "enumDescriptions": [ + "Matches the source IP address of a request to the IP ranges supplied in config." + ], + "type": "string" + } + }, + "type": "object" + }, + "SecurityPolicyRuleMatcherConfig": { + "id": "SecurityPolicyRuleMatcherConfig", + "properties": { + "srcIpRanges": { + "description": "CIDR IP address range. Maximum number of src_ip_ranges allowed is 10.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "SecuritySettings": { + "description": "The authentication and authorization settings for a BackendService.", + "id": "SecuritySettings", + "properties": { + "clientTlsPolicy": { + "description": "Optional. A URL referring to a networksecurity.ClientTlsPolicy resource that describes how clients should authenticate with this service's backends. clientTlsPolicy only applies to a global BackendService with the loadBalancingScheme set to INTERNAL_SELF_MANAGED. If left blank, communications are not encrypted. Note: This field currently has no impact.", + "type": "string" + }, + "subjectAltNames": { + "description": "Optional. A list of Subject Alternative Names (SANs) that the client verifies during a mutual TLS handshake with an server/endpoint for this BackendService. When the server presents its X.509 certificate to the client, the client inspects the certificate's subjectAltName field. If the field contains one of the specified values, the communication continues. Otherwise, it fails. This additional check enables the client to verify that the server is authorized to run the requested service. Note that the contents of the server certificate's subjectAltName field are configured by the Public Key Infrastructure which provisions server identities. Only applies to a global BackendService with loadBalancingScheme set to INTERNAL_SELF_MANAGED. Only applies when BackendService has an attached clientTlsPolicy with clientCertificate (mTLS mode). Note: This field currently has no impact.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "SerialPortOutput": { + "description": "An instance serial console output.", + "id": "SerialPortOutput", + "properties": { + "contents": { + "description": "[Output Only] The contents of the console output.", + "type": "string" + }, + "kind": { + "default": "compute#serialPortOutput", + "description": "[Output Only] Type of the resource. Always compute#serialPortOutput for serial port output.", + "type": "string" + }, + "next": { + "description": "[Output Only] The position of the next byte of content, regardless of whether the content exists, following the output returned in the `contents` property. Use this value in the next request as the start parameter.", + "format": "int64", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "start": { + "description": "The starting byte position of the output that was returned. This should match the start parameter sent with the request. If the serial console output exceeds the size of the buffer (1 MB), older output is overwritten by newer content. The output start value will indicate the byte position of the output that was returned, which might be different than the `start` value that was specified in the request.", + "format": "int64", + "type": "string" + } + }, + "type": "object" + }, + "ServerBinding": { + "id": "ServerBinding", + "properties": { + "type": { + "enum": [ + "RESTART_NODE_ON_ANY_SERVER", + "RESTART_NODE_ON_MINIMAL_SERVERS", + "SERVER_BINDING_TYPE_UNSPECIFIED" + ], + "enumDescriptions": [ + "Node may associate with any physical server over its lifetime.", + "Node may associate with minimal physical servers over its lifetime.", + "" + ], + "type": "string" + } + }, + "type": "object" + }, + "ServiceAccount": { + "description": "A service account.", + "id": "ServiceAccount", + "properties": { + "email": { + "description": "Email address of the service account.", + "type": "string" + }, + "scopes": { + "description": "The list of scopes to be made available for this service account.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "ServiceAttachment": { + "description": "Represents a ServiceAttachment resource. A service attachment represents a service that a producer has exposed. It encapsulates the load balancer which fronts the service runs and a list of NAT IP ranges that the producers uses to represent the consumers connecting to the service. next tag = 19", + "id": "ServiceAttachment", + "properties": { + "connectedEndpoints": { + "description": "[Output Only] An array of connections for all the consumers connected to this service attachment.", + "items": { + "$ref": "ServiceAttachmentConnectedEndpoint" + }, + "type": "array" + }, + "connectionPreference": { + "description": "The connection preference of service attachment. The value can be set to ACCEPT_AUTOMATIC. An ACCEPT_AUTOMATIC service attachment is one that always accepts the connection from consumer forwarding rules.", + "enum": [ + "ACCEPT_AUTOMATIC", + "ACCEPT_MANUAL", + "CONNECTION_PREFERENCE_UNSPECIFIED" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "consumerAcceptLists": { + "description": "Projects that are allowed to connect to this service attachment.", + "items": { + "$ref": "ServiceAttachmentConsumerProjectLimit" + }, + "type": "array" + }, + "consumerRejectLists": { + "description": "Projects that are not allowed to connect to this service attachment. The project can be specified using its id or number.", + "items": { + "type": "string" + }, + "type": "array" + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "enableProxyProtocol": { + "description": "If true, enable the proxy protocol which is for supplying client TCP/IP address data in TCP connections that traverse proxies on their way to destination servers.", + "type": "boolean" + }, + "fingerprint": { + "description": "Fingerprint of this resource. A hash of the contents stored in this object. This field is used in optimistic locking. This field will be ignored when inserting a ServiceAttachment. An up-to-date fingerprint must be provided in order to patch/update the ServiceAttachment; otherwise, the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make a get() request to retrieve the ServiceAttachment.", + "format": "byte", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource type. The server generates this identifier.", + "format": "uint64", + "type": "string" + }, + "kind": { + "default": "compute#serviceAttachment", + "description": "[Output Only] Type of the resource. Always compute#serviceAttachment for service attachments.", + "type": "string" + }, + "name": { + "annotations": { + "required": [ + "compute.serviceAttachments.insert" + ] + }, + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "natSubnets": { + "description": "An array of URLs where each entry is the URL of a subnet provided by the service producer to use for NAT in this service attachment.", + "items": { + "type": "string" + }, + "type": "array" + }, + "producerForwardingRule": { + "description": "The URL of a forwarding rule with loadBalancingScheme INTERNAL* that is serving the endpoint identified by this service attachment.", + "type": "string" + }, + "pscServiceAttachmentId": { + "$ref": "Uint128", + "description": "[Output Only] An 128-bit global unique ID of the PSC service attachment." + }, + "region": { + "description": "[Output Only] URL of the region where the service attachment resides. This field applies only to the region resource. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "targetService": { + "description": "The URL of a service serving the endpoint identified by this service attachment.", + "type": "string" + } + }, + "type": "object" + }, + "ServiceAttachmentAggregatedList": { + "description": "Contains a list of ServiceAttachmentsScopedList.", + "id": "ServiceAttachmentAggregatedList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "additionalProperties": { + "$ref": "ServiceAttachmentsScopedList", + "description": "Name of the scope containing this set of ServiceAttachments." + }, + "description": "A list of ServiceAttachmentsScopedList resources.", + "type": "object" + }, + "kind": { + "default": "compute#serviceAttachmentAggregatedList", + "description": "Type of resource.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "unreachables": { + "description": "[Output Only] Unreachable resources.", + "items": { + "type": "string" + }, + "type": "array" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "ServiceAttachmentConnectedEndpoint": { + "description": "[Output Only] A connection connected to this service attachment.", + "id": "ServiceAttachmentConnectedEndpoint", "properties": { - "action": { - "description": "The Action to perform when the client connection triggers the rule. Can currently be either \"allow\" or \"deny()\" where valid values for status are 403, 404, and 502.", - "type": "string" - }, - "description": { - "description": "An optional description of this resource. Provide this property when you create the resource.", + "endpoint": { + "description": "The url of a connected endpoint.", "type": "string" }, - "kind": { - "default": "compute#securityPolicyRule", - "description": "[Output only] Type of the resource. Always compute#securityPolicyRule for security policy rules", + "pscConnectionId": { + "description": "The PSC connection id of the connected endpoint.", + "format": "uint64", "type": "string" }, - "match": { - "$ref": "SecurityPolicyRuleMatcher", - "description": "A match condition that incoming traffic is evaluated against. If it evaluates to true, the corresponding 'action' is enforced." - }, - "preview": { - "description": "If set to true, the specified action is not enforced.", - "type": "boolean" - }, - "priority": { - "description": "An integer indicating the priority of a rule in the list. The priority must be a positive value between 0 and 2147483647. Rules are evaluated from highest to lowest priority where 0 is the highest priority and 2147483647 is the lowest priority.", - "format": "int32", - "type": "integer" - } - }, - "type": "object" - }, - "SecurityPolicyRuleMatcher": { - "description": "Represents a match condition that incoming traffic is evaluated against. Exactly one field must be specified.", - "id": "SecurityPolicyRuleMatcher", - "properties": { - "config": { - "$ref": "SecurityPolicyRuleMatcherConfig", - "description": "The configuration options available when specifying versioned_expr. This field must be specified if versioned_expr is specified and cannot be specified if versioned_expr is not specified." - }, - "expr": { - "$ref": "Expr", - "description": "User defined CEVAL expression. A CEVAL expression is used to specify match criteria such as origin.ip, source.region_code and contents in the request header." - }, - "versionedExpr": { - "description": "Preconfigured versioned expression. If this field is specified, config must also be specified. Available preconfigured expressions along with their requirements are: SRC_IPS_V1 - must specify the corresponding src_ip_range field in config.", + "status": { + "description": "The status of a connected endpoint to this service attachment.", "enum": [ - "SRC_IPS_V1" + "ACCEPTED", + "CLOSED", + "PENDING", + "REJECTED", + "STATUS_UNSPECIFIED" ], "enumDescriptions": [ - "Matches the source IP address of a request to the IP ranges supplied in config." + "The connection has been accepted by the producer.", + "The connection has been closed by the producer.", + "The connection is pending acceptance by the producer.", + "The consumer is still connected but not using the connection.", + "" ], "type": "string" } }, "type": "object" }, - "SecurityPolicyRuleMatcherConfig": { - "id": "SecurityPolicyRuleMatcherConfig", + "ServiceAttachmentConsumerProjectLimit": { + "id": "ServiceAttachmentConsumerProjectLimit", "properties": { - "srcIpRanges": { - "description": "CIDR IP address range. Maximum number of src_ip_ranges allowed is 10.", - "items": { - "type": "string" - }, - "type": "array" + "connectionLimit": { + "description": "The value of the limit to set.", + "format": "uint32", + "type": "integer" + }, + "projectIdOrNum": { + "description": "The project id or number for the project to set the limit for.", + "type": "string" } }, "type": "object" }, - "SecuritySettings": { - "description": "The authentication and authorization settings for a BackendService.", - "id": "SecuritySettings", + "ServiceAttachmentList": { + "id": "ServiceAttachmentList", "properties": { - "clientTlsPolicy": { - "description": "Optional. A URL referring to a networksecurity.ClientTlsPolicy resource that describes how clients should authenticate with this service's backends. clientTlsPolicy only applies to a global BackendService with the loadBalancingScheme set to INTERNAL_SELF_MANAGED. If left blank, communications are not encrypted. Note: This field currently has no impact.", + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", "type": "string" }, - "subjectAltNames": { - "description": "Optional. A list of Subject Alternative Names (SANs) that the client verifies during a mutual TLS handshake with an server/endpoint for this BackendService. When the server presents its X.509 certificate to the client, the client inspects the certificate's subjectAltName field. If the field contains one of the specified values, the communication continues. Otherwise, it fails. This additional check enables the client to verify that the server is authorized to run the requested service. Note that the contents of the server certificate's subjectAltName field are configured by the Public Key Infrastructure which provisions server identities. Only applies to a global BackendService with loadBalancingScheme set to INTERNAL_SELF_MANAGED. Only applies when BackendService has an attached clientTlsPolicy with clientCertificate (mTLS mode). Note: This field currently has no impact.", + "items": { + "description": "A list of ServiceAttachment resources.", "items": { - "type": "string" + "$ref": "ServiceAttachment" }, "type": "array" - } - }, - "type": "object" - }, - "SerialPortOutput": { - "description": "An instance serial console output.", - "id": "SerialPortOutput", - "properties": { - "contents": { - "description": "[Output Only] The contents of the console output.", - "type": "string" }, "kind": { - "default": "compute#serialPortOutput", - "description": "[Output Only] Type of the resource. Always compute#serialPortOutput for serial port output.", + "default": "compute#serviceAttachmentList", + "description": "[Output Only] Type of the resource. Always compute#serviceAttachment for service attachments.", "type": "string" }, - "next": { - "description": "[Output Only] The position of the next byte of content, regardless of whether the content exists, following the output returned in the `contents` property. Use this value in the next request as the start parameter.", - "format": "int64", + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", "type": "string" }, "selfLink": { "description": "[Output Only] Server-defined URL for this resource.", "type": "string" }, - "start": { - "description": "The starting byte position of the output that was returned. This should match the start parameter sent with the request. If the serial console output exceeds the size of the buffer (1 MB), older output is overwritten by newer content. The output start value will indicate the byte position of the output that was returned, which might be different than the `start` value that was specified in the request.", - "format": "int64", - "type": "string" - } - }, - "type": "object" - }, - "ServerBinding": { - "id": "ServerBinding", - "properties": { - "type": { - "enum": [ - "RESTART_NODE_ON_ANY_SERVER", - "RESTART_NODE_ON_MINIMAL_SERVERS", - "SERVER_BINDING_TYPE_UNSPECIFIED" - ], - "enumDescriptions": [ - "Node may associate with any physical server over its lifetime.", - "Node may associate with minimal physical servers over its lifetime.", - "" - ], - "type": "string" + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" } }, "type": "object" }, - "ServiceAccount": { - "description": "A service account.", - "id": "ServiceAccount", + "ServiceAttachmentsScopedList": { + "id": "ServiceAttachmentsScopedList", "properties": { - "email": { - "description": "Email address of the service account.", - "type": "string" - }, - "scopes": { - "description": "The list of scopes to be made available for this service account.", + "serviceAttachments": { + "description": "A list of ServiceAttachments contained in this scope.", "items": { - "type": "string" + "$ref": "ServiceAttachment" }, "type": "array" + }, + "warning": { + "description": "Informational warning which replaces the list of service attachments when the list is empty.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" } }, "type": "object" @@ -52962,12 +53938,14 @@ "enum": [ "INTERNAL_HTTPS_LOAD_BALANCER", "PRIVATE", - "PRIVATE_RFC_1918" + "PRIVATE_RFC_1918", + "PRIVATE_SERVICE_CONNECT" ], "enumDescriptions": [ "Subnet reserved for Internal HTTP(S) Load Balancing.", "Regular user created or automatically created subnet.", - "Regular user created or automatically created subnet." + "Regular user created or automatically created subnet.", + "Subnetworks created for Private Service Connect in the producer network." ], "type": "string" }, @@ -56253,6 +57231,20 @@ }, "type": "object" }, + "Uint128": { + "id": "Uint128", + "properties": { + "high": { + "format": "uint64", + "type": "string" + }, + "low": { + "format": "uint64", + "type": "string" + } + }, + "type": "object" + }, "UrlMap": { "description": "Represents a URL Map resource. Google Compute Engine has two URL Map resources: * [Global](/compute/docs/reference/rest/v1/urlMaps) * [Regional](/compute/docs/reference/rest/v1/regionUrlMaps) A URL map resource is a component of certain types of GCP load balancers and Traffic Director. * urlMaps are used by external HTTP(S) load balancers and Traffic Director. * regionUrlMaps are used by internal HTTP(S) load balancers. For a list of supported URL map features by load balancer type, see the Load balancing features: Routing and traffic management table. For a list of supported URL map features for Traffic Director, see the Traffic Director features: Routing and traffic management table. This resource defines mappings from host names and URL paths to either a backend service or a backend bucket. To use the global urlMaps resource, the backend service must have a loadBalancingScheme of either EXTERNAL or INTERNAL_SELF_MANAGED. To use the regionUrlMaps resource, the backend service must have a loadBalancingScheme of INTERNAL_MANAGED. For more information, read URL Map Concepts.", "id": "UrlMap", diff --git a/discovery/container-v1.json b/discovery/container-v1.json index d4672ddfb98..7affa850ad1 100644 --- a/discovery/container-v1.json +++ b/discovery/container-v1.json @@ -2459,7 +2459,7 @@ } } }, - "revision": "20210607", + "revision": "20210617", "rootUrl": "https://container.googleapis.com/", "schemas": { "AcceleratorConfig": { @@ -3006,6 +3006,10 @@ "$ref": "AddonsConfig", "description": "Configurations for the various addons available to run in the cluster." }, + "desiredAuthenticatorGroupsConfig": { + "$ref": "AuthenticatorGroupsConfig", + "description": "The desired authenticator groups config for the cluster." + }, "desiredAutopilot": { "$ref": "Autopilot", "description": "The desired Autopilot configuration for the cluster." diff --git a/discovery/container-v1beta1.json b/discovery/container-v1beta1.json index 608fb29eb74..3cab1918c98 100644 --- a/discovery/container-v1beta1.json +++ b/discovery/container-v1beta1.json @@ -2484,7 +2484,7 @@ } } }, - "revision": "20210607", + "revision": "20210617", "rootUrl": "https://container.googleapis.com/", "schemas": { "AcceleratorConfig": { @@ -3127,6 +3127,10 @@ "$ref": "AddonsConfig", "description": "Configurations for the various addons available to run in the cluster." }, + "desiredAuthenticatorGroupsConfig": { + "$ref": "AuthenticatorGroupsConfig", + "description": "AuthenticatorGroupsConfig specifies the config for the cluster security groups settings." + }, "desiredAutopilot": { "$ref": "Autopilot", "description": "The desired Autopilot configuration for the cluster." diff --git a/discovery/content-v2.1.json b/discovery/content-v2.1.json index 36469987d1e..cdeacd7619a 100644 --- a/discovery/content-v2.1.json +++ b/discovery/content-v2.1.json @@ -5485,7 +5485,7 @@ } } }, - "revision": "20210603", + "revision": "20210624", "rootUrl": "https://shoppingcontent.googleapis.com/", "schemas": { "Account": { @@ -6139,7 +6139,7 @@ "type": "string" }, "linkType": { - "description": "Type of the link between the two accounts. Acceptable values are: - \"`channelPartner`\" - \"`eCommercePlatform`\" ", + "description": "Type of the link between the two accounts. Acceptable values are: - \"`channelPartner`\" - \"`eCommercePlatform`\" - \"`paymentServiceProvider`\" ", "type": "string" }, "linkedAccountId": { @@ -6147,7 +6147,7 @@ "type": "string" }, "services": { - "description": "Provided services. Acceptable values are: - \"`shoppingAdsProductManagement`\" - \"`shoppingActionsProductManagement`\" - \"`shoppingActionsOrderManagement`\" ", + "description": "Provided services. Acceptable values are: - \"`shoppingAdsProductManagement`\" - \"`shoppingActionsProductManagement`\" - \"`shoppingActionsOrderManagement`\" - \"`paymentProcessing`\" ", "items": { "type": "string" }, diff --git a/discovery/dataproc-v1.json b/discovery/dataproc-v1.json index eb31b43cdae..2ea4600dbaf 100644 --- a/discovery/dataproc-v1.json +++ b/discovery/dataproc-v1.json @@ -1164,7 +1164,7 @@ ] }, "patch": { - "description": "Updates a cluster in a project. The returned Operation.metadata will be ClusterOperationMetadata (https://cloud.google.com/dataproc/docs/reference/rpc/google.cloud.dataproc.v1#clusteroperationmetadata).", + "description": "Updates a cluster in a project. The returned Operation.metadata will be ClusterOperationMetadata (https://cloud.google.com/dataproc/docs/reference/rpc/google.cloud.dataproc.v1#clusteroperationmetadata). The cluster must be in a RUNNING state or an error is returned.", "flatPath": "v1/projects/{projectId}/regions/{region}/clusters/{clusterName}", "httpMethod": "PATCH", "id": "dataproc.projects.regions.clusters.patch", @@ -2260,7 +2260,7 @@ } } }, - "revision": "20210604", + "revision": "20210622", "rootUrl": "https://dataproc.googleapis.com/", "schemas": { "AcceleratorConfig": { @@ -2328,7 +2328,7 @@ }, "yarnConfig": { "$ref": "BasicYarnAutoscalingConfig", - "description": "Required. YARN autoscaling configuration." + "description": "Optional. YARN autoscaling configuration." } }, "type": "object" diff --git a/discovery/dataproc-v1beta2.json b/discovery/dataproc-v1beta2.json index 3ad1f8d875a..4d3c8f9868d 100644 --- a/discovery/dataproc-v1beta2.json +++ b/discovery/dataproc-v1beta2.json @@ -1181,7 +1181,7 @@ ] }, "patch": { - "description": "Updates a cluster in a project. The returned Operation.metadata will be ClusterOperationMetadata (https://cloud.google.com/dataproc/docs/reference/rpc/google.cloud.dataproc.v1beta2#clusteroperationmetadata).", + "description": "Updates a cluster in a project. The returned Operation.metadata will be ClusterOperationMetadata (https://cloud.google.com/dataproc/docs/reference/rpc/google.cloud.dataproc.v1beta2#clusteroperationmetadata). The cluster must be in a RUNNING state or an error is returned.", "flatPath": "v1beta2/projects/{projectId}/regions/{region}/clusters/{clusterName}", "httpMethod": "PATCH", "id": "dataproc.projects.regions.clusters.patch", @@ -2291,7 +2291,7 @@ } } }, - "revision": "20210604", + "revision": "20210622", "rootUrl": "https://dataproc.googleapis.com/", "schemas": { "AcceleratorConfig": { @@ -2359,7 +2359,7 @@ }, "yarnConfig": { "$ref": "BasicYarnAutoscalingConfig", - "description": "Required. YARN autoscaling configuration." + "description": "Optional. YARN autoscaling configuration." } }, "type": "object" diff --git a/discovery/dialogflow-v2.json b/discovery/dialogflow-v2.json index 3ef948b962b..54b0cf0c5b0 100644 --- a/discovery/dialogflow-v2.json +++ b/discovery/dialogflow-v2.json @@ -6915,7 +6915,7 @@ } } }, - "revision": "20210618", + "revision": "20210625", "rootUrl": "https://dialogflow.googleapis.com/", "schemas": { "GoogleCloudDialogflowCxV3AudioInput": { @@ -11063,7 +11063,7 @@ "id": "GoogleCloudDialogflowV2Environment", "properties": { "agentVersion": { - "description": "Required. The agent version loaded into this environment. Supported formats: - `projects//agent/versions/` - `projects//locations//agent/versions/`", + "description": "Optional. The agent version loaded into this environment. Supported formats: - `projects//agent/versions/` - `projects//locations//agent/versions/`", "type": "string" }, "description": { diff --git a/discovery/dialogflow-v2beta1.json b/discovery/dialogflow-v2beta1.json index 44dcf66fd3b..1240aac29bf 100644 --- a/discovery/dialogflow-v2beta1.json +++ b/discovery/dialogflow-v2beta1.json @@ -7247,7 +7247,7 @@ } } }, - "revision": "20210618", + "revision": "20210625", "rootUrl": "https://dialogflow.googleapis.com/", "schemas": { "GoogleCloudDialogflowCxV3AudioInput": { @@ -13174,7 +13174,7 @@ "id": "GoogleCloudDialogflowV2beta1Environment", "properties": { "agentVersion": { - "description": "Required. The agent version loaded into this environment. Supported formats: - `projects//agent/versions/` - `projects//locations//agent/versions/`", + "description": "Optional. The agent version loaded into this environment. Supported formats: - `projects//agent/versions/` - `projects//locations//agent/versions/`", "type": "string" }, "description": { diff --git a/discovery/firebaseappcheck-v1beta.json b/discovery/firebaseappcheck-v1beta.json index 55c2543aed8..06b249868c4 100644 --- a/discovery/firebaseappcheck-v1beta.json +++ b/discovery/firebaseappcheck-v1beta.json @@ -863,7 +863,7 @@ } } }, - "revision": "20210621", + "revision": "20210625", "rootUrl": "https://firebaseappcheck.googleapis.com/", "schemas": { "GoogleFirebaseAppcheckV1betaAppAttestChallengeResponse": { @@ -980,7 +980,7 @@ "type": "object" }, "GoogleFirebaseAppcheckV1betaDeviceCheckConfig": { - "description": "An app's DeviceCheck configuration object. This configuration is used by ExchangeDeviceCheckToken to validate device tokens issued to apps by DeviceCheck.", + "description": "An app's DeviceCheck configuration object. This configuration is used by ExchangeDeviceCheckToken to validate device tokens issued to apps by DeviceCheck. It also controls certain properties of the returned App Check token, such as its ttl. Note that the Team ID registered with your app is used as part of the validation process. Please register it via the Firebase Console or programmatically via the [Firebase Management Service](https://firebase.google.com/docs/projects/api/reference/rest/v1beta1/projects.iosApps/patch).", "id": "GoogleFirebaseAppcheckV1betaDeviceCheckConfig", "properties": { "keyId": { @@ -1048,7 +1048,7 @@ "type": "object" }, "GoogleFirebaseAppcheckV1betaExchangeAppAttestAttestationResponse": { - "description": "Response message for ExchangeAppAttestAttestation", + "description": "Response message for ExchangeAppAttestAttestation and ExchangeAppAttestDebugAttestation", "id": "GoogleFirebaseAppcheckV1betaExchangeAppAttestAttestationResponse", "properties": { "artifact": { @@ -1206,7 +1206,7 @@ "type": "object" }, "GoogleFirebaseAppcheckV1betaRecaptchaConfig": { - "description": "An app's reCAPTCHA v3 configuration object. This configuration is used by ExchangeRecaptchaToken to validate reCAPTCHA tokens issued to apps by reCAPTCHA v3.", + "description": "An app's reCAPTCHA v3 configuration object. This configuration is used by ExchangeRecaptchaToken to validate reCAPTCHA tokens issued to apps by reCAPTCHA v3. It also controls certain properties of the returned App Check token, such as its ttl.", "id": "GoogleFirebaseAppcheckV1betaRecaptchaConfig", "properties": { "name": { diff --git a/discovery/gkehub-v1.json b/discovery/gkehub-v1.json index c6916165680..416caa052f3 100644 --- a/discovery/gkehub-v1.json +++ b/discovery/gkehub-v1.json @@ -905,7 +905,7 @@ } } }, - "revision": "20210604", + "revision": "20210622", "rootUrl": "https://gkehub.googleapis.com/", "schemas": { "AuditConfig": { @@ -1632,7 +1632,7 @@ "type": "string" }, "lastSync": { - "description": "Timestamp of when ACM last successfully synced the repo The time format is specified in https://golang.org/pkg/time/#Time.String This field is being deprecated. Use last_sync_time instead. (b/154053616)", + "description": "Deprecated: use last_sync_time instead. Timestamp of when ACM last successfully synced the repo The time format is specified in https://golang.org/pkg/time/#Time.String", "type": "string" }, "lastSyncTime": { diff --git a/discovery/gkehub-v1alpha.json b/discovery/gkehub-v1alpha.json index ffc7ac4dc4b..0505a2fed3a 100644 --- a/discovery/gkehub-v1alpha.json +++ b/discovery/gkehub-v1alpha.json @@ -670,7 +670,7 @@ } } }, - "revision": "20210521", + "revision": "20210622", "rootUrl": "https://gkehub.googleapis.com/", "schemas": { "AuditConfig": { @@ -1470,7 +1470,7 @@ "type": "string" }, "lastSync": { - "description": "Timestamp of when ACM last successfully synced the repo The time format is specified in https://golang.org/pkg/time/#Time.String This field is being deprecated. Use last_sync_time instead. (b/154053616)", + "description": "Deprecated: use last_sync_time instead. Timestamp of when ACM last successfully synced the repo The time format is specified in https://golang.org/pkg/time/#Time.String", "type": "string" }, "lastSyncTime": { diff --git a/discovery/gkehub-v1beta.json b/discovery/gkehub-v1beta.json index 2ceb0beec6f..3effc646588 100644 --- a/discovery/gkehub-v1beta.json +++ b/discovery/gkehub-v1beta.json @@ -670,7 +670,7 @@ } } }, - "revision": "20210512", + "revision": "20210622", "rootUrl": "https://gkehub.googleapis.com/", "schemas": { "AuditConfig": { @@ -1428,7 +1428,7 @@ "type": "string" }, "lastSync": { - "description": "Timestamp of when ACM last successfully synced the repo The time format is specified in https://golang.org/pkg/time/#Time.String This field is being deprecated. Use last_sync_time instead. (b/154053616)", + "description": "Deprecated: use last_sync_time instead. Timestamp of when ACM last successfully synced the repo The time format is specified in https://golang.org/pkg/time/#Time.String", "type": "string" }, "lastSyncTime": { diff --git a/discovery/groupssettings-v1.json b/discovery/groupssettings-v1.json index 2e715bd7494..544129ccd9b 100644 --- a/discovery/groupssettings-v1.json +++ b/discovery/groupssettings-v1.json @@ -152,7 +152,7 @@ } } }, - "revision": "20210225", + "revision": "20210624", "rootUrl": "https://www.googleapis.com/", "schemas": { "Groups": { @@ -191,6 +191,10 @@ "description": "When a message is rejected, this is text for the rejection notification sent to the message's author. By default, this property is empty and has no value in the API's response body. The maximum notification text size is 10,000 characters. Note: Requires sendMessageDenyNotification property to be true.", "type": "string" }, + "default_sender": { + "description": "Default sender for members who can post messages as the group. Possible values are: - `DEFAULT_SELF`: By default messages will be sent from the user - `GROUP`: By default messages will be sent from the group", + "type": "string" + }, "description": { "description": "Description of the group. This property value may be an empty string if no group description has been entered. If entered, the maximum group description is no more than 300 characters.", "type": "string" diff --git a/discovery/healthcare-v1.json b/discovery/healthcare-v1.json index daed9e32650..34b1cb6cdb6 100644 --- a/discovery/healthcare-v1.json +++ b/discovery/healthcare-v1.json @@ -3920,7 +3920,7 @@ } } }, - "revision": "20210611", + "revision": "20210621", "rootUrl": "https://healthcare.googleapis.com/", "schemas": { "ActivateConsentRequest": { @@ -4651,7 +4651,7 @@ "properties": { "bigqueryDestination": { "$ref": "GoogleCloudHealthcareV1FhirBigQueryDestination", - "description": "The BigQuery output destination. The Cloud Healthcare Service Agent requires two IAM roles on the BigQuery location: `roles/bigquery.dataEditor` and `roles/bigquery.jobUser`. The output is one BigQuery table per resource type." + "description": "The BigQuery output destination. The Cloud Healthcare Service Agent requires two IAM roles on the BigQuery location: `roles/bigquery.dataEditor` and `roles/bigquery.jobUser`. The output is one BigQuery table per resource type. Note that unlike in FhirStore.StreamConfig.BigQueryDestination, BigQuery views will not be created by ExportResources." }, "gcsDestination": { "$ref": "GoogleCloudHealthcareV1FhirGcsDestination", diff --git a/discovery/healthcare-v1beta1.json b/discovery/healthcare-v1beta1.json index 91f718aacf1..ca2606f198b 100644 --- a/discovery/healthcare-v1beta1.json +++ b/discovery/healthcare-v1beta1.json @@ -3092,6 +3092,34 @@ }, "fhirStores": { "methods": { + "configureSearch": { + "description": "Configure the search parameters for the FHIR store and reindex resources in the FHIR store according to the defined search parameters. The search parameters provided in this request will replace any previous search configuration. The target SearchParameter resources need to exist in the store before calling ConfigureSearch, otherwise an error will occur. This method returns an Operation that can be used to track the progress of the reindexing by calling GetOperation.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/fhirStores/{fhirStoresId}:configureSearch", + "httpMethod": "POST", + "id": "healthcare.projects.locations.datasets.fhirStores.configureSearch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the FHIR store to configure, in the format `projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/fhirStores/{fhir_store_id}`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/fhirStores/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}:configureSearch", + "request": { + "$ref": "ConfigureSearchRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, "create": { "description": "Creates a new FHIR store within the parent dataset.", "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/fhirStores", @@ -4837,7 +4865,7 @@ } } }, - "revision": "20210611", + "revision": "20210621", "rootUrl": "https://healthcare.googleapis.com/", "schemas": { "ActivateConsentRequest": { @@ -5256,6 +5284,24 @@ }, "type": "object" }, + "ConfigureSearchRequest": { + "description": "Request to configure the search parameters for the specified FHIR store.", + "id": "ConfigureSearchRequest", + "properties": { + "canonicalUrls": { + "description": "The canonical URLs of the search parameters that are intended to be used for the FHIR store. See https://www.hl7.org/fhir/references.html#canonical for explanation on FHIR canonical urls", + "items": { + "type": "string" + }, + "type": "array" + }, + "validateOnly": { + "description": "If `validate_only` is set to true, the method will compile all the search parameters without actually setting the search config for the store and triggering the reindex.", + "type": "boolean" + } + }, + "type": "object" + }, "Consent": { "description": "Represents a user's consent.", "id": "Consent", @@ -5946,7 +5992,7 @@ }, "bigqueryDestination": { "$ref": "GoogleCloudHealthcareV1beta1FhirBigQueryDestination", - "description": "The BigQuery output destination. The Cloud Healthcare Service Agent requires two IAM roles on the BigQuery location: `roles/bigquery.dataEditor` and `roles/bigquery.jobUser`. The output is one BigQuery table per resource type." + "description": "The BigQuery output destination. The Cloud Healthcare Service Agent requires two IAM roles on the BigQuery location: `roles/bigquery.dataEditor` and `roles/bigquery.jobUser`. The output is one BigQuery table per resource type. Note that unlike in FhirStore.StreamConfig.BigQueryDestination, BigQuery views will not be created by ExportResources." }, "gcsDestination": { "$ref": "GoogleCloudHealthcareV1beta1FhirGcsDestination", @@ -6054,6 +6100,10 @@ "$ref": "NotificationConfig", "description": "If non-empty, publish all resource modifications of this FHIR store to this destination. The Pub/Sub message attributes contain a map with a string describing the action that has triggered the notification. For example, \"action\":\"CreateResource\"." }, + "searchConfig": { + "$ref": "SearchConfig", + "description": "Configuration for how FHIR resource can be searched." + }, "streamConfigs": { "description": "A list of streaming configs that configure the destinations of streaming export for every resource mutation in this FHIR store. Each store is allowed to have up to 10 streaming configs. After a new config is added, the next resource mutation is streamed to the new location in addition to the existing ones. When a location is removed from the list, the server stops streaming to that location. Before adding a new config, you must add the required [`bigquery.dataEditor`](https://cloud.google.com/bigquery/docs/access-control#bigquery.dataEditor) role to your project's **Cloud Healthcare Service Agent** [service account](https://cloud.google.com/iam/docs/service-accounts). Some lag (typically on the order of dozens of seconds) is expected before the results show up in the streaming destination.", "items": { @@ -7656,6 +7706,35 @@ }, "type": "object" }, + "SearchConfig": { + "description": "Contains the configuration for FHIR search.", + "id": "SearchConfig", + "properties": { + "searchParameters": { + "description": "A list of search parameters in this FHIR store that are used to configure this FHIR store.", + "items": { + "$ref": "SearchParameter" + }, + "type": "array" + } + }, + "type": "object" + }, + "SearchParameter": { + "description": "Contains the versioned name and the URL for one SearchParameter.", + "id": "SearchParameter", + "properties": { + "canonicalUrl": { + "description": "The canonical url of the search parameter resource.", + "type": "string" + }, + "parameter": { + "description": "The versioned name of the search parameter resource. The format is projects/{project-id}/locations/{location}/datasets/{dataset-id}/fhirStores/{fhirStore-id}/fhir/SearchParameter/{resource-id}/_history/{version-id} For fhir stores with disable_resource_versioning=true, the format is projects/{project-id}/locations/{location}/datasets/{dataset-id}/fhirStores/{fhirStore-id}/fhir/SearchParameter/{resource-id}/", + "type": "string" + } + }, + "type": "object" + }, "SearchResourcesRequest": { "description": "Request to search the resources in the specified FHIR store.", "id": "SearchResourcesRequest", diff --git a/discovery/index.json b/discovery/index.json index a44b33696f8..6e5137dc02e 100644 --- a/discovery/index.json +++ b/discovery/index.json @@ -3021,7 +3021,7 @@ "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" }, - "documentationLink": "https://support.google.com/keep", + "documentationLink": "https://developers.google.com/keep/api", "preferred": true }, { @@ -3414,19 +3414,34 @@ "documentationLink": "https://cloud.google.com/", "preferred": true }, + { + "kind": "discovery#directoryItem", + "id": "networksecurity:v1beta1", + "name": "networksecurity", + "version": "v1beta1", + "title": "Network Security API", + "description": "", + "discoveryRestUrl": "https://networksecurity.googleapis.com/$discovery/rest?version=v1beta1", + "icons": { + "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", + "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" + }, + "documentationLink": "https://cloud.google.com/networking", + "preferred": true + }, { "kind": "discovery#directoryItem", "id": "notebooks:v1", "name": "notebooks", "version": "v1", "title": "Notebooks API", - "description": "AI Platform Notebooks API is used to manage notebook resources in Google Cloud.", + "description": "Notebooks API is used to manage notebook resources in Google Cloud.", "discoveryRestUrl": "https://notebooks.googleapis.com/$discovery/rest?version=v1", "icons": { "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" }, - "documentationLink": "https://cloud.google.com/ai-platform/notebooks/docs/", + "documentationLink": "https://cloud.google.com/notebooks/docs/", "preferred": true }, { @@ -4598,6 +4613,21 @@ "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" }, "documentationLink": "https://developers.google.com/cloud-sql/", + "preferred": false + }, + { + "kind": "discovery#directoryItem", + "id": "sqladmin:v1", + "name": "sqladmin", + "version": "v1", + "title": "Cloud SQL Admin API", + "description": "API for Cloud SQL database instance management", + "discoveryRestUrl": "https://sqladmin.googleapis.com/$discovery/rest?version=v1", + "icons": { + "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", + "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" + }, + "documentationLink": "https://developers.google.com/cloud-sql/", "preferred": true }, { diff --git a/discovery/managedidentities-v1.json b/discovery/managedidentities-v1.json index e9e30e1ea21..baafdf202dc 100644 --- a/discovery/managedidentities-v1.json +++ b/discovery/managedidentities-v1.json @@ -839,7 +839,7 @@ } } }, - "revision": "20210614", + "revision": "20210615", "rootUrl": "https://managedidentities.googleapis.com/", "schemas": { "AttachTrustRequest": { @@ -1402,6 +1402,10 @@ "nodeId": { "description": "The id of the node. This should be equal to SaasInstanceNode.node_id.", "type": "string" + }, + "perSliEligibility": { + "$ref": "GoogleCloudSaasacceleratorManagementProvidersV1PerSliSloEligibility", + "description": "If present, this will override eligibility for the node coming from instance or exclusions for specified SLIs." } }, "type": "object" diff --git a/discovery/managedidentities-v1alpha1.json b/discovery/managedidentities-v1alpha1.json index 4a654a78710..d400049c47f 100644 --- a/discovery/managedidentities-v1alpha1.json +++ b/discovery/managedidentities-v1alpha1.json @@ -632,6 +632,97 @@ } }, "resources": { + "backups": { + "methods": { + "getIamPolicy": { + "description": "Gets the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set.", + "flatPath": "v1alpha1/projects/{projectsId}/locations/global/domains/{domainsId}/backups/{backupsId}:getIamPolicy", + "httpMethod": "GET", + "id": "managedidentities.projects.locations.global.domains.backups.getIamPolicy", + "parameterOrder": [ + "resource" + ], + "parameters": { + "options.requestedPolicyVersion": { + "description": "Optional. The policy format version to be returned. Valid values are 0, 1, and 3. Requests specifying an invalid value will be rejected. Requests for policies with any conditional bindings must specify version 3. Policies without any conditional bindings may specify any valid value or leave the field unset. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies).", + "format": "int32", + "location": "query", + "type": "integer" + }, + "resource": { + "description": "REQUIRED: The resource for which the policy is being requested. See the operation documentation for the appropriate value for this field.", + "location": "path", + "pattern": "^projects/[^/]+/locations/global/domains/[^/]+/backups/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1alpha1/{+resource}:getIamPolicy", + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "setIamPolicy": { + "description": "Sets the access control policy on the specified resource. Replaces any existing policy. Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED` errors.", + "flatPath": "v1alpha1/projects/{projectsId}/locations/global/domains/{domainsId}/backups/{backupsId}:setIamPolicy", + "httpMethod": "POST", + "id": "managedidentities.projects.locations.global.domains.backups.setIamPolicy", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy is being specified. See the operation documentation for the appropriate value for this field.", + "location": "path", + "pattern": "^projects/[^/]+/locations/global/domains/[^/]+/backups/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1alpha1/{+resource}:setIamPolicy", + "request": { + "$ref": "SetIamPolicyRequest" + }, + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource. If the resource does not exist, this will return an empty set of permissions, not a `NOT_FOUND` error. Note: This operation is designed to be used for building permission-aware UIs and command-line tools, not for authorization checking. This operation may \"fail open\" without warning.", + "flatPath": "v1alpha1/projects/{projectsId}/locations/global/domains/{domainsId}/backups/{backupsId}:testIamPermissions", + "httpMethod": "POST", + "id": "managedidentities.projects.locations.global.domains.backups.testIamPermissions", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy detail is being requested. See the operation documentation for the appropriate value for this field.", + "location": "path", + "pattern": "^projects/[^/]+/locations/global/domains/[^/]+/backups/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1alpha1/{+resource}:testIamPermissions", + "request": { + "$ref": "TestIamPermissionsRequest" + }, + "response": { + "$ref": "TestIamPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, "sqlIntegrations": { "methods": { "get": { @@ -1093,7 +1184,7 @@ } } }, - "revision": "20210614", + "revision": "20210615", "rootUrl": "https://managedidentities.googleapis.com/", "schemas": { "AttachTrustRequest": { @@ -1652,6 +1743,10 @@ "nodeId": { "description": "The id of the node. This should be equal to SaasInstanceNode.node_id.", "type": "string" + }, + "perSliEligibility": { + "$ref": "GoogleCloudSaasacceleratorManagementProvidersV1PerSliSloEligibility", + "description": "If present, this will override eligibility for the node coming from instance or exclusions for specified SLIs." } }, "type": "object" diff --git a/discovery/networksecurity-v1beta1.json b/discovery/networksecurity-v1beta1.json new file mode 100644 index 00000000000..54efa18d914 --- /dev/null +++ b/discovery/networksecurity-v1beta1.json @@ -0,0 +1,1764 @@ +{ + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "See, edit, configure, and delete your Google Cloud Platform data" + } + } + } + }, + "basePath": "", + "baseUrl": "https://networksecurity.googleapis.com/", + "batchPath": "batch", + "canonicalName": "NetworkSecurity", + "description": "", + "discoveryVersion": "v1", + "documentationLink": "https://cloud.google.com/networking", + "fullyEncodeReservedExpansion": true, + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "networksecurity:v1beta1", + "kind": "discovery#restDescription", + "mtlsRootUrl": "https://networksecurity.mtls.googleapis.com/", + "name": "networksecurity", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" + }, + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" + }, + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "location": "query", + "type": "string" + }, + "key": { + "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": { + "projects": { + "resources": { + "locations": { + "methods": { + "get": { + "description": "Gets information about a location.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}", + "httpMethod": "GET", + "id": "networksecurity.projects.locations.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Resource name for the location.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "Location" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists information about the supported locations for this service.", + "flatPath": "v1beta1/projects/{projectsId}/locations", + "httpMethod": "GET", + "id": "networksecurity.projects.locations.list", + "parameterOrder": [ + "name" + ], + "parameters": { + "filter": { + "description": "A filter to narrow down results to a preferred subset. The filtering language accepts strings like \"displayName=tokyo\", and is documented in more detail in [AIP-160](https://google.aip.dev/160).", + "location": "query", + "type": "string" + }, + "name": { + "description": "The resource that owns the locations collection, if applicable.", + "location": "path", + "pattern": "^projects/[^/]+$", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "The maximum number of results to return. If not set, the service selects a default.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "A page token received from the `next_page_token` field in the response. Send that page token to receive the subsequent page.", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/{+name}/locations", + "response": { + "$ref": "ListLocationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, + "resources": { + "authorizationPolicies": { + "methods": { + "create": { + "description": "Creates a new AuthorizationPolicy in a given project and location.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/authorizationPolicies", + "httpMethod": "POST", + "id": "networksecurity.projects.locations.authorizationPolicies.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "authorizationPolicyId": { + "description": "Required. Short name of the AuthorizationPolicy resource to be created. This value should be 1-63 characters long, containing only letters, numbers, hyphens, and underscores, and should not start with a number. E.g. \"authz_policy\".", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The parent resource of the AuthorizationPolicy. Must be in the format `projects/{project}/locations/{location}`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+parent}/authorizationPolicies", + "request": { + "$ref": "AuthorizationPolicy" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a single AuthorizationPolicy.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/authorizationPolicies/{authorizationPoliciesId}", + "httpMethod": "DELETE", + "id": "networksecurity.projects.locations.authorizationPolicies.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. A name of the AuthorizationPolicy to delete. Must be in the format `projects/{project}/locations/{location}/authorizationPolicies/*`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/authorizationPolicies/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets details of a single AuthorizationPolicy.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/authorizationPolicies/{authorizationPoliciesId}", + "httpMethod": "GET", + "id": "networksecurity.projects.locations.authorizationPolicies.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. A name of the AuthorizationPolicy to get. Must be in the format `projects/{project}/locations/{location}/authorizationPolicies/*`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/authorizationPolicies/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "AuthorizationPolicy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "getIamPolicy": { + "description": "Gets the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/authorizationPolicies/{authorizationPoliciesId}:getIamPolicy", + "httpMethod": "GET", + "id": "networksecurity.projects.locations.authorizationPolicies.getIamPolicy", + "parameterOrder": [ + "resource" + ], + "parameters": { + "options.requestedPolicyVersion": { + "description": "Optional. The policy format version to be returned. Valid values are 0, 1, and 3. Requests specifying an invalid value will be rejected. Requests for policies with any conditional bindings must specify version 3. Policies without any conditional bindings may specify any valid value or leave the field unset. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies).", + "format": "int32", + "location": "query", + "type": "integer" + }, + "resource": { + "description": "REQUIRED: The resource for which the policy is being requested. See the operation documentation for the appropriate value for this field.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/authorizationPolicies/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+resource}:getIamPolicy", + "response": { + "$ref": "GoogleIamV1Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists AuthorizationPolicies in a given project and location.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/authorizationPolicies", + "httpMethod": "GET", + "id": "networksecurity.projects.locations.authorizationPolicies.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "Maximum number of AuthorizationPolicies to return per call.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The value returned by the last `ListAuthorizationPoliciesResponse` Indicates that this is a continuation of a prior `ListAuthorizationPolicies` call, and that the system should return the next page of data.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The project and location from which the AuthorizationPolicies should be listed, specified in the format `projects/{project}/locations/{location}`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+parent}/authorizationPolicies", + "response": { + "$ref": "ListAuthorizationPoliciesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Updates the parameters of a single AuthorizationPolicy.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/authorizationPolicies/{authorizationPoliciesId}", + "httpMethod": "PATCH", + "id": "networksecurity.projects.locations.authorizationPolicies.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. Name of the AuthorizationPolicy resource. It matches pattern `projects/{project}/locations/{location}/authorizationPolicies/`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/authorizationPolicies/[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Optional. Field mask is used to specify the fields to be overwritten in the AuthorizationPolicy resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field will be overwritten if it is in the mask. If the user does not provide a mask then all fields will be overwritten.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "request": { + "$ref": "AuthorizationPolicy" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "setIamPolicy": { + "description": "Sets the access control policy on the specified resource. Replaces any existing policy. Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED` errors.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/authorizationPolicies/{authorizationPoliciesId}:setIamPolicy", + "httpMethod": "POST", + "id": "networksecurity.projects.locations.authorizationPolicies.setIamPolicy", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy is being specified. See the operation documentation for the appropriate value for this field.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/authorizationPolicies/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+resource}:setIamPolicy", + "request": { + "$ref": "GoogleIamV1SetIamPolicyRequest" + }, + "response": { + "$ref": "GoogleIamV1Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource. If the resource does not exist, this will return an empty set of permissions, not a `NOT_FOUND` error. Note: This operation is designed to be used for building permission-aware UIs and command-line tools, not for authorization checking. This operation may \"fail open\" without warning.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/authorizationPolicies/{authorizationPoliciesId}:testIamPermissions", + "httpMethod": "POST", + "id": "networksecurity.projects.locations.authorizationPolicies.testIamPermissions", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy detail is being requested. See the operation documentation for the appropriate value for this field.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/authorizationPolicies/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+resource}:testIamPermissions", + "request": { + "$ref": "GoogleIamV1TestIamPermissionsRequest" + }, + "response": { + "$ref": "GoogleIamV1TestIamPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "clientTlsPolicies": { + "methods": { + "create": { + "description": "Creates a new ClientTlsPolicy in a given project and location.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clientTlsPolicies", + "httpMethod": "POST", + "id": "networksecurity.projects.locations.clientTlsPolicies.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "clientTlsPolicyId": { + "description": "Required. Short name of the ClientTlsPolicy resource to be created. This value should be 1-63 characters long, containing only letters, numbers, hyphens, and underscores, and should not start with a number. E.g. \"client_mtls_policy\".", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The parent resource of the ClientTlsPolicy. Must be in the format `projects/*/locations/{location}`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+parent}/clientTlsPolicies", + "request": { + "$ref": "ClientTlsPolicy" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a single ClientTlsPolicy.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clientTlsPolicies/{clientTlsPoliciesId}", + "httpMethod": "DELETE", + "id": "networksecurity.projects.locations.clientTlsPolicies.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. A name of the ClientTlsPolicy to delete. Must be in the format `projects/*/locations/{location}/clientTlsPolicies/*`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clientTlsPolicies/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets details of a single ClientTlsPolicy.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clientTlsPolicies/{clientTlsPoliciesId}", + "httpMethod": "GET", + "id": "networksecurity.projects.locations.clientTlsPolicies.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. A name of the ClientTlsPolicy to get. Must be in the format `projects/*/locations/{location}/clientTlsPolicies/*`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clientTlsPolicies/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "ClientTlsPolicy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "getIamPolicy": { + "description": "Gets the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clientTlsPolicies/{clientTlsPoliciesId}:getIamPolicy", + "httpMethod": "GET", + "id": "networksecurity.projects.locations.clientTlsPolicies.getIamPolicy", + "parameterOrder": [ + "resource" + ], + "parameters": { + "options.requestedPolicyVersion": { + "description": "Optional. The policy format version to be returned. Valid values are 0, 1, and 3. Requests specifying an invalid value will be rejected. Requests for policies with any conditional bindings must specify version 3. Policies without any conditional bindings may specify any valid value or leave the field unset. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies).", + "format": "int32", + "location": "query", + "type": "integer" + }, + "resource": { + "description": "REQUIRED: The resource for which the policy is being requested. See the operation documentation for the appropriate value for this field.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clientTlsPolicies/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+resource}:getIamPolicy", + "response": { + "$ref": "GoogleIamV1Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists ClientTlsPolicies in a given project and location.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clientTlsPolicies", + "httpMethod": "GET", + "id": "networksecurity.projects.locations.clientTlsPolicies.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "Maximum number of ClientTlsPolicies to return per call.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The value returned by the last `ListClientTlsPoliciesResponse` Indicates that this is a continuation of a prior `ListClientTlsPolicies` call, and that the system should return the next page of data.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The project and location from which the ClientTlsPolicies should be listed, specified in the format `projects/*/locations/{location}`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+parent}/clientTlsPolicies", + "response": { + "$ref": "ListClientTlsPoliciesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Updates the parameters of a single ClientTlsPolicy.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clientTlsPolicies/{clientTlsPoliciesId}", + "httpMethod": "PATCH", + "id": "networksecurity.projects.locations.clientTlsPolicies.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. Name of the ClientTlsPolicy resource. It matches the pattern `projects/*/locations/{location}/clientTlsPolicies/{client_tls_policy}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clientTlsPolicies/[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Optional. Field mask is used to specify the fields to be overwritten in the ClientTlsPolicy resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field will be overwritten if it is in the mask. If the user does not provide a mask then all fields will be overwritten.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "request": { + "$ref": "ClientTlsPolicy" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "setIamPolicy": { + "description": "Sets the access control policy on the specified resource. Replaces any existing policy. Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED` errors.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clientTlsPolicies/{clientTlsPoliciesId}:setIamPolicy", + "httpMethod": "POST", + "id": "networksecurity.projects.locations.clientTlsPolicies.setIamPolicy", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy is being specified. See the operation documentation for the appropriate value for this field.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clientTlsPolicies/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+resource}:setIamPolicy", + "request": { + "$ref": "GoogleIamV1SetIamPolicyRequest" + }, + "response": { + "$ref": "GoogleIamV1Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource. If the resource does not exist, this will return an empty set of permissions, not a `NOT_FOUND` error. Note: This operation is designed to be used for building permission-aware UIs and command-line tools, not for authorization checking. This operation may \"fail open\" without warning.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/clientTlsPolicies/{clientTlsPoliciesId}:testIamPermissions", + "httpMethod": "POST", + "id": "networksecurity.projects.locations.clientTlsPolicies.testIamPermissions", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy detail is being requested. See the operation documentation for the appropriate value for this field.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/clientTlsPolicies/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+resource}:testIamPermissions", + "request": { + "$ref": "GoogleIamV1TestIamPermissionsRequest" + }, + "response": { + "$ref": "GoogleIamV1TestIamPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "operations": { + "methods": { + "cancel": { + "description": "Starts asynchronous cancellation on a long-running operation. The server makes a best effort to cancel the operation, but success is not guaranteed. If the server doesn't support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Clients can use Operations.GetOperation or other methods to check whether the cancellation succeeded or whether the operation completed despite cancellation. On successful cancellation, the operation is not deleted; instead, it becomes an operation with an Operation.error value with a google.rpc.Status.code of 1, corresponding to `Code.CANCELLED`.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}:cancel", + "httpMethod": "POST", + "id": "networksecurity.projects.locations.operations.cancel", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be cancelled.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}:cancel", + "request": { + "$ref": "CancelOperationRequest" + }, + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a long-running operation. This method indicates that the client is no longer interested in the operation result. It does not cancel the operation. If the server doesn't support this method, it returns `google.rpc.Code.UNIMPLEMENTED`.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}", + "httpMethod": "DELETE", + "id": "networksecurity.projects.locations.operations.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource to be deleted.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}", + "httpMethod": "GET", + "id": "networksecurity.projects.locations.operations.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "The name of the operation resource.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns `UNIMPLEMENTED`. NOTE: the `name` binding allows API services to override the binding to use different resource name schemes, such as `users/*/operations`. To override the binding, API services can add a binding such as `\"/v1/{name=users/*}/operations\"` to their service configuration. For backwards compatibility, the default name includes the operations collection id, however overriding users must ensure the name binding is the parent resource, without the operations collection id.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/operations", + "httpMethod": "GET", + "id": "networksecurity.projects.locations.operations.list", + "parameterOrder": [ + "name" + ], + "parameters": { + "filter": { + "description": "The standard list filter.", + "location": "query", + "type": "string" + }, + "name": { + "description": "The name of the operation's parent resource.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + }, + "pageSize": { + "description": "The standard list page size.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The standard list page token.", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/{+name}/operations", + "response": { + "$ref": "ListOperationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "serverTlsPolicies": { + "methods": { + "create": { + "description": "Creates a new ServerTlsPolicy in a given project and location.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/serverTlsPolicies", + "httpMethod": "POST", + "id": "networksecurity.projects.locations.serverTlsPolicies.create", + "parameterOrder": [ + "parent" + ], + "parameters": { + "parent": { + "description": "Required. The parent resource of the ServerTlsPolicy. Must be in the format `projects/*/locations/{location}`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + }, + "serverTlsPolicyId": { + "description": "Required. Short name of the ServerTlsPolicy resource to be created. This value should be 1-63 characters long, containing only letters, numbers, hyphens, and underscores, and should not start with a number. E.g. \"server_mtls_policy\".", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/{+parent}/serverTlsPolicies", + "request": { + "$ref": "ServerTlsPolicy" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "description": "Deletes a single ServerTlsPolicy.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/serverTlsPolicies/{serverTlsPoliciesId}", + "httpMethod": "DELETE", + "id": "networksecurity.projects.locations.serverTlsPolicies.delete", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. A name of the ServerTlsPolicy to delete. Must be in the format `projects/*/locations/{location}/serverTlsPolicies/*`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/serverTlsPolicies/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "description": "Gets details of a single ServerTlsPolicy.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/serverTlsPolicies/{serverTlsPoliciesId}", + "httpMethod": "GET", + "id": "networksecurity.projects.locations.serverTlsPolicies.get", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. A name of the ServerTlsPolicy to get. Must be in the format `projects/*/locations/{location}/serverTlsPolicies/*`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/serverTlsPolicies/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "response": { + "$ref": "ServerTlsPolicy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "getIamPolicy": { + "description": "Gets the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/serverTlsPolicies/{serverTlsPoliciesId}:getIamPolicy", + "httpMethod": "GET", + "id": "networksecurity.projects.locations.serverTlsPolicies.getIamPolicy", + "parameterOrder": [ + "resource" + ], + "parameters": { + "options.requestedPolicyVersion": { + "description": "Optional. The policy format version to be returned. Valid values are 0, 1, and 3. Requests specifying an invalid value will be rejected. Requests for policies with any conditional bindings must specify version 3. Policies without any conditional bindings may specify any valid value or leave the field unset. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies).", + "format": "int32", + "location": "query", + "type": "integer" + }, + "resource": { + "description": "REQUIRED: The resource for which the policy is being requested. See the operation documentation for the appropriate value for this field.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/serverTlsPolicies/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+resource}:getIamPolicy", + "response": { + "$ref": "GoogleIamV1Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "description": "Lists ServerTlsPolicies in a given project and location.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/serverTlsPolicies", + "httpMethod": "GET", + "id": "networksecurity.projects.locations.serverTlsPolicies.list", + "parameterOrder": [ + "parent" + ], + "parameters": { + "pageSize": { + "description": "Maximum number of ServerTlsPolicies to return per call.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "pageToken": { + "description": "The value returned by the last `ListServerTlsPoliciesResponse` Indicates that this is a continuation of a prior `ListServerTlsPolicies` call, and that the system should return the next page of data.", + "location": "query", + "type": "string" + }, + "parent": { + "description": "Required. The project and location from which the ServerTlsPolicies should be listed, specified in the format `projects/*/locations/{location}`.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+parent}/serverTlsPolicies", + "response": { + "$ref": "ListServerTlsPoliciesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "description": "Updates the parameters of a single ServerTlsPolicy.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/serverTlsPolicies/{serverTlsPoliciesId}", + "httpMethod": "PATCH", + "id": "networksecurity.projects.locations.serverTlsPolicies.patch", + "parameterOrder": [ + "name" + ], + "parameters": { + "name": { + "description": "Required. Name of the ServerTlsPolicy resource. It matches the pattern `projects/*/locations/{location}/serverTlsPolicies/{server_tls_policy}`", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/serverTlsPolicies/[^/]+$", + "required": true, + "type": "string" + }, + "updateMask": { + "description": "Optional. Field mask is used to specify the fields to be overwritten in the ServerTlsPolicy resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field will be overwritten if it is in the mask. If the user does not provide a mask then all fields will be overwritten.", + "format": "google-fieldmask", + "location": "query", + "type": "string" + } + }, + "path": "v1beta1/{+name}", + "request": { + "$ref": "ServerTlsPolicy" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "setIamPolicy": { + "description": "Sets the access control policy on the specified resource. Replaces any existing policy. Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED` errors.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/serverTlsPolicies/{serverTlsPoliciesId}:setIamPolicy", + "httpMethod": "POST", + "id": "networksecurity.projects.locations.serverTlsPolicies.setIamPolicy", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy is being specified. See the operation documentation for the appropriate value for this field.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/serverTlsPolicies/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+resource}:setIamPolicy", + "request": { + "$ref": "GoogleIamV1SetIamPolicyRequest" + }, + "response": { + "$ref": "GoogleIamV1Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource. If the resource does not exist, this will return an empty set of permissions, not a `NOT_FOUND` error. Note: This operation is designed to be used for building permission-aware UIs and command-line tools, not for authorization checking. This operation may \"fail open\" without warning.", + "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/serverTlsPolicies/{serverTlsPoliciesId}:testIamPermissions", + "httpMethod": "POST", + "id": "networksecurity.projects.locations.serverTlsPolicies.testIamPermissions", + "parameterOrder": [ + "resource" + ], + "parameters": { + "resource": { + "description": "REQUIRED: The resource for which the policy detail is being requested. See the operation documentation for the appropriate value for this field.", + "location": "path", + "pattern": "^projects/[^/]+/locations/[^/]+/serverTlsPolicies/[^/]+$", + "required": true, + "type": "string" + } + }, + "path": "v1beta1/{+resource}:testIamPermissions", + "request": { + "$ref": "GoogleIamV1TestIamPermissionsRequest" + }, + "response": { + "$ref": "GoogleIamV1TestIamPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } + } + } + } + }, + "revision": "20210624", + "rootUrl": "https://networksecurity.googleapis.com/", + "schemas": { + "AuthorizationPolicy": { + "description": "AuthorizationPolicy is a resource that specifies how a server should authorize incoming connections. This resource in itself does not change the configuration unless it's attached to a target https proxy or endpoint config selector resource.", + "id": "AuthorizationPolicy", + "properties": { + "action": { + "description": "Required. The action to take when a rule match is found. Possible values are \"ALLOW\" or \"DENY\".", + "enum": [ + "ACTION_UNSPECIFIED", + "ALLOW", + "DENY" + ], + "enumDescriptions": [ + "Default value.", + "Grant access.", + "Deny access." + ], + "type": "string" + }, + "createTime": { + "description": "Output only. The timestamp when the resource was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "description": { + "description": "Optional. Free-text description of the resource.", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. Set of label tags associated with the AuthorizationPolicy resource.", + "type": "object" + }, + "name": { + "description": "Required. Name of the AuthorizationPolicy resource. It matches pattern `projects/{project}/locations/{location}/authorizationPolicies/`.", + "type": "string" + }, + "rules": { + "description": "Optional. List of rules to match. Note that at least one of the rules must match in order for the action specified in the 'action' field to be taken. A rule is a match if there is a matching source and destination. If left blank, the action specified in the `action` field will be applied on every request.", + "items": { + "$ref": "Rule" + }, + "type": "array" + }, + "updateTime": { + "description": "Output only. The timestamp when the resource was updated.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "CancelOperationRequest": { + "description": "The request message for Operations.CancelOperation.", + "id": "CancelOperationRequest", + "properties": {}, + "type": "object" + }, + "CertificateProviderInstance": { + "description": "Specification of a TLS certificate provider instance. Workloads may have one or more CertificateProvider instances (plugins) and one of them is enabled and configured by specifying this message. Workloads use the values from this message to locate and load the CertificateProvider instance configuration.", + "id": "CertificateProviderInstance", + "properties": { + "pluginInstance": { + "description": "Required. Plugin instance name, used to locate and load CertificateProvider instance configuration. Set to \"google_cloud_private_spiffe\" to use Certificate Authority Service certificate provider instance.", + "type": "string" + } + }, + "type": "object" + }, + "ClientTlsPolicy": { + "description": "ClientTlsPolicy is a resource that specifies how a client should authenticate connections to backends of a service. This resource itself does not affect configuration unless it is attached to a backend service resource.", + "id": "ClientTlsPolicy", + "properties": { + "clientCertificate": { + "$ref": "GoogleCloudNetworksecurityV1beta1CertificateProvider", + "description": "Optional. Defines a mechanism to provision client identity (public and private keys) for peer to peer authentication. The presence of this dictates mTLS." + }, + "createTime": { + "description": "Output only. The timestamp when the resource was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "description": { + "description": "Optional. Free-text description of the resource.", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. Set of label tags associated with the resource.", + "type": "object" + }, + "name": { + "description": "Required. Name of the ClientTlsPolicy resource. It matches the pattern `projects/*/locations/{location}/clientTlsPolicies/{client_tls_policy}`", + "type": "string" + }, + "serverValidationCa": { + "description": "Optional. Defines the mechanism to obtain the Certificate Authority certificate to validate the server certificate. If empty, client does not validate the server certificate.", + "items": { + "$ref": "ValidationCA" + }, + "type": "array" + }, + "sni": { + "description": "Optional. Server Name Indication string to present to the server during TLS handshake. E.g: \"secure.example.com\".", + "type": "string" + }, + "updateTime": { + "description": "Output only. The timestamp when the resource was updated.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "Destination": { + "description": "Specification of traffic destination attributes.", + "id": "Destination", + "properties": { + "hosts": { + "description": "Required. List of host names to match. Matched against HOST header in http requests. At least one host should match. Each host can be an exact match, or a prefix match (example \"mydomain.*\") or a suffix match (example // *.myorg.com\") or a presence(any) match \"*\".", + "items": { + "type": "string" + }, + "type": "array" + }, + "httpHeaderMatch": { + "$ref": "HttpHeaderMatch", + "description": "Optional. Match against key:value pair in http header. Provides a flexible match based on HTTP headers, for potentially advanced use cases. At least one header should match." + }, + "methods": { + "description": "Optional. A list of HTTP methods to match. At least one method should match. Should not be set for gRPC services.", + "items": { + "type": "string" + }, + "type": "array" + }, + "ports": { + "description": "Required. List of destination ports to match. At least one port should match.", + "items": { + "format": "uint32", + "type": "integer" + }, + "type": "array" + } + }, + "type": "object" + }, + "Empty": { + "description": "A generic empty message that you can re-use to avoid defining duplicated empty messages in your APIs. A typical example is to use it as the request or the response type of an API method. For instance: service Foo { rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty); } The JSON representation for `Empty` is empty JSON object `{}`.", + "id": "Empty", + "properties": {}, + "type": "object" + }, + "Expr": { + "description": "Represents a textual expression in the Common Expression Language (CEL) syntax. CEL is a C-like expression language. The syntax and semantics of CEL are documented at https://github.com/google/cel-spec. Example (Comparison): title: \"Summary size limit\" description: \"Determines if a summary is less than 100 chars\" expression: \"document.summary.size() < 100\" Example (Equality): title: \"Requestor is owner\" description: \"Determines if requestor is the document owner\" expression: \"document.owner == request.auth.claims.email\" Example (Logic): title: \"Public documents\" description: \"Determine whether the document should be publicly visible\" expression: \"document.type != 'private' && document.type != 'internal'\" Example (Data Manipulation): title: \"Notification string\" description: \"Create a notification string with a timestamp.\" expression: \"'New message received at ' + string(document.create_time)\" The exact variables and functions that may be referenced within an expression are determined by the service that evaluates it. See the service documentation for additional information.", + "id": "Expr", + "properties": { + "description": { + "description": "Optional. Description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI.", + "type": "string" + }, + "expression": { + "description": "Textual representation of an expression in Common Expression Language syntax.", + "type": "string" + }, + "location": { + "description": "Optional. String indicating the location of the expression for error reporting, e.g. a file name and a position in the file.", + "type": "string" + }, + "title": { + "description": "Optional. Title for the expression, i.e. a short string describing its purpose. This can be used e.g. in UIs which allow to enter the expression.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleCloudNetworksecurityV1beta1CertificateProvider": { + "description": "Specification of certificate provider. Defines the mechanism to obtain the certificate and private key for peer to peer authentication.", + "id": "GoogleCloudNetworksecurityV1beta1CertificateProvider", + "properties": { + "certificateProviderInstance": { + "$ref": "CertificateProviderInstance", + "description": "The certificate provider instance specification that will be passed to the data plane, which will be used to load necessary credential information." + }, + "grpcEndpoint": { + "$ref": "GoogleCloudNetworksecurityV1beta1GrpcEndpoint", + "description": "gRPC specific configuration to access the gRPC server to obtain the cert and private key." + } + }, + "type": "object" + }, + "GoogleCloudNetworksecurityV1beta1GrpcEndpoint": { + "description": "Specification of the GRPC Endpoint.", + "id": "GoogleCloudNetworksecurityV1beta1GrpcEndpoint", + "properties": { + "targetUri": { + "description": "Required. The target URI of the gRPC endpoint. Only UDS path is supported, and should start with “unix:”.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleIamV1AuditConfig": { + "description": "Specifies the audit configuration for a service. The configuration determines which permission types are logged, and what identities, if any, are exempted from logging. An AuditConfig must have one or more AuditLogConfigs. If there are AuditConfigs for both `allServices` and a specific service, the union of the two AuditConfigs is used for that service: the log_types specified in each AuditConfig are enabled, and the exempted_members in each AuditLogConfig are exempted. Example Policy with multiple AuditConfigs: { \"audit_configs\": [ { \"service\": \"allServices\", \"audit_log_configs\": [ { \"log_type\": \"DATA_READ\", \"exempted_members\": [ \"user:jose@example.com\" ] }, { \"log_type\": \"DATA_WRITE\" }, { \"log_type\": \"ADMIN_READ\" } ] }, { \"service\": \"sampleservice.googleapis.com\", \"audit_log_configs\": [ { \"log_type\": \"DATA_READ\" }, { \"log_type\": \"DATA_WRITE\", \"exempted_members\": [ \"user:aliya@example.com\" ] } ] } ] } For sampleservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ logging. It also exempts jose@example.com from DATA_READ logging, and aliya@example.com from DATA_WRITE logging.", + "id": "GoogleIamV1AuditConfig", + "properties": { + "auditLogConfigs": { + "description": "The configuration for logging of each type of permission.", + "items": { + "$ref": "GoogleIamV1AuditLogConfig" + }, + "type": "array" + }, + "service": { + "description": "Specifies a service that will be enabled for audit logging. For example, `storage.googleapis.com`, `cloudsql.googleapis.com`. `allServices` is a special value that covers all services.", + "type": "string" + } + }, + "type": "object" + }, + "GoogleIamV1AuditLogConfig": { + "description": "Provides the configuration for logging a type of permissions. Example: { \"audit_log_configs\": [ { \"log_type\": \"DATA_READ\", \"exempted_members\": [ \"user:jose@example.com\" ] }, { \"log_type\": \"DATA_WRITE\" } ] } This enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting jose@example.com from DATA_READ logging.", + "id": "GoogleIamV1AuditLogConfig", + "properties": { + "exemptedMembers": { + "description": "Specifies the identities that do not cause logging for this type of permission. Follows the same format of Binding.members.", + "items": { + "type": "string" + }, + "type": "array" + }, + "logType": { + "description": "The log type that this config enables.", + "enum": [ + "LOG_TYPE_UNSPECIFIED", + "ADMIN_READ", + "DATA_WRITE", + "DATA_READ" + ], + "enumDescriptions": [ + "Default case. Should never be this.", + "Admin reads. Example: CloudIAM getIamPolicy", + "Data writes. Example: CloudSQL Users create", + "Data reads. Example: CloudSQL Users list" + ], + "type": "string" + } + }, + "type": "object" + }, + "GoogleIamV1Binding": { + "description": "Associates `members` with a `role`.", + "id": "GoogleIamV1Binding", + "properties": { + "condition": { + "$ref": "Expr", + "description": "The condition that is associated with this binding. If the condition evaluates to `true`, then this binding applies to the current request. If the condition evaluates to `false`, then this binding does not apply to the current request. However, a different role binding might grant the same role to one or more of the members in this binding. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies)." + }, + "members": { + "description": "Specifies the identities requesting access for a Cloud Platform resource. `members` can have the following values: * `allUsers`: A special identifier that represents anyone who is on the internet; with or without a Google account. * `allAuthenticatedUsers`: A special identifier that represents anyone who is authenticated with a Google account or a service account. * `user:{emailid}`: An email address that represents a specific Google account. For example, `alice@example.com` . * `serviceAccount:{emailid}`: An email address that represents a service account. For example, `my-other-app@appspot.gserviceaccount.com`. * `group:{emailid}`: An email address that represents a Google group. For example, `admins@example.com`. * `deleted:user:{emailid}?uid={uniqueid}`: An email address (plus unique identifier) representing a user that has been recently deleted. For example, `alice@example.com?uid=123456789012345678901`. If the user is recovered, this value reverts to `user:{emailid}` and the recovered user retains the role in the binding. * `deleted:serviceAccount:{emailid}?uid={uniqueid}`: An email address (plus unique identifier) representing a service account that has been recently deleted. For example, `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`. If the service account is undeleted, this value reverts to `serviceAccount:{emailid}` and the undeleted service account retains the role in the binding. * `deleted:group:{emailid}?uid={uniqueid}`: An email address (plus unique identifier) representing a Google group that has been recently deleted. For example, `admins@example.com?uid=123456789012345678901`. If the group is recovered, this value reverts to `group:{emailid}` and the recovered group retains the role in the binding. * `domain:{domain}`: The G Suite domain (primary) that represents all the users of that domain. For example, `google.com` or `example.com`. ", + "items": { + "type": "string" + }, + "type": "array" + }, + "role": { + "description": "Role that is assigned to `members`. For example, `roles/viewer`, `roles/editor`, or `roles/owner`.", + "type": "string" + } + }, + "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` to a single `role`. Members 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 < 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 < 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": { + "description": "Specifies cloud audit logging configuration for this policy.", + "items": { + "$ref": "GoogleIamV1AuditConfig" + }, + "type": "array" + }, + "bindings": { + "description": "Associates a list of `members` to a `role`. Optionally, may specify a `condition` that determines how and when the `bindings` are applied. Each of the `bindings` must contain at least one member.", + "items": { + "$ref": "GoogleIamV1Binding" + }, + "type": "array" + }, + "etag": { + "description": "`etag` is used for optimistic concurrency control as a way to help prevent simultaneous updates of a policy from overwriting each other. It is strongly suggested that systems make use of the `etag` in the read-modify-write cycle to perform policy updates in order to avoid race conditions: An `etag` is returned in the response to `getIamPolicy`, and systems are expected to put that etag in the request to `setIamPolicy` to ensure that their change will be applied to the same version of the policy. **Important:** If you use IAM Conditions, you must include the `etag` field whenever you call `setIamPolicy`. If you omit this field, then IAM allows you to overwrite a version `3` policy with a version `1` policy, and all of the conditions in the version `3` policy are lost.", + "format": "byte", + "type": "string" + }, + "version": { + "description": "Specifies the format of the policy. Valid values are `0`, `1`, and `3`. Requests that specify an invalid value are rejected. Any operation that affects conditional role bindings must specify version `3`. This requirement applies to the following operations: * Getting a policy that includes a conditional role binding * Adding a conditional role binding to a policy * Changing a conditional role binding in a policy * Removing any role binding, with or without a condition, from a policy that includes conditions **Important:** If you use IAM Conditions, you must include the `etag` field whenever you call `setIamPolicy`. If you omit this field, then IAM allows you to overwrite a version `3` policy with a version `1` policy, and all of the conditions in the version `3` policy are lost. If a policy does not include any conditions, operations on that policy may specify any valid version or leave the field unset. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies).", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, + "GoogleIamV1SetIamPolicyRequest": { + "description": "Request message for `SetIamPolicy` method.", + "id": "GoogleIamV1SetIamPolicyRequest", + "properties": { + "policy": { + "$ref": "GoogleIamV1Policy", + "description": "REQUIRED: The complete policy to be applied to the `resource`. The size of the policy is limited to a few 10s of KB. An empty policy is a valid policy but certain Cloud Platform services (such as Projects) might reject them." + }, + "updateMask": { + "description": "OPTIONAL: A FieldMask specifying which fields of the policy to modify. Only the fields in the mask will be modified. If no mask is provided, the following default mask is used: `paths: \"bindings, etag\"`", + "format": "google-fieldmask", + "type": "string" + } + }, + "type": "object" + }, + "GoogleIamV1TestIamPermissionsRequest": { + "description": "Request message for `TestIamPermissions` method.", + "id": "GoogleIamV1TestIamPermissionsRequest", + "properties": { + "permissions": { + "description": "The set of permissions to check for the `resource`. Permissions with wildcards (such as '*' or 'storage.*') are not allowed. For more information see [IAM Overview](https://cloud.google.com/iam/docs/overview#permissions).", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "GoogleIamV1TestIamPermissionsResponse": { + "description": "Response message for `TestIamPermissions` method.", + "id": "GoogleIamV1TestIamPermissionsResponse", + "properties": { + "permissions": { + "description": "A subset of `TestPermissionsRequest.permissions` that the caller is allowed.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "HttpHeaderMatch": { + "description": "Specification of HTTP header match atrributes.", + "id": "HttpHeaderMatch", + "properties": { + "headerName": { + "description": "Required. The name of the HTTP header to match. For matching against the HTTP request's authority, use a headerMatch with the header name \":authority\". For matching a request's method, use the headerName \":method\".", + "type": "string" + }, + "regexMatch": { + "description": "Required. The value of the header must match the regular expression specified in regexMatch. For regular expression grammar, please see: en.cppreference.com/w/cpp/regex/ecmascript For matching against a port specified in the HTTP request, use a headerMatch with headerName set to Host and a regular expression that satisfies the RFC2616 Host header's port specifier.", + "type": "string" + } + }, + "type": "object" + }, + "ListAuthorizationPoliciesResponse": { + "description": "Response returned by the ListAuthorizationPolicies method.", + "id": "ListAuthorizationPoliciesResponse", + "properties": { + "authorizationPolicies": { + "description": "List of AuthorizationPolicies resources.", + "items": { + "$ref": "AuthorizationPolicy" + }, + "type": "array" + }, + "nextPageToken": { + "description": "If there might be more results than those appearing in this response, then `next_page_token` is included. To get the next set of results, call this method again using the value of `next_page_token` as `page_token`.", + "type": "string" + } + }, + "type": "object" + }, + "ListClientTlsPoliciesResponse": { + "description": "Response returned by the ListClientTlsPolicies method.", + "id": "ListClientTlsPoliciesResponse", + "properties": { + "clientTlsPolicies": { + "description": "List of ClientTlsPolicy resources.", + "items": { + "$ref": "ClientTlsPolicy" + }, + "type": "array" + }, + "nextPageToken": { + "description": "If there might be more results than those appearing in this response, then `next_page_token` is included. To get the next set of results, call this method again using the value of `next_page_token` as `page_token`.", + "type": "string" + } + }, + "type": "object" + }, + "ListLocationsResponse": { + "description": "The response message for Locations.ListLocations.", + "id": "ListLocationsResponse", + "properties": { + "locations": { + "description": "A list of locations that matches the specified filter in the request.", + "items": { + "$ref": "Location" + }, + "type": "array" + }, + "nextPageToken": { + "description": "The standard List next-page token.", + "type": "string" + } + }, + "type": "object" + }, + "ListOperationsResponse": { + "description": "The response message for Operations.ListOperations.", + "id": "ListOperationsResponse", + "properties": { + "nextPageToken": { + "description": "The standard List next-page token.", + "type": "string" + }, + "operations": { + "description": "A list of operations that matches the specified filter in the request.", + "items": { + "$ref": "Operation" + }, + "type": "array" + } + }, + "type": "object" + }, + "ListServerTlsPoliciesResponse": { + "description": "Response returned by the ListServerTlsPolicies method.", + "id": "ListServerTlsPoliciesResponse", + "properties": { + "nextPageToken": { + "description": "If there might be more results than those appearing in this response, then `next_page_token` is included. To get the next set of results, call this method again using the value of `next_page_token` as `page_token`.", + "type": "string" + }, + "serverTlsPolicies": { + "description": "List of ServerTlsPolicy resources.", + "items": { + "$ref": "ServerTlsPolicy" + }, + "type": "array" + } + }, + "type": "object" + }, + "Location": { + "description": "A resource that represents Google Cloud Platform location.", + "id": "Location", + "properties": { + "displayName": { + "description": "The friendly name for this location, typically a nearby city name. For example, \"Tokyo\".", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Cross-service attributes for the location. For example {\"cloud.googleapis.com/region\": \"us-east1\"}", + "type": "object" + }, + "locationId": { + "description": "The canonical id for this location. For example: `\"us-east1\"`.", + "type": "string" + }, + "metadata": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "Service-specific metadata. For example the available capacity at the given location.", + "type": "object" + }, + "name": { + "description": "Resource name for the location, which may vary between implementations. For example: `\"projects/example-project/locations/us-east1\"`", + "type": "string" + } + }, + "type": "object" + }, + "MTLSPolicy": { + "description": "Specification of the MTLSPolicy.", + "id": "MTLSPolicy", + "properties": { + "clientValidationCa": { + "description": "Required. Defines the mechanism to obtain the Certificate Authority certificate to validate the client certificate.", + "items": { + "$ref": "ValidationCA" + }, + "type": "array" + } + }, + "type": "object" + }, + "Operation": { + "description": "This resource represents a long-running operation that is the result of a network API call.", + "id": "Operation", + "properties": { + "done": { + "description": "If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available.", + "type": "boolean" + }, + "error": { + "$ref": "Status", + "description": "The error result of the operation in case of failure or cancellation." + }, + "metadata": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.", + "type": "object" + }, + "name": { + "description": "The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id}`.", + "type": "string" + }, + "response": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "description": "The normal response of the operation in case of success. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.", + "type": "object" + } + }, + "type": "object" + }, + "OperationMetadata": { + "description": "Represents the metadata of the long-running operation.", + "id": "OperationMetadata", + "properties": { + "apiVersion": { + "description": "Output only. API version used to start the operation.", + "readOnly": true, + "type": "string" + }, + "createTime": { + "description": "Output only. The time the operation was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "endTime": { + "description": "Output only. The time the operation finished running.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "requestedCancellation": { + "description": "Output only. Identifies whether the user has requested cancellation of the operation. Operations that have successfully been cancelled have Operation.error value with a google.rpc.Status.code of 1, corresponding to `Code.CANCELLED`.", + "readOnly": true, + "type": "boolean" + }, + "statusMessage": { + "description": "Output only. Human-readable status of the operation, if any.", + "readOnly": true, + "type": "string" + }, + "target": { + "description": "Output only. Server-defined resource path for the target of the operation.", + "readOnly": true, + "type": "string" + }, + "verb": { + "description": "Output only. Name of the verb executed by the operation.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "Rule": { + "description": "Specification of rules.", + "id": "Rule", + "properties": { + "destinations": { + "description": "Optional. List of attributes for the traffic destination. All of the destinations must match. A destination is a match if a request matches all the specified hosts, ports, methods and headers. If not set, the action specified in the 'action' field will be applied without any rule checks for the destination.", + "items": { + "$ref": "Destination" + }, + "type": "array" + }, + "sources": { + "description": "Optional. List of attributes for the traffic source. All of the sources must match. A source is a match if both principals and ip_blocks match. If not set, the action specified in the 'action' field will be applied without any rule checks for the source.", + "items": { + "$ref": "Source" + }, + "type": "array" + } + }, + "type": "object" + }, + "ServerTlsPolicy": { + "description": "ServerTlsPolicy is a resource that specifies how a server should authenticate incoming requests. This resource itself does not affect configuration unless it is attached to a target https proxy or endpoint config selector resource.", + "id": "ServerTlsPolicy", + "properties": { + "allowOpen": { + "description": "Optional. Determines if server allows plaintext connections. If set to true, server allows plain text connections. By default, it is set to false. This setting is not exclusive of other encryption modes. For example, if allow_open and mtls_policy are set, server allows both plain text and mTLS connections. See documentation of other encryption modes to confirm compatibility.", + "type": "boolean" + }, + "createTime": { + "description": "Output only. The timestamp when the resource was created.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + }, + "description": { + "description": "Optional. Free-text description of the resource.", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Optional. Set of label tags associated with the resource.", + "type": "object" + }, + "mtlsPolicy": { + "$ref": "MTLSPolicy", + "description": "Optional. Defines a mechanism to provision peer validation certificates for peer to peer authentication (Mutual TLS - mTLS). If not specified, client certificate will not be requested. The connection is treated as TLS and not mTLS. If allow_open and mtls_policy are set, server allows both plain text and mTLS connections." + }, + "name": { + "description": "Required. Name of the ServerTlsPolicy resource. It matches the pattern `projects/*/locations/{location}/serverTlsPolicies/{server_tls_policy}`", + "type": "string" + }, + "serverCertificate": { + "$ref": "GoogleCloudNetworksecurityV1beta1CertificateProvider", + "description": "Optional. Defines a mechanism to provision server identity (public and private keys). Cannot be combined with allow_open as a permissive mode that allows both plain text and TLS is not supported." + }, + "updateTime": { + "description": "Output only. The timestamp when the resource was updated.", + "format": "google-datetime", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "Source": { + "description": "Specification of traffic source attributes.", + "id": "Source", + "properties": { + "ipBlocks": { + "description": "Optional. List of CIDR ranges to match based on source IP address. At least one IP block should match. Single IP (e.g., \"1.2.3.4\") and CIDR (e.g., \"1.2.3.0/24\") are supported.", + "items": { + "type": "string" + }, + "type": "array" + }, + "principals": { + "description": "Optional. List of peer identities to match for authorization. At least one principal should match. Each peer can be an exact match, or a prefix match (example, \"namespace/*\") or a suffix match (example, // */service-account\") or a presence match \"*\".", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "Status": { + "description": "The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors).", + "id": "Status", + "properties": { + "code": { + "description": "The status code, which should be an enum value of google.rpc.Code.", + "format": "int32", + "type": "integer" + }, + "details": { + "description": "A list of messages that carry the error details. There is a common set of message types for APIs to use.", + "items": { + "additionalProperties": { + "description": "Properties of the object. Contains field @type with type URL.", + "type": "any" + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.", + "type": "string" + } + }, + "type": "object" + }, + "ValidationCA": { + "description": "Specification of ValidationCA. Defines the mechanism to obtain the Certificate Authority certificate to validate the peer certificate.", + "id": "ValidationCA", + "properties": { + "certificateProviderInstance": { + "$ref": "CertificateProviderInstance", + "description": "The certificate provider instance specification that will be passed to the data plane, which will be used to load necessary credential information." + }, + "grpcEndpoint": { + "$ref": "GoogleCloudNetworksecurityV1beta1GrpcEndpoint", + "description": "gRPC specific configuration to access the gRPC server to obtain the CA certificate." + } + }, + "type": "object" + } + }, + "servicePath": "", + "title": "Network Security API", + "version": "v1beta1", + "version_module": true +} \ No newline at end of file diff --git a/discovery/retail-v2.json b/discovery/retail-v2.json index c17112a083f..49823b19731 100644 --- a/discovery/retail-v2.json +++ b/discovery/retail-v2.json @@ -706,7 +706,7 @@ } } }, - "revision": "20210614", + "revision": "20210625", "rootUrl": "https://retail.googleapis.com/", "schemas": { "GoogleApiHttpBody": { @@ -1125,7 +1125,7 @@ "additionalProperties": { "type": "any" }, - "description": "Additional domain specific parameters for the predictions. Allowed values: * `returnProduct`: Boolean. If set to true, the associated product object will be returned in the `results.metadata` field in the prediction response. * `returnScore`: Boolean. If set to true, the prediction 'score' corresponding to each returned product will be set in the `results.metadata` field in the prediction response. The given 'score' indicates the probability of an product being clicked/purchased given the user's context and history. * `strictFiltering`: Boolean. True by default. If set to false, the service will return generic (unfiltered) popular products instead of empty if your filter blocks all prediction results. * `priceRerankLevel`: String. Default empty. If set to be non-empty, then it needs to be one of {'no-price-reranking', 'low-price-reranking', 'medium-price-reranking', 'high-price-reranking'}. This gives request level control and adjust prediction results based on product price. * `diversityLevel`: String. Default empty. If set to be non-empty, then it needs to be one of {'no-diversity', 'low-diversity', 'medium-diversity', 'high-diversity', 'auto-diversity'}. This gives request level control and adjust prediction results based on product category.", + "description": "Additional domain specific parameters for the predictions. Allowed values: * `returnProduct`: Boolean. If set to true, the associated product object will be returned in the `results.metadata` field in the prediction response. * `returnScore`: Boolean. If set to true, the prediction 'score' corresponding to each returned product will be set in the `results.metadata` field in the prediction response. The given 'score' indicates the probability of an product being clicked/purchased given the user's context and history. * `strictFiltering`: Boolean. True by default. If set to false, the service will return generic (unfiltered) popular products instead of empty if your filter blocks all prediction results. * `priceRerankLevel`: String. Default empty. If set to be non-empty, then it needs to be one of {'no-price-reranking', 'low-price-reranking', 'medium-price-reranking', 'high-price-reranking'}. This gives request-level control and adjusts prediction results based on product price. * `diversityLevel`: String. Default empty. If set to be non-empty, then it needs to be one of {'no-diversity', 'low-diversity', 'medium-diversity', 'high-diversity', 'auto-diversity'}. This gives request-level control and adjusts prediction results based on product category.", "type": "object" }, "userEvent": { @@ -1624,11 +1624,11 @@ "type": "boolean" }, "ipAddress": { - "description": "The end user's IP address. This field is used to extract location information for personalization. This field must be either an IPv4 address (e.g. \"104.133.9.80\") or an IPv6 address (e.g. \"2001:0db8:85a3:0000:0000:8a2e:0370:7334\"). Otherwise, an INVALID_ARGUMENT error is returned. This should not be set when using the JavaScript tag in UserEventService.CollectUserEvent or if direct_user_request is set.", + "description": "The end user's IP address. Required for getting SearchRespons.sponsored_results. This field is used to extract location information for personalization. This field must be either an IPv4 address (e.g. \"104.133.9.80\") or an IPv6 address (e.g. \"2001:0db8:85a3:0000:0000:8a2e:0370:7334\"). Otherwise, an INVALID_ARGUMENT error is returned. This should not be set when using the JavaScript tag in UserEventService.CollectUserEvent or if direct_user_request is set.", "type": "string" }, "userAgent": { - "description": "User agent as included in the HTTP header. The field must be a UTF-8 encoded string with a length limit of 1,000 characters. Otherwise, an INVALID_ARGUMENT error is returned. This should not be set when using the client side event reporting with GTM or JavaScript tag in UserEventService.CollectUserEvent or if direct_user_request is set.", + "description": "User agent as included in the HTTP header. Required for getting SearchRespons.sponsored_results. The field must be a UTF-8 encoded string with a length limit of 1,000 characters. Otherwise, an INVALID_ARGUMENT error is returned. This should not be set when using the client side event reporting with GTM or JavaScript tag in UserEventService.CollectUserEvent or if direct_user_request is set.", "type": "string" }, "userId": { diff --git a/discovery/retail-v2alpha.json b/discovery/retail-v2alpha.json index a85c1a224fc..2dada21039d 100644 --- a/discovery/retail-v2alpha.json +++ b/discovery/retail-v2alpha.json @@ -706,7 +706,7 @@ } } }, - "revision": "20210614", + "revision": "20210625", "rootUrl": "https://retail.googleapis.com/", "schemas": { "GoogleApiHttpBody": { @@ -1320,7 +1320,7 @@ "additionalProperties": { "type": "any" }, - "description": "Additional domain specific parameters for the predictions. Allowed values: * `returnProduct`: Boolean. If set to true, the associated product object will be returned in the `results.metadata` field in the prediction response. * `returnScore`: Boolean. If set to true, the prediction 'score' corresponding to each returned product will be set in the `results.metadata` field in the prediction response. The given 'score' indicates the probability of an product being clicked/purchased given the user's context and history. * `strictFiltering`: Boolean. True by default. If set to false, the service will return generic (unfiltered) popular products instead of empty if your filter blocks all prediction results. * `priceRerankLevel`: String. Default empty. If set to be non-empty, then it needs to be one of {'no-price-reranking', 'low-price-reranking', 'medium-price-reranking', 'high-price-reranking'}. This gives request level control and adjust prediction results based on product price. * `diversityLevel`: String. Default empty. If set to be non-empty, then it needs to be one of {'no-diversity', 'low-diversity', 'medium-diversity', 'high-diversity', 'auto-diversity'}. This gives request level control and adjust prediction results based on product category.", + "description": "Additional domain specific parameters for the predictions. Allowed values: * `returnProduct`: Boolean. If set to true, the associated product object will be returned in the `results.metadata` field in the prediction response. * `returnScore`: Boolean. If set to true, the prediction 'score' corresponding to each returned product will be set in the `results.metadata` field in the prediction response. The given 'score' indicates the probability of an product being clicked/purchased given the user's context and history. * `strictFiltering`: Boolean. True by default. If set to false, the service will return generic (unfiltered) popular products instead of empty if your filter blocks all prediction results. * `priceRerankLevel`: String. Default empty. If set to be non-empty, then it needs to be one of {'no-price-reranking', 'low-price-reranking', 'medium-price-reranking', 'high-price-reranking'}. This gives request-level control and adjusts prediction results based on product price. * `diversityLevel`: String. Default empty. If set to be non-empty, then it needs to be one of {'no-diversity', 'low-diversity', 'medium-diversity', 'high-diversity', 'auto-diversity'}. This gives request-level control and adjusts prediction results based on product category.", "type": "object" }, "userEvent": { @@ -1819,11 +1819,11 @@ "type": "boolean" }, "ipAddress": { - "description": "The end user's IP address. This field is used to extract location information for personalization. This field must be either an IPv4 address (e.g. \"104.133.9.80\") or an IPv6 address (e.g. \"2001:0db8:85a3:0000:0000:8a2e:0370:7334\"). Otherwise, an INVALID_ARGUMENT error is returned. This should not be set when using the JavaScript tag in UserEventService.CollectUserEvent or if direct_user_request is set.", + "description": "The end user's IP address. Required for getting SearchRespons.sponsored_results. This field is used to extract location information for personalization. This field must be either an IPv4 address (e.g. \"104.133.9.80\") or an IPv6 address (e.g. \"2001:0db8:85a3:0000:0000:8a2e:0370:7334\"). Otherwise, an INVALID_ARGUMENT error is returned. This should not be set when using the JavaScript tag in UserEventService.CollectUserEvent or if direct_user_request is set.", "type": "string" }, "userAgent": { - "description": "User agent as included in the HTTP header. The field must be a UTF-8 encoded string with a length limit of 1,000 characters. Otherwise, an INVALID_ARGUMENT error is returned. This should not be set when using the client side event reporting with GTM or JavaScript tag in UserEventService.CollectUserEvent or if direct_user_request is set.", + "description": "User agent as included in the HTTP header. Required for getting SearchRespons.sponsored_results. The field must be a UTF-8 encoded string with a length limit of 1,000 characters. Otherwise, an INVALID_ARGUMENT error is returned. This should not be set when using the client side event reporting with GTM or JavaScript tag in UserEventService.CollectUserEvent or if direct_user_request is set.", "type": "string" }, "userId": { diff --git a/discovery/retail-v2beta.json b/discovery/retail-v2beta.json index 83e022ad5fb..845508ec66d 100644 --- a/discovery/retail-v2beta.json +++ b/discovery/retail-v2beta.json @@ -706,7 +706,7 @@ } } }, - "revision": "20210614", + "revision": "20210625", "rootUrl": "https://retail.googleapis.com/", "schemas": { "GoogleApiHttpBody": { @@ -1515,7 +1515,7 @@ "additionalProperties": { "type": "any" }, - "description": "Additional domain specific parameters for the predictions. Allowed values: * `returnProduct`: Boolean. If set to true, the associated product object will be returned in the `results.metadata` field in the prediction response. * `returnScore`: Boolean. If set to true, the prediction 'score' corresponding to each returned product will be set in the `results.metadata` field in the prediction response. The given 'score' indicates the probability of an product being clicked/purchased given the user's context and history. * `strictFiltering`: Boolean. True by default. If set to false, the service will return generic (unfiltered) popular products instead of empty if your filter blocks all prediction results. * `priceRerankLevel`: String. Default empty. If set to be non-empty, then it needs to be one of {'no-price-reranking', 'low-price-reranking', 'medium-price-reranking', 'high-price-reranking'}. This gives request level control and adjust prediction results based on product price. * `diversityLevel`: String. Default empty. If set to be non-empty, then it needs to be one of {'no-diversity', 'low-diversity', 'medium-diversity', 'high-diversity', 'auto-diversity'}. This gives request level control and adjust prediction results based on product category.", + "description": "Additional domain specific parameters for the predictions. Allowed values: * `returnProduct`: Boolean. If set to true, the associated product object will be returned in the `results.metadata` field in the prediction response. * `returnScore`: Boolean. If set to true, the prediction 'score' corresponding to each returned product will be set in the `results.metadata` field in the prediction response. The given 'score' indicates the probability of an product being clicked/purchased given the user's context and history. * `strictFiltering`: Boolean. True by default. If set to false, the service will return generic (unfiltered) popular products instead of empty if your filter blocks all prediction results. * `priceRerankLevel`: String. Default empty. If set to be non-empty, then it needs to be one of {'no-price-reranking', 'low-price-reranking', 'medium-price-reranking', 'high-price-reranking'}. This gives request-level control and adjusts prediction results based on product price. * `diversityLevel`: String. Default empty. If set to be non-empty, then it needs to be one of {'no-diversity', 'low-diversity', 'medium-diversity', 'high-diversity', 'auto-diversity'}. This gives request-level control and adjusts prediction results based on product category.", "type": "object" }, "userEvent": { @@ -2014,11 +2014,11 @@ "type": "boolean" }, "ipAddress": { - "description": "The end user's IP address. This field is used to extract location information for personalization. This field must be either an IPv4 address (e.g. \"104.133.9.80\") or an IPv6 address (e.g. \"2001:0db8:85a3:0000:0000:8a2e:0370:7334\"). Otherwise, an INVALID_ARGUMENT error is returned. This should not be set when using the JavaScript tag in UserEventService.CollectUserEvent or if direct_user_request is set.", + "description": "The end user's IP address. Required for getting SearchRespons.sponsored_results. This field is used to extract location information for personalization. This field must be either an IPv4 address (e.g. \"104.133.9.80\") or an IPv6 address (e.g. \"2001:0db8:85a3:0000:0000:8a2e:0370:7334\"). Otherwise, an INVALID_ARGUMENT error is returned. This should not be set when using the JavaScript tag in UserEventService.CollectUserEvent or if direct_user_request is set.", "type": "string" }, "userAgent": { - "description": "User agent as included in the HTTP header. The field must be a UTF-8 encoded string with a length limit of 1,000 characters. Otherwise, an INVALID_ARGUMENT error is returned. This should not be set when using the client side event reporting with GTM or JavaScript tag in UserEventService.CollectUserEvent or if direct_user_request is set.", + "description": "User agent as included in the HTTP header. Required for getting SearchRespons.sponsored_results. The field must be a UTF-8 encoded string with a length limit of 1,000 characters. Otherwise, an INVALID_ARGUMENT error is returned. This should not be set when using the client side event reporting with GTM or JavaScript tag in UserEventService.CollectUserEvent or if direct_user_request is set.", "type": "string" }, "userId": { diff --git a/discovery/run-v1.json b/discovery/run-v1.json index c4499955c61..36e5de5436a 100644 --- a/discovery/run-v1.json +++ b/discovery/run-v1.json @@ -12,7 +12,7 @@ "baseUrl": "https://run.googleapis.com/", "batchPath": "batch", "canonicalName": "Cloud Run", - "description": "Deploy and manage user provided container images that scale automatically based on incoming requets. The Cloud Run Admin API follows the Knative Serving API specification.", + "description": "Deploy and manage user provided container images that scale automatically based on incoming requests. The Cloud Run Admin API follows the Knative Serving API specification.", "discoveryVersion": "v1", "documentationLink": "https://cloud.google.com/run/", "fullyEncodeReservedExpansion": true, @@ -1736,7 +1736,7 @@ } } }, - "revision": "20210611", + "revision": "20210628", "rootUrl": "https://run.googleapis.com/", "schemas": { "Addressable": { diff --git a/discovery/run-v1alpha1.json b/discovery/run-v1alpha1.json index 8796236aa0d..3da6051fc8e 100644 --- a/discovery/run-v1alpha1.json +++ b/discovery/run-v1alpha1.json @@ -12,7 +12,7 @@ "baseUrl": "https://run.googleapis.com/", "batchPath": "batch", "canonicalName": "Cloud Run", - "description": "Deploy and manage user provided container images that scale automatically based on incoming requets. The Cloud Run Admin API follows the Knative Serving API specification.", + "description": "Deploy and manage user provided container images that scale automatically based on incoming requests. The Cloud Run Admin API follows the Knative Serving API specification.", "discoveryVersion": "v1", "documentationLink": "https://cloud.google.com/run/", "fullyEncodeReservedExpansion": true, @@ -268,32 +268,11 @@ } } }, - "revision": "20210611", + "revision": "20210628", "rootUrl": "https://run.googleapis.com/", "schemas": { - "Capabilities": { - "description": "Adds and removes POSIX capabilities from running containers.", - "id": "Capabilities", - "properties": { - "add": { - "description": "Added capabilities +optional", - "items": { - "type": "string" - }, - "type": "array" - }, - "drop": { - "description": "Removed capabilities +optional", - "items": { - "type": "string" - }, - "type": "array" - } - }, - "type": "object" - }, "ConfigMapEnvSource": { - "description": "ConfigMapEnvSource selects a ConfigMap to populate the environment variables with. The contents of the target ConfigMap's Data field will represent the key-value pairs as environment variables.", + "description": "Not supported by Cloud Run ConfigMapEnvSource selects a ConfigMap to populate the environment variables with. The contents of the target ConfigMap's Data field will represent the key-value pairs as environment variables.", "id": "ConfigMapEnvSource", "properties": { "localObjectReference": { @@ -301,22 +280,22 @@ "description": "This field should not be used directly as it is meant to be inlined directly into the message. Use the \"name\" field instead." }, "name": { - "description": "Cloud Run fully managed: not supported Cloud Run for Anthos: supported The ConfigMap to select from.", + "description": "The ConfigMap to select from.", "type": "string" }, "optional": { - "description": "Cloud Run fully managed: not supported Cloud Run for Anthos: supported Specify whether the ConfigMap must be defined +optional", + "description": "(Optional) Specify whether the ConfigMap must be defined", "type": "boolean" } }, "type": "object" }, "ConfigMapKeySelector": { - "description": "Cloud Run fully managed: not supported Cloud Run on GKE: supported Selects a key from a ConfigMap.", + "description": "Not supported by Cloud Run Selects a key from a ConfigMap.", "id": "ConfigMapKeySelector", "properties": { "key": { - "description": "Cloud Run fully managed: not supported Cloud Run on GKE: supported The key to select.", + "description": "The key to select.", "type": "string" }, "localObjectReference": { @@ -324,27 +303,27 @@ "description": "This field should not be used directly as it is meant to be inlined directly into the message. Use the \"name\" field instead." }, "name": { - "description": "Cloud Run fully managed: not supported Cloud Run on GKE: supported The ConfigMap to select from.", + "description": "The ConfigMap to select from.", "type": "string" }, "optional": { - "description": "Cloud Run fully managed: not supported Cloud Run on GKE: supported Specify whether the ConfigMap or its key must be defined +optional", + "description": "(Optional) Specify whether the ConfigMap or its key must be defined", "type": "boolean" } }, "type": "object" }, "ConfigMapVolumeSource": { - "description": "Adapts a ConfigMap into a volume. The contents of the target ConfigMap's Data field will be presented in a volume as files using the keys in the Data field as the file names, unless the items element is populated with specific mappings of keys to paths.", + "description": "Not supported by Cloud Run Adapts a ConfigMap into a volume. The contents of the target ConfigMap's Data field will be presented in a volume as files using the keys in the Data field as the file names, unless the items element is populated with specific mappings of keys to paths.", "id": "ConfigMapVolumeSource", "properties": { "defaultMode": { - "description": "Mode bits to use on created files by default. Must be a value between 0 and 0777. Defaults to 0644. Directories within the path are not affected by this setting. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set.", + "description": "(Optional) Mode bits to use on created files by default. Must be a value between 0 and 0777. Defaults to 0644. Directories within the path are not affected by this setting. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set.", "format": "int32", "type": "integer" }, "items": { - "description": "If unspecified, each key-value pair in the Data field of the referenced Secret will be projected into the volume as a file whose name is the key and content is the value. If specified, the listed keys will be projected into the specified paths, and unlisted keys will not be present. If a key is specified which is not present in the Secret, the volume setup will error unless it is marked optional.", + "description": "(Optional) If unspecified, each key-value pair in the Data field of the referenced Secret will be projected into the volume as a file whose name is the key and content is the value. If specified, the listed keys will be projected into the specified paths, and unlisted keys will not be present. If a key is specified that is not present in the Secret, the volume setup will error unless it is marked optional.", "items": { "$ref": "KeyToPath" }, @@ -355,7 +334,7 @@ "type": "string" }, "optional": { - "description": "Specify whether the Secret or its keys must be defined.", + "description": "(Optional) Specify whether the Secret or its keys must be defined.", "type": "boolean" } }, @@ -366,55 +345,50 @@ "id": "Container", "properties": { "args": { - "description": "Arguments to the entrypoint. The docker image's CMD is used if this is not provided. Variable references $(VAR_NAME) are expanded using the container's environment. If a variable cannot be resolved, the reference in the input string will be unchanged. The $(VAR_NAME) syntax can be escaped with a double $$, ie: $$(VAR_NAME). Escaped references will never be expanded, regardless of whether the variable exists or not. Cannot be updated. More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell +optional", + "description": "(Optional) Arguments to the entrypoint. The docker image's CMD is used if this is not provided. Variable references $(VAR_NAME) are expanded using the container's environment. If a variable cannot be resolved, the reference in the input string will be unchanged. The $(VAR_NAME) syntax can be escaped with a double $$, ie: $$(VAR_NAME). Escaped references will never be expanded, regardless of whether the variable exists or not. More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell", "items": { "type": "string" }, "type": "array" }, "command": { - "description": "Entrypoint array. Not executed within a shell. The docker image's ENTRYPOINT is used if this is not provided. Variable references $(VAR_NAME) are expanded using the container's environment. If a variable cannot be resolved, the reference in the input string will be unchanged. The $(VAR_NAME) syntax can be escaped with a double $$, ie: $$(VAR_NAME). Escaped references will never be expanded, regardless of whether the variable exists or not. Cannot be updated. More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell +optional", "items": { "type": "string" }, "type": "array" }, "env": { - "description": "List of environment variables to set in the container. Cannot be updated. +optional", + "description": "(Optional) List of environment variables to set in the container.", "items": { "$ref": "EnvVar" }, "type": "array" }, "envFrom": { - "description": "List of sources to populate environment variables in the container. The keys defined within a source must be a C_IDENTIFIER. All invalid keys will be reported as an event when the container is starting. When a key exists in multiple sources, the value associated with the last source will take precedence. Values defined by an Env with a duplicate key will take precedence. Cannot be updated. +optional", + "description": "(Optional) List of sources to populate environment variables in the container. The keys defined within a source must be a C_IDENTIFIER. All invalid keys will be reported as an event when the container is starting. When a key exists in multiple sources, the value associated with the last source will take precedence. Values defined by an Env with a duplicate key will take precedence. Cannot be updated.", "items": { "$ref": "EnvFromSource" }, "type": "array" }, "image": { - "description": "Docker image name. More info: https://kubernetes.io/docs/concepts/containers/images", + "description": "Only supports containers from Google Container Registry or Artifact Registry URL of the Container image. More info: https://kubernetes.io/docs/concepts/containers/images", "type": "string" }, "imagePullPolicy": { - "description": "Image pull policy. One of Always, Never, IfNotPresent. Defaults to Always if :latest tag is specified, or IfNotPresent otherwise. Cannot be updated. More info: https://kubernetes.io/docs/concepts/containers/images#updating-images +optional", + "description": "(Optional) Image pull policy. One of Always, Never, IfNotPresent. Defaults to Always if :latest tag is specified, or IfNotPresent otherwise. More info: https://kubernetes.io/docs/concepts/containers/images#updating-images", "type": "string" }, - "lifecycle": { - "$ref": "Lifecycle", - "description": "Actions that the management system should take in response to container lifecycle events. Cannot be updated. +optional" - }, "livenessProbe": { "$ref": "Probe", - "description": "Periodic probe of container liveness. Container will be restarted if the probe fails. Cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes +optional" + "description": "(Optional) Periodic probe of container liveness. Container will be restarted if the probe fails. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" }, "name": { - "description": "Name of the container specified as a DNS_LABEL. Each container must have a unique name (DNS_LABEL). Cannot be updated.", + "description": "(Optional) Name of the container specified as a DNS_LABEL. Currently unused in Cloud Run. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#dns-label-names", "type": "string" }, "ports": { - "description": "List of ports to expose from the container. Exposing a port here gives the system additional information about the network connections a container uses, but is primarily informational. Not specifying a port here DOES NOT prevent that port from being exposed. Any port which is listening on the default \"0.0.0.0\" address inside a container will be accessible from the network. Cannot be updated. +optional", + "description": "(Optional) List of ports to expose from the container. Only a single port can be specified. The specified ports must be listening on all interfaces (0.0.0.0) within the container to be accessible. If omitted, a port number will be chosen and passed to the container through the PORT environment variable for the container to listen on.", "items": { "$ref": "ContainerPort" }, @@ -422,52 +396,37 @@ }, "readinessProbe": { "$ref": "Probe", - "description": "Periodic probe of container service readiness. Container will be removed from service endpoints if the probe fails. Cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes +optional" + "description": "(Optional) Periodic probe of container service readiness. Container will be removed from service endpoints if the probe fails. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" }, "resources": { "$ref": "ResourceRequirements", - "description": "Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources +optional" + "description": "(Optional) Compute Resources required by this container. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources" }, "securityContext": { "$ref": "SecurityContext", - "description": "Security options the pod should run with. More info: https://kubernetes.io/docs/concepts/policy/security-context/ More info: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/ +optional" - }, - "stdin": { - "description": "Whether this container should allocate a buffer for stdin in the container runtime. If this is not set, reads from stdin in the container will always result in EOF. Default is false. +optional", - "type": "boolean" + "description": "(Optional) Security options the pod should run with. More info: https://kubernetes.io/docs/concepts/policy/security-context/ More info: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/" }, - "stdinOnce": { - "description": "Whether the container runtime should close the stdin channel after it has been opened by a single attach. When stdin is true the stdin stream will remain open across multiple attach sessions. If stdinOnce is set to true, stdin is opened on container start, is empty until the first client attaches to stdin, and then remains open and accepts data until the client disconnects, at which time stdin is closed and remains closed until the container is restarted. If this flag is false, a container processes that reads from stdin will never receive an EOF. Default is false +optional", - "type": "boolean" + "startupProbe": { + "$ref": "Probe", + "description": "(Optional) Startup probe of application within the container. All other probes are disabled if a startup probe is provided, until it succeeds. Container will not be added to service endpoints if the probe fails. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes" }, "terminationMessagePath": { - "description": "Optional: Path at which the file to which the container's termination message will be written is mounted into the container's filesystem. Message written is intended to be brief final status, such as an assertion failure message. Will be truncated by the node if greater than 4096 bytes. The total message length across all containers will be limited to 12kb. Defaults to /dev/termination-log. Cannot be updated. +optional", + "description": "(Optional) Path at which the file to which the container's termination message will be written is mounted into the container's filesystem. Message written is intended to be brief final status, such as an assertion failure message. Will be truncated by the node if greater than 4096 bytes. The total message length across all containers will be limited to 12kb. Defaults to /dev/termination-log.", "type": "string" }, "terminationMessagePolicy": { - "description": "Indicate how the termination message should be populated. File will use the contents of terminationMessagePath to populate the container status message on both success and failure. FallbackToLogsOnError will use the last chunk of container log output if the termination message file is empty and the container exited with an error. The log output is limited to 2048 bytes or 80 lines, whichever is smaller. Defaults to File. Cannot be updated. +optional", + "description": "(Optional) Indicate how the termination message should be populated. File will use the contents of terminationMessagePath to populate the container status message on both success and failure. FallbackToLogsOnError will use the last chunk of container log output if the termination message file is empty and the container exited with an error. The log output is limited to 2048 bytes or 80 lines, whichever is smaller. Defaults to File. Cannot be updated.", "type": "string" }, - "tty": { - "description": "Whether this container should allocate a TTY for itself, also requires 'stdin' to be true. Default is false. +optional", - "type": "boolean" - }, - "volumeDevices": { - "description": "volumeDevices is the list of block devices to be used by the container. This is an alpha feature and may change in the future. +optional", - "items": { - "$ref": "VolumeDevice" - }, - "type": "array" - }, "volumeMounts": { - "description": "Pod volumes to mount into the container's filesystem. Cannot be updated. +optional", + "description": "(Optional) Volume to mount into the container's filesystem. Only supports SecretVolumeSources. Pod volumes to mount into the container's filesystem.", "items": { "$ref": "VolumeMount" }, "type": "array" }, "workingDir": { - "description": "Container's working directory. If not specified, the container runtime's default will be used, which might be configured in the container image. Cannot be updated. +optional", + "description": "(Optional) Container's working directory. If not specified, the container runtime's default will be used, which might be configured in the container image.", "type": "string" } }, @@ -478,25 +437,16 @@ "id": "ContainerPort", "properties": { "containerPort": { - "description": "Number of port to expose on the pod's IP address. This must be a valid port number, 0 < x < 65536.", - "format": "int32", - "type": "integer" - }, - "hostIP": { - "description": "What host IP to bind the external port to. +optional", - "type": "string" - }, - "hostPort": { - "description": "Number of port to expose on the host. If specified, this must be a valid port number, 0 < x < 65536. If HostNetwork is specified, this must match ContainerPort. Most containers do not need this. +optional", + "description": "(Optional) Port number the container listens on. This must be a valid port number, 0 < x < 65536.", "format": "int32", "type": "integer" }, "name": { - "description": "If specified, this must be an IANA_SVC_NAME and unique within the pod. Each named port in a pod must have a unique name. Name for the port that can be referred to by services. +optional", + "description": "(Optional) If specified, used to specify which protocol to use. Allowed values are \"http1\" and \"h2c\".", "type": "string" }, "protocol": { - "description": "Protocol for port. Must be UDP or TCP. Defaults to \"TCP\". +optional", + "description": "(Optional) Protocol for port. Must be \"TCP\". Defaults to \"TCP\".", "type": "string" } }, @@ -509,20 +459,20 @@ "type": "object" }, "EnvFromSource": { - "description": "EnvFromSource represents the source of a set of ConfigMaps", + "description": "Not supported by Cloud Run EnvFromSource represents the source of a set of ConfigMaps", "id": "EnvFromSource", "properties": { "configMapRef": { "$ref": "ConfigMapEnvSource", - "description": "The ConfigMap to select from +optional" + "description": "(Optional) The ConfigMap to select from" }, "prefix": { - "description": "An optional identifier to prepend to each key in the ConfigMap. Must be a C_IDENTIFIER. +optional", + "description": "(Optional) An optional identifier to prepend to each key in the ConfigMap. Must be a C_IDENTIFIER.", "type": "string" }, "secretRef": { "$ref": "SecretEnvSource", - "description": "The Secret to select from +optional" + "description": "(Optional) The Secret to select from" } }, "type": "object" @@ -536,37 +486,37 @@ "type": "string" }, "value": { - "description": "Variable references $(VAR_NAME) are expanded using the previous defined environment variables in the container and any route environment variables. If a variable cannot be resolved, the reference in the input string will be unchanged. The $(VAR_NAME) syntax can be escaped with a double $$, ie: $$(VAR_NAME). Escaped references will never be expanded, regardless of whether the variable exists or not. Defaults to \"\". +optional", + "description": "(Optional) Variable references $(VAR_NAME) are expanded using the previous defined environment variables in the container and any route environment variables. If a variable cannot be resolved, the reference in the input string will be unchanged. The $(VAR_NAME) syntax can be escaped with a double $$, ie: $$(VAR_NAME). Escaped references will never be expanded, regardless of whether the variable exists or not. Defaults to \"\".", "type": "string" }, "valueFrom": { "$ref": "EnvVarSource", - "description": "Cloud Run fully managed: supported Source for the environment variable's value. Only supports secret_key_ref. Cloud Run for Anthos: supported Source for the environment variable's value. Cannot be used if value is not empty. +optional" + "description": "(Optional) Source for the environment variable's value. Only supports secret_key_ref. Source for the environment variable's value. Cannot be used if value is not empty." } }, "type": "object" }, "EnvVarSource": { - "description": "Cloud Run fully managed: not supported Cloud Run on GKE: supported EnvVarSource represents a source for the value of an EnvVar.", + "description": "EnvVarSource represents a source for the value of an EnvVar.", "id": "EnvVarSource", "properties": { "configMapKeyRef": { "$ref": "ConfigMapKeySelector", - "description": "Cloud Run fully managed: not supported Cloud Run on GKE: supported Selects a key of a ConfigMap. +optional" + "description": "(Optional) Not supported by Cloud Run Selects a key of a ConfigMap." }, "secretKeyRef": { "$ref": "SecretKeySelector", - "description": "Cloud Run fully managed: supported. Selects a key (version) of a secret in Secret Manager. Cloud Run for Anthos: supported. Selects a key of a secret in the pod's namespace. +optional" + "description": "(Optional) Selects a key (version) of a secret in Secret Manager." } }, "type": "object" }, "ExecAction": { - "description": "ExecAction describes a \"run in container\" action.", + "description": "Not supported by Cloud Run ExecAction describes a \"run in container\" action.", "id": "ExecAction", "properties": { "command": { - "description": "Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy. +optional", + "description": "(Optional) Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy.", "items": { "type": "string" }, @@ -576,37 +526,33 @@ "type": "object" }, "HTTPGetAction": { - "description": "HTTPGetAction describes an action based on HTTP Get requests.", + "description": "Not supported by Cloud Run HTTPGetAction describes an action based on HTTP Get requests.", "id": "HTTPGetAction", "properties": { "host": { - "description": "Host name to connect to, defaults to the pod IP. You probably want to set \"Host\" in httpHeaders instead. +optional", + "description": "(Optional) Host name to connect to, defaults to the pod IP. You probably want to set \"Host\" in httpHeaders instead.", "type": "string" }, "httpHeaders": { - "description": "Custom headers to set in the request. HTTP allows repeated headers. +optional", + "description": "(Optional) Custom headers to set in the request. HTTP allows repeated headers.", "items": { "$ref": "HTTPHeader" }, "type": "array" }, "path": { - "description": "Path to access on the HTTP server. +optional", + "description": "(Optional) Path to access on the HTTP server.", "type": "string" }, - "port": { - "$ref": "IntOrString", - "description": "Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME." - }, "scheme": { - "description": "Scheme to use for connecting to the host. Defaults to HTTP. +optional", + "description": "(Optional) Scheme to use for connecting to the host. Defaults to HTTP.", "type": "string" } }, "type": "object" }, "HTTPHeader": { - "description": "HTTPHeader describes a custom header to be used in HTTP probes", + "description": "Not supported by Cloud Run HTTPHeader describes a custom header to be used in HTTP probes", "id": "HTTPHeader", "properties": { "name": { @@ -620,25 +566,6 @@ }, "type": "object" }, - "Handler": { - "description": "Handler defines a specific action that should be taken", - "id": "Handler", - "properties": { - "exec": { - "$ref": "ExecAction", - "description": "One and only one of the following should be specified. Exec specifies the action to take. +optional" - }, - "httpGet": { - "$ref": "HTTPGetAction", - "description": "HTTPGet specifies the http request to perform. +optional" - }, - "tcpSocket": { - "$ref": "TCPSocketAction", - "description": "TCPSocket specifies an action involving a TCP port. TCP hooks not yet supported" - } - }, - "type": "object" - }, "InstanceSpec": { "description": "InstanceSpec is a description of an instance.", "id": "InstanceSpec", @@ -731,27 +658,6 @@ }, "type": "object" }, - "IntOrString": { - "description": "IntOrString is a type that can hold an int32 or a string. When used in JSON or YAML marshalling and unmarshalling, it produces or consumes the inner type. This allows you to have, for example, a JSON field that can accept a name or number.", - "id": "IntOrString", - "properties": { - "intVal": { - "description": "The int value.", - "format": "int32", - "type": "integer" - }, - "strVal": { - "description": "The string value.", - "type": "string" - }, - "type": { - "description": "The type of the value.", - "format": "int32", - "type": "integer" - } - }, - "type": "object" - }, "Job": { "description": "Job represents the configuration of a single job. A job an immutable resource that references a container image which is run to completion.", "id": "Job", @@ -907,36 +813,21 @@ "id": "KeyToPath", "properties": { "key": { - "description": "Cloud Run fully managed: supported The Cloud Secret Manager secret version. Can be 'latest' for the latest value or an integer for a specific version. Cloud Run for Anthos: supported The key to project.", + "description": "The Cloud Secret Manager secret version. Can be 'latest' for the latest value or an integer for a specific version. The key to project.", "type": "string" }, "mode": { - "description": "Mode bits to use on this file, must be a value between 0 and 0777. If not specified, the volume defaultMode will be used. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set. +optional", + "description": "(Optional) Mode bits to use on this file, must be a value between 0000 and 0777. If not specified, the volume defaultMode will be used. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set.", "format": "int32", "type": "integer" }, "path": { - "description": "Cloud Run fully managed: supported Cloud Run for Anthos: supported The relative path of the file to map the key to. May not be an absolute path. May not contain the path element '..'. May not start with the string '..'.", + "description": "The relative path of the file to map the key to. May not be an absolute path. May not contain the path element '..'. May not start with the string '..'.", "type": "string" } }, "type": "object" }, - "Lifecycle": { - "description": "Lifecycle describes actions that the management system should take in response to container lifecycle events. For the PostStart and PreStop lifecycle handlers, management of the container blocks until the action is complete, unless the container process fails, in which case the handler is aborted.", - "id": "Lifecycle", - "properties": { - "postStart": { - "$ref": "Handler", - "description": "PostStart is called immediately after a container is created. If the handler fails, the container is terminated and restarted according to its restart policy. Other management of the container blocks until the hook completes. More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks +optional" - }, - "preStop": { - "$ref": "Handler", - "description": "PreStop is called immediately before a container is terminated. The container is terminated after the handler completes. The reason for termination is passed to the handler. Regardless of the outcome of the handler, the container is eventually terminated. Other management of the container blocks until the hook completes. More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks +optional" - } - }, - "type": "object" - }, "ListJobsResponse": { "description": "ListJobsResponse is a list of Jobs resources.", "id": "ListJobsResponse", @@ -994,59 +885,59 @@ "type": "object" }, "LocalObjectReference": { - "description": "LocalObjectReference contains enough information to let you locate the referenced object inside the same namespace.", + "description": "Not supported by Cloud Run LocalObjectReference contains enough information to let you locate the referenced object inside the same namespace.", "id": "LocalObjectReference", "properties": { "name": { - "description": "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names", + "description": "(Optional) Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names", "type": "string" } }, "type": "object" }, "ObjectMeta": { - "description": "ObjectMeta is metadata that all persisted resources must have, which includes all objects users must create.", + "description": "k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta is metadata that all persisted resources must have, which includes all objects users must create.", "id": "ObjectMeta", "properties": { "annotations": { "additionalProperties": { "type": "string" }, - "description": "Annotations is an unstructured key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: http://kubernetes.io/docs/user-guide/annotations +optional", + "description": "(Optional) Annotations is an unstructured key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: http://kubernetes.io/docs/user-guide/annotations", "type": "object" }, "clusterName": { - "description": "Not currently supported by Cloud Run. The name of the cluster which the object belongs to. This is used to distinguish resources with same name and namespace in different clusters. This field is not set anywhere right now and apiserver is going to ignore it if set in create or update request. +optional", + "description": "(Optional) Not supported by Cloud Run The name of the cluster which the object belongs to. This is used to distinguish resources with same name and namespace in different clusters. This field is not set anywhere right now and apiserver is going to ignore it if set in create or update request.", "type": "string" }, "creationTimestamp": { - "description": "CreationTimestamp is a timestamp representing the server time when this object was created. It is not guaranteed to be set in happens-before order across separate operations. Clients may not set this value. It is represented in RFC3339 form and is in UTC. Populated by the system. Read-only. Null for lists. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata +optional", + "description": "(Optional) CreationTimestamp is a timestamp representing the server time when this object was created. It is not guaranteed to be set in happens-before order across separate operations. Clients may not set this value. It is represented in RFC3339 form and is in UTC. Populated by the system. Read-only. Null for lists. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", "format": "google-datetime", "type": "string" }, "deletionGracePeriodSeconds": { - "description": "Not currently supported by Cloud Run. Number of seconds allowed for this object to gracefully terminate before it will be removed from the system. Only set when deletionTimestamp is also set. May only be shortened. Read-only. +optional", + "description": "(Optional) Not supported by Cloud Run Number of seconds allowed for this object to gracefully terminate before it will be removed from the system. Only set when deletionTimestamp is also set. May only be shortened. Read-only.", "format": "int32", "type": "integer" }, "deletionTimestamp": { - "description": "DeletionTimestamp is RFC 3339 date and time at which this resource will be deleted. This field is set by the server when a graceful deletion is requested by the user, and is not directly settable by a client. The resource is expected to be deleted (no longer visible from resource lists, and not reachable by name) after the time in this field, once the finalizers list is empty. As long as the finalizers list contains items, deletion is blocked. Once the deletionTimestamp is set, this value may not be unset or be set further into the future, although it may be shortened or the resource may be deleted prior to this time. For example, a user may request that a pod is deleted in 30 seconds. The Kubelet will react by sending a graceful termination signal to the containers in the pod. After that 30 seconds, the Kubelet will send a hard termination signal (SIGKILL) to the container and after cleanup, remove the pod from the API. In the presence of network partitions, this object may still exist after this timestamp, until an administrator or automated process can determine the resource is fully terminated. If not set, graceful deletion of the object has not been requested. Populated by the system when a graceful deletion is requested. Read-only. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata +optional", + "description": "(Optional) Not supported by Cloud Run DeletionTimestamp is RFC 3339 date and time at which this resource will be deleted. This field is set by the server when a graceful deletion is requested by the user, and is not directly settable by a client. The resource is expected to be deleted (no longer visible from resource lists, and not reachable by name) after the time in this field, once the finalizers list is empty. As long as the finalizers list contains items, deletion is blocked. Once the deletionTimestamp is set, this value may not be unset or be set further into the future, although it may be shortened or the resource may be deleted prior to this time. For example, a user may request that a pod is deleted in 30 seconds. The Kubelet will react by sending a graceful termination signal to the containers in the pod. After that 30 seconds, the Kubelet will send a hard termination signal (SIGKILL) to the container and after cleanup, remove the pod from the API. In the presence of network partitions, this object may still exist after this timestamp, until an administrator or automated process can determine the resource is fully terminated. If not set, graceful deletion of the object has not been requested. Populated by the system when a graceful deletion is requested. Read-only. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata", "format": "google-datetime", "type": "string" }, "finalizers": { - "description": "Not currently supported by Cloud Run. Must be empty before the object is deleted from the registry. Each entry is an identifier for the responsible component that will remove the entry from the list. If the deletionTimestamp of the object is non-nil, entries in this list can only be removed. +optional +patchStrategy=merge", + "description": "(Optional) Not supported by Cloud Run Must be empty before the object is deleted from the registry. Each entry is an identifier for the responsible component that will remove the entry from the list. If the deletionTimestamp of the object is non-nil, entries in this list can only be removed. +patchStrategy=merge", "items": { "type": "string" }, "type": "array" }, "generateName": { - "description": "Not currently supported by Cloud Run. GenerateName is an optional prefix, used by the server, to generate a unique name ONLY IF the Name field has not been provided. If this field is used, the name returned to the client will be different than the name passed. This value will also be combined with a unique suffix. The provided value has the same validation rules as the Name field, and may be truncated by the length of the suffix required to make the value unique on the server. If this field is specified and the generated name exists, the server will NOT return a 409 - instead, it will either return 201 Created or 500 with Reason ServerTimeout indicating a unique name could not be found in the time allotted, and the client should retry (optionally after the time indicated in the Retry-After header). Applied only if Name is not specified. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#idempotency +optional string generateName = 2;", + "description": "(Optional) Not supported by Cloud Run GenerateName is an optional prefix, used by the server, to generate a unique name ONLY IF the Name field has not been provided. If this field is used, the name returned to the client will be different than the name passed. This value will also be combined with a unique suffix. The provided value has the same validation rules as the Name field, and may be truncated by the length of the suffix required to make the value unique on the server. If this field is specified and the generated name exists, the server will NOT return a 409 - instead, it will either return 201 Created or 500 with Reason ServerTimeout indicating a unique name could not be found in the time allotted, and the client should retry (optionally after the time indicated in the Retry-After header). Applied only if Name is not specified. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#idempotency string generateName = 2;", "type": "string" }, "generation": { - "description": "A sequence number representing a specific generation of the desired state. Populated by the system. Read-only. +optional", + "description": "(Optional) A sequence number representing a specific generation of the desired state. Populated by the system. Read-only.", "format": "int32", "type": "integer" }, @@ -1054,7 +945,7 @@ "additionalProperties": { "type": "string" }, - "description": "Map of string keys and values that can be used to organize and categorize (scope and select) objects. May match selectors of replication controllers and routes. More info: http://kubernetes.io/docs/user-guide/labels +optional", + "description": "(Optional) Map of string keys and values that can be used to organize and categorize (scope and select) objects. May match selectors of replication controllers and routes. More info: http://kubernetes.io/docs/user-guide/labels", "type": "object" }, "name": { @@ -1066,22 +957,22 @@ "type": "string" }, "ownerReferences": { - "description": "List of objects that own this object. If ALL objects in the list have been deleted, this object will be garbage collected. +optional", + "description": "(Optional) Not supported by Cloud Run List of objects that own this object. If ALL objects in the list have been deleted, this object will be garbage collected.", "items": { "$ref": "OwnerReference" }, "type": "array" }, "resourceVersion": { - "description": "An opaque value that represents the internal version of this object that can be used by clients to determine when objects have changed. May be used for optimistic concurrency, change detection, and the watch operation on a resource or set of resources. Clients must treat these values as opaque and passed unmodified back to the server. They may only be valid for a particular resource or set of resources. Populated by the system. Read-only. Value must be treated as opaque by clients and . More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#concurrency-control-and-consistency +optional", + "description": "Optional. An opaque value that represents the internal version of this object that can be used by clients to determine when objects have changed. May be used for optimistic concurrency, change detection, and the watch operation on a resource or set of resources. Clients must treat these values as opaque and passed unmodified back to the server or omit the value to disable conflict-detection. They may only be valid for a particular resource or set of resources. Populated by the system. Read-only. Value must be treated as opaque by clients or omitted. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency", "type": "string" }, "selfLink": { - "description": "SelfLink is a URL representing this object. Populated by the system. Read-only. +optional string selfLink = 4;", + "description": "(Optional) SelfLink is a URL representing this object. Populated by the system. Read-only. string selfLink = 4;", "type": "string" }, "uid": { - "description": "UID is the unique in time and space value for this object. It is typically generated by the server on successful creation of a resource and is not allowed to change on PUT operations. Populated by the system. Read-only. More info: http://kubernetes.io/docs/user-guide/identifiers#uids +optional", + "description": "(Optional) UID is the unique in time and space value for this object. It is typically generated by the server on successful creation of a resource and is not allowed to change on PUT operations. Populated by the system. Read-only. More info: http://kubernetes.io/docs/user-guide/identifiers#uids", "type": "string" } }, @@ -1119,52 +1010,49 @@ "type": "object" }, "Probe": { - "description": "Probe describes a health check to be performed against a container to determine whether it is alive or ready to receive traffic.", + "description": "Not supported by Cloud Run Probe describes a health check to be performed against a container to determine whether it is alive or ready to receive traffic.", "id": "Probe", "properties": { + "exec": { + "$ref": "ExecAction", + "description": "(Optional) One and only one of the following should be specified. Exec specifies the action to take. A field inlined from the Handler message." + }, "failureThreshold": { - "description": "Minimum consecutive failures for the probe to be considered failed after having succeeded. Defaults to 3. Minimum value is 1. +optional", + "description": "(Optional) Minimum consecutive failures for the probe to be considered failed after having succeeded. Defaults to 3. Minimum value is 1.", "format": "int32", "type": "integer" }, - "handler": { - "$ref": "Handler", - "description": "The action taken to determine the health of a container" + "httpGet": { + "$ref": "HTTPGetAction", + "description": "(Optional) HTTPGet specifies the http request to perform. A field inlined from the Handler message." }, "initialDelaySeconds": { - "description": "Number of seconds after the container has started before liveness probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes +optional", + "description": "(Optional) Number of seconds after the container has started before liveness probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes", "format": "int32", "type": "integer" }, "periodSeconds": { - "description": "How often (in seconds) to perform the probe. Default to 10 seconds. Minimum value is 1. +optional", + "description": "(Optional) How often (in seconds) to perform the probe. Default to 10 seconds. Minimum value is 1.", "format": "int32", "type": "integer" }, "successThreshold": { - "description": "Minimum consecutive successes for the probe to be considered successful after having failed. Defaults to 1. Must be 1 for liveness. Minimum value is 1. +optional", + "description": "(Optional) Minimum consecutive successes for the probe to be considered successful after having failed. Defaults to 1. Must be 1 for liveness. Minimum value is 1.", "format": "int32", "type": "integer" }, + "tcpSocket": { + "$ref": "TCPSocketAction", + "description": "(Optional) TCPSocket specifies an action involving a TCP port. TCP hooks not yet supported A field inlined from the Handler message." + }, "timeoutSeconds": { - "description": "Number of seconds after which the probe times out. Defaults to 1 second. Minimum value is 1. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes +optional", + "description": "(Optional) Number of seconds after which the probe times out. Defaults to 1 second. Minimum value is 1. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes", "format": "int32", "type": "integer" } }, "type": "object" }, - "Quantity": { - "description": "The view model of a single quantity, e.g. \"800 MiB\". Corresponds to https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/generated.proto", - "id": "Quantity", - "properties": { - "string": { - "description": "Stringified version of the quantity, e.g., \"800 MiB\".", - "type": "string" - } - }, - "type": "object" - }, "ResourceRequirements": { "description": "ResourceRequirements describes the compute resource requirements.", "id": "ResourceRequirements", @@ -1173,58 +1061,21 @@ "additionalProperties": { "type": "string" }, - "description": "Limits describes the maximum amount of compute resources allowed. The values of the map is string form of the 'quantity' k8s type: https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/quantity.go", - "type": "object" - }, - "limitsInMap": { - "additionalProperties": { - "$ref": "Quantity" - }, - "description": "Limits describes the maximum amount of compute resources allowed. This is a temporary field created to migrate away from the map limits field. This is done to become compliant with k8s style API. This field is deprecated in favor of limits field.", + "description": "(Optional) Only memory and CPU are supported. Note: The only supported values for CPU are '1', '2', and '4'. Setting 4 CPU requires at least 2Gi of memory. Limits describes the maximum amount of compute resources allowed. The values of the map is string form of the 'quantity' k8s type: https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/quantity.go", "type": "object" }, "requests": { "additionalProperties": { "type": "string" }, - "description": "Requests describes the minimum amount of compute resources required. If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, otherwise to an implementation-defined value. The values of the map is string form of the 'quantity' k8s type: https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/quantity.go", - "type": "object" - }, - "requestsInMap": { - "additionalProperties": { - "$ref": "Quantity" - }, - "description": "Requests describes the minimum amount of compute resources required. If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, otherwise to an implementation-defined value. This is a temporary field created to migrate away from the map requests field. This is done to become compliant with k8s style API. This field is deprecated in favor of requests field.", + "description": "(Optional) Only memory and CPU are supported. Note: The only supported values for CPU are '1' and '2'. Requests describes the minimum amount of compute resources required. If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, otherwise to an implementation-defined value. The values of the map is string form of the 'quantity' k8s type: https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/quantity.go", "type": "object" } }, "type": "object" }, - "SELinuxOptions": { - "description": "SELinuxOptions are the labels to be applied to the container", - "id": "SELinuxOptions", - "properties": { - "level": { - "description": "Level is SELinux level label that applies to the container. +optional", - "type": "string" - }, - "role": { - "description": "Role is a SELinux role label that applies to the container. +optional", - "type": "string" - }, - "type": { - "description": "Type is a SELinux type label that applies to the container. +optional", - "type": "string" - }, - "user": { - "description": "User is a SELinux user label that applies to the container. +optional", - "type": "string" - } - }, - "type": "object" - }, "SecretEnvSource": { - "description": "SecretEnvSource selects a Secret to populate the environment variables with. The contents of the target Secret's Data field will represent the key-value pairs as environment variables.", + "description": "Not supported by Cloud Run SecretEnvSource selects a Secret to populate the environment variables with. The contents of the target Secret's Data field will represent the key-value pairs as environment variables.", "id": "SecretEnvSource", "properties": { "localObjectReference": { @@ -1232,22 +1083,22 @@ "description": "This field should not be used directly as it is meant to be inlined directly into the message. Use the \"name\" field instead." }, "name": { - "description": "Cloud Run fully managed: not supported Cloud Run for Anthos: supported The Secret to select from.", + "description": "The Secret to select from.", "type": "string" }, "optional": { - "description": "Cloud Run fully managed: not supported Cloud Run for Anthos: supported Specify whether the Secret must be defined +optional", + "description": "(Optional) Specify whether the Secret must be defined", "type": "boolean" } }, "type": "object" }, "SecretKeySelector": { - "description": "Cloud Run fully managed: supported Cloud Run on GKE: supported SecretKeySelector selects a key of a Secret.", + "description": "SecretKeySelector selects a key of a Secret.", "id": "SecretKeySelector", "properties": { "key": { - "description": "Cloud Run fully managed: supported A Cloud Secret Manager secret version. Must be 'latest' for the latest version or an integer for a specific version. Cloud Run for Anthos: supported The key of the secret to select from. Must be a valid secret key.", + "description": "A Cloud Secret Manager secret version. Must be 'latest' for the latest version or an integer for a specific version. The key of the secret to select from. Must be a valid secret key.", "type": "string" }, "localObjectReference": { @@ -1255,101 +1106,73 @@ "description": "This field should not be used directly as it is meant to be inlined directly into the message. Use the \"name\" field instead." }, "name": { - "description": "Cloud Run fully managed: supported The name of the secret in Cloud Secret Manager. By default, the secret is assumed to be in the same project. If the secret is in another project, you must define an alias. An alias definition has the form: :projects//secrets/. If multiple alias definitions are needed, they must be separated by commas. The alias definitions must be set on the run.googleapis.com/secrets annotation. Cloud Run for Anthos: supported The name of the secret in the pod's namespace to select from.", + "description": "The name of the secret in Cloud Secret Manager. By default, the secret is assumed to be in the same project. If the secret is in another project, you must define an alias. An alias definition has the form: :projects//secrets/. If multiple alias definitions are needed, they must be separated by commas. The alias definitions must be set on the run.googleapis.com/secrets annotation. The name of the secret in the pod's namespace to select from.", "type": "string" }, "optional": { - "description": "Cloud Run fully managed: not supported Cloud Run on GKE: supported Specify whether the Secret or its key must be defined +optional", + "description": "(Optional) Specify whether the Secret or its key must be defined", "type": "boolean" } }, "type": "object" }, "SecretVolumeSource": { - "description": "The contents of the target Secret's Data field will be presented in a volume as files using the keys in the Data field as the file names.", + "description": "The secret's value will be presented as the content of a file whose name is defined in the item path. If no items are defined, the name of the file is the secret_name. The contents of the target Secret's Data field will be presented in a volume as files using the keys in the Data field as the file names.", "id": "SecretVolumeSource", "properties": { "defaultMode": { - "description": "Mode bits to use on created files by default. Must be a value between 0 and 0777. Defaults to 0644. Directories within the path are not affected by this setting. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set.", + "description": "(Optional) Mode bits to use on created files by default. Must be a value between 0000 and 0777. Defaults to 0644. Directories within the path are not affected by this setting. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set. NOTE: This is an integer representation of the mode bits. So, the integer value should look exactly as the chmod numeric notation, i.e. Unix chmod \"777\" (a=rwx) should have the integer value 777.", "format": "int32", "type": "integer" }, "items": { - "description": "Cloud Run fully managed: supported If unspecified, the volume will expose a file whose name is the secret_name. If specified, the key will be used as the version to fetch from Cloud Secret Manager and the path will be the name of the file exposed in the volume. When items are defined, they must specify a key and a path. Cloud Run for Anthos: supported If unspecified, each key-value pair in the Data field of the referenced Secret will be projected into the volume as a file whose name is the key and content is the value. If specified, the listed keys will be projected into the specified paths, and unlisted keys will not be present. If a key is specified which is not present in the Secret, the volume setup will error unless it is marked optional.", + "description": "(Optional) If unspecified, the volume will expose a file whose name is the secret_name. If specified, the key will be used as the version to fetch from Cloud Secret Manager and the path will be the name of the file exposed in the volume. When items are defined, they must specify a key and a path. If unspecified, each key-value pair in the Data field of the referenced Secret will be projected into the volume as a file whose name is the key and content is the value. If specified, the listed keys will be projected into the specified paths, and unlisted keys will not be present. If a key is specified that is not present in the Secret, the volume setup will error unless it is marked optional.", "items": { "$ref": "KeyToPath" }, "type": "array" }, "optional": { - "description": "Specify whether the Secret or its keys must be defined.", + "description": "(Optional) Specify whether the Secret or its keys must be defined.", "type": "boolean" }, "secretName": { - "description": "Cloud Run fully managed: supported The name of the secret in Cloud Secret Manager. By default, the secret is assumed to be in the same project. If the secret is in another project, you must define an alias. An alias definition has the form: :projects//secrets/. If multiple alias definitions are needed, they must be separated by commas. The alias definitions must be set on the run.googleapis.com/secrets annotation. Cloud Run for Anthos: supported Name of the secret in the container's namespace to use.", + "description": "The name of the secret in Cloud Secret Manager. By default, the secret is assumed to be in the same project. If the secret is in another project, you must define an alias. An alias definition has the form: :projects//secrets/. If multiple alias definitions are needed, they must be separated by commas. The alias definitions must be set on the run.googleapis.com/secrets annotation. Name of the secret in the container's namespace to use.", "type": "string" } }, "type": "object" }, "SecurityContext": { - "description": "SecurityContext holds security configuration that will be applied to a container. Some fields are present in both SecurityContext and PodSecurityContext. When both are set, the values in SecurityContext take precedence.", + "description": "Not supported by Cloud Run SecurityContext holds security configuration that will be applied to a container. Some fields are present in both SecurityContext and PodSecurityContext. When both are set, the values in SecurityContext take precedence.", "id": "SecurityContext", "properties": { - "allowPrivilegeEscalation": { - "description": "AllowPrivilegeEscalation controls whether a process can gain more privileges than its parent process. This bool directly controls if the no_new_privs flag will be set on the container process. AllowPrivilegeEscalation is true always when the container is: 1) run as Privileged 2) has CAP_SYS_ADMIN +optional", - "type": "boolean" - }, - "capabilities": { - "$ref": "Capabilities", - "description": "The capabilities to add/drop when running containers. Defaults to the default set of capabilities granted by the container runtime. +optional" - }, - "privileged": { - "description": "Run container in privileged mode. Processes in privileged containers are essentially equivalent to root on the host. Defaults to false. +optional", - "type": "boolean" - }, - "readOnlyRootFilesystem": { - "description": "Whether this container has a read-only root filesystem. Default is false. +optional", - "type": "boolean" - }, - "runAsGroup": { - "description": "The GID to run the entrypoint of the container process. Uses runtime default if unset. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. +optional", - "format": "int32", - "type": "integer" - }, - "runAsNonRoot": { - "description": "Indicates that the container must run as a non-root user. If true, the Kubelet will validate the image at runtime to ensure that it does not run as UID 0 (root) and fail to start the container if it does. If unset or false, no such validation will be performed. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. +optional", - "type": "boolean" - }, "runAsUser": { - "description": "The UID to run the entrypoint of the container process. Defaults to user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. +optional", + "description": "(Optional) The UID to run the entrypoint of the container process. Defaults to user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence.", "format": "int32", "type": "integer" - }, - "seLinuxOptions": { - "$ref": "SELinuxOptions", - "description": "The SELinux context to be applied to the container. If unspecified, the container runtime will allocate a random SELinux context for each container. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. +optional" } }, "type": "object" }, "TCPSocketAction": { - "description": "TCPSocketAction describes an action based on opening a socket", + "description": "Not supported by Cloud Run TCPSocketAction describes an action based on opening a socket", "id": "TCPSocketAction", "properties": { "host": { - "description": "Optional: Host name to connect to, defaults to the pod IP. +optional", + "description": "(Optional) Optional: Host name to connect to, defaults to the pod IP.", "type": "string" }, "port": { - "$ref": "IntOrString", - "description": "Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME." + "description": "Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. This field is currently limited to integer types only because of proto's inability to properly support the IntOrString golang type.", + "format": "int32", + "type": "integer" } }, "type": "object" }, "Volume": { - "description": "Volume represents a named volume in a container.", + "description": "Not supported by Cloud Run Volume represents a named volume in a container.", "id": "Volume", "properties": { "configMap": { @@ -1365,43 +1188,24 @@ }, "type": "object" }, - "VolumeDevice": { - "description": "volumeDevice describes a mapping of a raw block device within a container.", - "id": "VolumeDevice", - "properties": { - "devicePath": { - "description": "devicePath is the path inside of the container that the device will be mapped to.", - "type": "string" - }, - "name": { - "description": "name must match the name of a persistentVolumeClaim in the pod", - "type": "string" - } - }, - "type": "object" - }, "VolumeMount": { - "description": "VolumeMount describes a mounting of a Volume within a container.", + "description": "Not supported by Cloud Run VolumeMount describes a mounting of a Volume within a container.", "id": "VolumeMount", "properties": { "mountPath": { "description": "Path within the container at which the volume should be mounted. Must not contain ':'.", "type": "string" }, - "mountPropagation": { - "description": "mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationHostToContainer is used. This field is beta in 1.10. +optional", - "type": "string" - }, "name": { "description": "This must match the Name of a Volume.", "type": "string" }, "readOnly": { - "description": "Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false. +optional", + "description": "(Optional) Only true is accepted. Defaults to true.", "type": "boolean" }, "subPath": { - "description": "Path within the volume from which the container's volume should be mounted. Defaults to \"\" (volume's root). +optional", + "description": "(Optional) Path within the volume from which the container's volume should be mounted. Defaults to \"\" (volume's root).", "type": "string" } }, diff --git a/discovery/sasportal-v1alpha1.json b/discovery/sasportal-v1alpha1.json index b9db364e137..58c3ed9d287 100644 --- a/discovery/sasportal-v1alpha1.json +++ b/discovery/sasportal-v1alpha1.json @@ -2483,7 +2483,7 @@ } } }, - "revision": "20210527", + "revision": "20210625", "rootUrl": "https://sasportal.googleapis.com/", "schemas": { "SasPortalAssignment": { @@ -2886,7 +2886,12 @@ "SasPortalDeviceMetadata": { "description": "Device data overridable by both SAS Portal and registration requests.", "id": "SasPortalDeviceMetadata", - "properties": {}, + "properties": { + "antennaModel": { + "description": "If populated, the Antenna Model Pattern to use. Format is: RecordCreatorId:PatternId", + "type": "string" + } + }, "type": "object" }, "SasPortalDeviceModel": { diff --git a/discovery/spanner-v1.json b/discovery/spanner-v1.json index ee6689b932a..84249cbb5c8 100644 --- a/discovery/spanner-v1.json +++ b/discovery/spanner-v1.json @@ -2037,7 +2037,7 @@ } } }, - "revision": "20210603", + "revision": "20210611", "rootUrl": "https://spanner.googleapis.com/", "schemas": { "Backup": { @@ -4283,7 +4283,7 @@ "type": "object" }, "TransactionOptions": { - "description": "# Transactions Each session can have at most one active transaction at a time (note that standalone reads and queries use a transaction internally and do count towards the one transaction limit). After the active transaction is completed, the session can immediately be re-used for the next transaction. It is not necessary to create a new session for each transaction. # Transaction Modes Cloud Spanner supports three transaction modes: 1. Locking read-write. This type of transaction is the only way to write data into Cloud Spanner. These transactions rely on pessimistic locking and, if necessary, two-phase commit. Locking read-write transactions may abort, requiring the application to retry. 2. Snapshot read-only. This transaction type provides guaranteed consistency across several reads, but does not allow writes. Snapshot read-only transactions can be configured to read at timestamps in the past. Snapshot read-only transactions do not need to be committed. 3. Partitioned DML. This type of transaction is used to execute a single Partitioned DML statement. Partitioned DML partitions the key space and runs the DML statement over each partition in parallel using separate, internal transactions that commit independently. Partitioned DML transactions do not need to be committed. For transactions that only read, snapshot read-only transactions provide simpler semantics and are almost always faster. In particular, read-only transactions do not take locks, so they do not conflict with read-write transactions. As a consequence of not taking locks, they also do not abort, so retry loops are not needed. Transactions may only read/write data in a single database. They may, however, read/write data in different tables within that database. ## Locking Read-Write Transactions Locking transactions may be used to atomically read-modify-write data anywhere in a database. This type of transaction is externally consistent. Clients should attempt to minimize the amount of time a transaction is active. Faster transactions commit with higher probability and cause less contention. Cloud Spanner attempts to keep read locks active as long as the transaction continues to do reads, and the transaction has not been terminated by Commit or Rollback. Long periods of inactivity at the client may cause Cloud Spanner to release a transaction's locks and abort it. Conceptually, a read-write transaction consists of zero or more reads or SQL statements followed by Commit. At any time before Commit, the client can send a Rollback request to abort the transaction. ## Semantics Cloud Spanner can commit the transaction if all read locks it acquired are still valid at commit time, and it is able to acquire write locks for all writes. Cloud Spanner can abort the transaction for any reason. If a commit attempt returns `ABORTED`, Cloud Spanner guarantees that the transaction has not modified any user data in Cloud Spanner. Unless the transaction commits, Cloud Spanner makes no guarantees about how long the transaction's locks were held for. It is an error to use Cloud Spanner locks for any sort of mutual exclusion other than between Cloud Spanner transactions themselves. ## Retrying Aborted Transactions When a transaction aborts, the application can choose to retry the whole transaction again. To maximize the chances of successfully committing the retry, the client should execute the retry in the same session as the original attempt. The original session's lock priority increases with each consecutive abort, meaning that each attempt has a slightly better chance of success than the previous. Under some circumstances (e.g., many transactions attempting to modify the same row(s)), a transaction can abort many times in a short period before successfully committing. Thus, it is not a good idea to cap the number of retries a transaction can attempt; instead, it is better to limit the total amount of wall time spent retrying. ## Idle Transactions A transaction is considered idle if it has no outstanding reads or SQL queries and has not started a read or SQL query within the last 10 seconds. Idle transactions can be aborted by Cloud Spanner so that they don't hold on to locks indefinitely. In that case, the commit will fail with error `ABORTED`. If this behavior is undesirable, periodically executing a simple SQL query in the transaction (e.g., `SELECT 1`) prevents the transaction from becoming idle. ## Snapshot Read-Only Transactions Snapshot read-only transactions provides a simpler method than locking read-write transactions for doing several consistent reads. However, this type of transaction does not support writes. Snapshot transactions do not take locks. Instead, they work by choosing a Cloud Spanner timestamp, then executing all reads at that timestamp. Since they do not acquire locks, they do not block concurrent read-write transactions. Unlike locking read-write transactions, snapshot read-only transactions never abort. They can fail if the chosen read timestamp is garbage collected; however, the default garbage collection policy is generous enough that most applications do not need to worry about this in practice. Snapshot read-only transactions do not need to call Commit or Rollback (and in fact are not permitted to do so). To execute a snapshot transaction, the client specifies a timestamp bound, which tells Cloud Spanner how to choose a read timestamp. The types of timestamp bound are: - Strong (the default). - Bounded staleness. - Exact staleness. If the Cloud Spanner database to be read is geographically distributed, stale read-only transactions can execute more quickly than strong or read-write transaction, because they are able to execute far from the leader replica. Each type of timestamp bound is discussed in detail below. ## Strong Strong reads are guaranteed to see the effects of all transactions that have committed before the start of the read. Furthermore, all rows yielded by a single read are consistent with each other -- if any part of the read observes a transaction, all parts of the read see the transaction. Strong reads are not repeatable: two consecutive strong read-only transactions might return inconsistent results if there are concurrent writes. If consistency across reads is required, the reads should be executed within a transaction or at an exact read timestamp. See TransactionOptions.ReadOnly.strong. ## Exact Staleness These timestamp bounds execute reads at a user-specified timestamp. Reads at a timestamp are guaranteed to see a consistent prefix of the global transaction history: they observe modifications done by all transactions with a commit timestamp <= the read timestamp, and observe none of the modifications done by transactions with a larger commit timestamp. They will block until all conflicting transactions that may be assigned commit timestamps <= the read timestamp have finished. The timestamp can either be expressed as an absolute Cloud Spanner commit timestamp or a staleness relative to the current time. These modes do not require a \"negotiation phase\" to pick a timestamp. As a result, they execute slightly faster than the equivalent boundedly stale concurrency modes. On the other hand, boundedly stale reads usually return fresher results. See TransactionOptions.ReadOnly.read_timestamp and TransactionOptions.ReadOnly.exact_staleness. ## Bounded Staleness Bounded staleness modes allow Cloud Spanner to pick the read timestamp, subject to a user-provided staleness bound. Cloud Spanner chooses the newest timestamp within the staleness bound that allows execution of the reads at the closest available replica without blocking. All rows yielded are consistent with each other -- if any part of the read observes a transaction, all parts of the read see the transaction. Boundedly stale reads are not repeatable: two stale reads, even if they use the same staleness bound, can execute at different timestamps and thus return inconsistent results. Boundedly stale reads execute in two phases: the first phase negotiates a timestamp among all replicas needed to serve the read. In the second phase, reads are executed at the negotiated timestamp. As a result of the two phase execution, bounded staleness reads are usually a little slower than comparable exact staleness reads. However, they are typically able to return fresher results, and are more likely to execute at the closest replica. Because the timestamp negotiation requires up-front knowledge of which rows will be read, it can only be used with single-use read-only transactions. See TransactionOptions.ReadOnly.max_staleness and TransactionOptions.ReadOnly.min_read_timestamp. ## Old Read Timestamps and Garbage Collection Cloud Spanner continuously garbage collects deleted and overwritten data in the background to reclaim storage space. This process is known as \"version GC\". By default, version GC reclaims versions after they are one hour old. Because of this, Cloud Spanner cannot perform reads at read timestamps more than one hour in the past. This restriction also applies to in-progress reads and/or SQL queries whose timestamp become too old while executing. Reads and SQL queries with too-old read timestamps fail with the error `FAILED_PRECONDITION`. ## Partitioned DML Transactions Partitioned DML transactions are used to execute DML statements with a different execution strategy that provides different, and often better, scalability properties for large, table-wide operations than DML in a ReadWrite transaction. Smaller scoped statements, such as an OLTP workload, should prefer using ReadWrite transactions. Partitioned DML partitions the keyspace and runs the DML statement on each partition in separate, internal transactions. These transactions commit automatically when complete, and run independently from one another. To reduce lock contention, this execution strategy only acquires read locks on rows that match the WHERE clause of the statement. Additionally, the smaller per-partition transactions hold locks for less time. That said, Partitioned DML is not a drop-in replacement for standard DML used in ReadWrite transactions. - The DML statement must be fully-partitionable. Specifically, the statement must be expressible as the union of many statements which each access only a single row of the table. - The statement is not applied atomically to all rows of the table. Rather, the statement is applied atomically to partitions of the table, in independent transactions. Secondary index rows are updated atomically with the base table rows. - Partitioned DML does not guarantee exactly-once execution semantics against a partition. The statement will be applied at least once to each partition. It is strongly recommended that the DML statement should be idempotent to avoid unexpected results. For instance, it is potentially dangerous to run a statement such as `UPDATE table SET column = column + 1` as it could be run multiple times against some rows. - The partitions are committed automatically - there is no support for Commit or Rollback. If the call returns an error, or if the client issuing the ExecuteSql call dies, it is possible that some rows had the statement executed on them successfully. It is also possible that statement was never executed against other rows. - Partitioned DML transactions may only contain the execution of a single DML statement via ExecuteSql or ExecuteStreamingSql. - If any error is encountered during the execution of the partitioned DML operation (for instance, a UNIQUE INDEX violation, division by zero, or a value that cannot be stored due to schema constraints), then the operation is stopped at that point and an error is returned. It is possible that at this point, some partitions have been committed (or even committed multiple times), and other partitions have not been run at all. Given the above, Partitioned DML is good fit for large, database-wide, operations that are idempotent, such as deleting old rows from a very large table.", + "description": "Transactions: Each session can have at most one active transaction at a time (note that standalone reads and queries use a transaction internally and do count towards the one transaction limit). After the active transaction is completed, the session can immediately be re-used for the next transaction. It is not necessary to create a new session for each transaction. Transaction Modes: Cloud Spanner supports three transaction modes: 1. Locking read-write. This type of transaction is the only way to write data into Cloud Spanner. These transactions rely on pessimistic locking and, if necessary, two-phase commit. Locking read-write transactions may abort, requiring the application to retry. 2. Snapshot read-only. This transaction type provides guaranteed consistency across several reads, but does not allow writes. Snapshot read-only transactions can be configured to read at timestamps in the past. Snapshot read-only transactions do not need to be committed. 3. Partitioned DML. This type of transaction is used to execute a single Partitioned DML statement. Partitioned DML partitions the key space and runs the DML statement over each partition in parallel using separate, internal transactions that commit independently. Partitioned DML transactions do not need to be committed. For transactions that only read, snapshot read-only transactions provide simpler semantics and are almost always faster. In particular, read-only transactions do not take locks, so they do not conflict with read-write transactions. As a consequence of not taking locks, they also do not abort, so retry loops are not needed. Transactions may only read/write data in a single database. They may, however, read/write data in different tables within that database. Locking Read-Write Transactions: Locking transactions may be used to atomically read-modify-write data anywhere in a database. This type of transaction is externally consistent. Clients should attempt to minimize the amount of time a transaction is active. Faster transactions commit with higher probability and cause less contention. Cloud Spanner attempts to keep read locks active as long as the transaction continues to do reads, and the transaction has not been terminated by Commit or Rollback. Long periods of inactivity at the client may cause Cloud Spanner to release a transaction's locks and abort it. Conceptually, a read-write transaction consists of zero or more reads or SQL statements followed by Commit. At any time before Commit, the client can send a Rollback request to abort the transaction. Semantics: Cloud Spanner can commit the transaction if all read locks it acquired are still valid at commit time, and it is able to acquire write locks for all writes. Cloud Spanner can abort the transaction for any reason. If a commit attempt returns `ABORTED`, Cloud Spanner guarantees that the transaction has not modified any user data in Cloud Spanner. Unless the transaction commits, Cloud Spanner makes no guarantees about how long the transaction's locks were held for. It is an error to use Cloud Spanner locks for any sort of mutual exclusion other than between Cloud Spanner transactions themselves. Retrying Aborted Transactions: When a transaction aborts, the application can choose to retry the whole transaction again. To maximize the chances of successfully committing the retry, the client should execute the retry in the same session as the original attempt. The original session's lock priority increases with each consecutive abort, meaning that each attempt has a slightly better chance of success than the previous. Under some circumstances (e.g., many transactions attempting to modify the same row(s)), a transaction can abort many times in a short period before successfully committing. Thus, it is not a good idea to cap the number of retries a transaction can attempt; instead, it is better to limit the total amount of wall time spent retrying. Idle Transactions: A transaction is considered idle if it has no outstanding reads or SQL queries and has not started a read or SQL query within the last 10 seconds. Idle transactions can be aborted by Cloud Spanner so that they don't hold on to locks indefinitely. In that case, the commit will fail with error `ABORTED`. If this behavior is undesirable, periodically executing a simple SQL query in the transaction (e.g., `SELECT 1`) prevents the transaction from becoming idle. Snapshot Read-Only Transactions: Snapshot read-only transactions provides a simpler method than locking read-write transactions for doing several consistent reads. However, this type of transaction does not support writes. Snapshot transactions do not take locks. Instead, they work by choosing a Cloud Spanner timestamp, then executing all reads at that timestamp. Since they do not acquire locks, they do not block concurrent read-write transactions. Unlike locking read-write transactions, snapshot read-only transactions never abort. They can fail if the chosen read timestamp is garbage collected; however, the default garbage collection policy is generous enough that most applications do not need to worry about this in practice. Snapshot read-only transactions do not need to call Commit or Rollback (and in fact are not permitted to do so). To execute a snapshot transaction, the client specifies a timestamp bound, which tells Cloud Spanner how to choose a read timestamp. The types of timestamp bound are: - Strong (the default). - Bounded staleness. - Exact staleness. If the Cloud Spanner database to be read is geographically distributed, stale read-only transactions can execute more quickly than strong or read-write transaction, because they are able to execute far from the leader replica. Each type of timestamp bound is discussed in detail below. Strong: Strong reads are guaranteed to see the effects of all transactions that have committed before the start of the read. Furthermore, all rows yielded by a single read are consistent with each other -- if any part of the read observes a transaction, all parts of the read see the transaction. Strong reads are not repeatable: two consecutive strong read-only transactions might return inconsistent results if there are concurrent writes. If consistency across reads is required, the reads should be executed within a transaction or at an exact read timestamp. See TransactionOptions.ReadOnly.strong. Exact Staleness: These timestamp bounds execute reads at a user-specified timestamp. Reads at a timestamp are guaranteed to see a consistent prefix of the global transaction history: they observe modifications done by all transactions with a commit timestamp <= the read timestamp, and observe none of the modifications done by transactions with a larger commit timestamp. They will block until all conflicting transactions that may be assigned commit timestamps <= the read timestamp have finished. The timestamp can either be expressed as an absolute Cloud Spanner commit timestamp or a staleness relative to the current time. These modes do not require a \"negotiation phase\" to pick a timestamp. As a result, they execute slightly faster than the equivalent boundedly stale concurrency modes. On the other hand, boundedly stale reads usually return fresher results. See TransactionOptions.ReadOnly.read_timestamp and TransactionOptions.ReadOnly.exact_staleness. Bounded Staleness: Bounded staleness modes allow Cloud Spanner to pick the read timestamp, subject to a user-provided staleness bound. Cloud Spanner chooses the newest timestamp within the staleness bound that allows execution of the reads at the closest available replica without blocking. All rows yielded are consistent with each other -- if any part of the read observes a transaction, all parts of the read see the transaction. Boundedly stale reads are not repeatable: two stale reads, even if they use the same staleness bound, can execute at different timestamps and thus return inconsistent results. Boundedly stale reads execute in two phases: the first phase negotiates a timestamp among all replicas needed to serve the read. In the second phase, reads are executed at the negotiated timestamp. As a result of the two phase execution, bounded staleness reads are usually a little slower than comparable exact staleness reads. However, they are typically able to return fresher results, and are more likely to execute at the closest replica. Because the timestamp negotiation requires up-front knowledge of which rows will be read, it can only be used with single-use read-only transactions. See TransactionOptions.ReadOnly.max_staleness and TransactionOptions.ReadOnly.min_read_timestamp. Old Read Timestamps and Garbage Collection: Cloud Spanner continuously garbage collects deleted and overwritten data in the background to reclaim storage space. This process is known as \"version GC\". By default, version GC reclaims versions after they are one hour old. Because of this, Cloud Spanner cannot perform reads at read timestamps more than one hour in the past. This restriction also applies to in-progress reads and/or SQL queries whose timestamp become too old while executing. Reads and SQL queries with too-old read timestamps fail with the error `FAILED_PRECONDITION`. Partitioned DML Transactions: Partitioned DML transactions are used to execute DML statements with a different execution strategy that provides different, and often better, scalability properties for large, table-wide operations than DML in a ReadWrite transaction. Smaller scoped statements, such as an OLTP workload, should prefer using ReadWrite transactions. Partitioned DML partitions the keyspace and runs the DML statement on each partition in separate, internal transactions. These transactions commit automatically when complete, and run independently from one another. To reduce lock contention, this execution strategy only acquires read locks on rows that match the WHERE clause of the statement. Additionally, the smaller per-partition transactions hold locks for less time. That said, Partitioned DML is not a drop-in replacement for standard DML used in ReadWrite transactions. - The DML statement must be fully-partitionable. Specifically, the statement must be expressible as the union of many statements which each access only a single row of the table. - The statement is not applied atomically to all rows of the table. Rather, the statement is applied atomically to partitions of the table, in independent transactions. Secondary index rows are updated atomically with the base table rows. - Partitioned DML does not guarantee exactly-once execution semantics against a partition. The statement will be applied at least once to each partition. It is strongly recommended that the DML statement should be idempotent to avoid unexpected results. For instance, it is potentially dangerous to run a statement such as `UPDATE table SET column = column + 1` as it could be run multiple times against some rows. - The partitions are committed automatically - there is no support for Commit or Rollback. If the call returns an error, or if the client issuing the ExecuteSql call dies, it is possible that some rows had the statement executed on them successfully. It is also possible that statement was never executed against other rows. - Partitioned DML transactions may only contain the execution of a single DML statement via ExecuteSql or ExecuteStreamingSql. - If any error is encountered during the execution of the partitioned DML operation (for instance, a UNIQUE INDEX violation, division by zero, or a value that cannot be stored due to schema constraints), then the operation is stopped at that point and an error is returned. It is possible that at this point, some partitions have been committed (or even committed multiple times), and other partitions have not been run at all. Given the above, Partitioned DML is good fit for large, database-wide, operations that are idempotent, such as deleting old rows from a very large table.", "id": "TransactionOptions", "properties": { "partitionedDml": { diff --git a/discovery/sqladmin-v1.json b/discovery/sqladmin-v1.json new file mode 100644 index 00000000000..39a6baa1961 --- /dev/null +++ b/discovery/sqladmin-v1.json @@ -0,0 +1,105 @@ +{ + "basePath": "", + "baseUrl": "https://sqladmin.googleapis.com/", + "batchPath": "batch", + "canonicalName": "SQL Admin", + "description": "API for Cloud SQL database instance management", + "discoveryVersion": "v1", + "documentationLink": "https://developers.google.com/cloud-sql/", + "fullyEncodeReservedExpansion": true, + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "id": "sqladmin:v1", + "kind": "discovery#restDescription", + "mtlsRootUrl": "https://sqladmin.mtls.googleapis.com/", + "name": "sqladmin", + "ownerDomain": "google.com", + "ownerName": "Google", + "parameters": { + "$.xgafv": { + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query", + "type": "string" + }, + "access_token": { + "description": "OAuth access token.", + "location": "query", + "type": "string" + }, + "alt": { + "default": "json", + "description": "Data format for response.", + "enum": [ + "json", + "media", + "proto" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query", + "type": "string" + }, + "callback": { + "description": "JSONP", + "location": "query", + "type": "string" + }, + "fields": { + "description": "Selector specifying which fields to include in a partial response.", + "location": "query", + "type": "string" + }, + "key": { + "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.", + "location": "query", + "type": "string" + }, + "oauth_token": { + "description": "OAuth 2.0 token for the current user.", + "location": "query", + "type": "string" + }, + "prettyPrint": { + "default": "true", + "description": "Returns response with indentations and line breaks.", + "location": "query", + "type": "boolean" + }, + "quotaUser": { + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query", + "type": "string" + }, + "uploadType": { + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query", + "type": "string" + }, + "upload_protocol": { + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query", + "type": "string" + } + }, + "protocol": "rest", + "resources": {}, + "revision": "20210608", + "rootUrl": "https://sqladmin.googleapis.com/", + "schemas": {}, + "servicePath": "", + "title": "Cloud SQL Admin API", + "version": "v1" +} \ No newline at end of file diff --git a/discovery/transcoder-v1beta1.json b/discovery/transcoder-v1beta1.json index b8152a79862..c84eb0d87c9 100644 --- a/discovery/transcoder-v1beta1.json +++ b/discovery/transcoder-v1beta1.json @@ -355,7 +355,7 @@ } } }, - "revision": "20210405", + "revision": "20210624", "rootUrl": "https://transcoder.googleapis.com/", "schemas": { "AdBreak": { @@ -762,7 +762,7 @@ "id": "Image", "properties": { "alpha": { - "description": "Target image opacity. Valid values: `1.0` (solid, default) to `0.0` (transparent).", + "description": "Target image opacity. Valid values are from `1.0` (solid, default) to `0.0` (transparent), exclusive. Set this to a value greater than `0.0`.", "format": "double", "type": "number" }, @@ -1118,33 +1118,40 @@ "id": "OperationMetadata", "properties": { "apiVersion": { - "description": "[Output only] API version used to start the operation.", + "description": "Output only. API version used to start the operation.", + "readOnly": true, "type": "string" }, "cancelRequested": { - "description": "[Output only] Identifies whether the user has requested cancellation of the operation. Operations that have successfully been cancelled have Operation.error value with a google.rpc.Status.code of 1, corresponding to `Code.CANCELLED`.", + "description": "Output only. Identifies whether the user has requested cancellation of the operation. Operations that have successfully been cancelled have Operation.error value with a google.rpc.Status.code of 1, corresponding to `Code.CANCELLED`.", + "readOnly": true, "type": "boolean" }, "createTime": { - "description": "[Output only] The time the operation was created.", + "description": "Output only. The time the operation was created.", "format": "google-datetime", + "readOnly": true, "type": "string" }, "endTime": { - "description": "[Output only] The time the operation finished running.", + "description": "Output only. The time the operation finished running.", "format": "google-datetime", + "readOnly": true, "type": "string" }, "statusDetail": { - "description": "[Output only] Human-readable status of the operation, if any.", + "description": "Output only. Human-readable status of the operation, if any.", + "readOnly": true, "type": "string" }, "target": { - "description": "[Output only] Server-defined resource path for the target of the operation.", + "description": "Output only. Server-defined resource path for the target of the operation.", + "readOnly": true, "type": "string" }, "verb": { - "description": "[Output only] Name of the verb executed by the operation.", + "description": "Output only. Name of the verb executed by the operation.", + "readOnly": true, "type": "string" } }, diff --git a/discovery/translate-v3.json b/discovery/translate-v3.json index 2a337a12329..89a5b9b5a57 100644 --- a/discovery/translate-v3.json +++ b/discovery/translate-v3.json @@ -154,7 +154,7 @@ "type": "string" }, "model": { - "description": "Optional. Get supported languages of this model. The format depends on model type: - AutoML Translation models: `projects/{project-number-or-id}/locations/{location-id}/models/{model-id}` - General (built-in) models: `projects/{project-number-or-id}/locations/{location-id}/models/general/nmt`, `projects/{project-number-or-id}/locations/{location-id}/models/general/base` Returns languages supported by the specified model. If missing, we get supported languages of Google general base (PBMT) model.", + "description": "Optional. Get supported languages of this model. The format depends on model type: - AutoML Translation models: `projects/{project-number-or-id}/locations/{location-id}/models/{model-id}` - General (built-in) models: `projects/{project-number-or-id}/locations/{location-id}/models/general/nmt`, Returns languages supported by the specified model. If missing, we get supported languages of Google general NMT model.", "location": "query", "type": "string" }, @@ -306,7 +306,7 @@ "type": "string" }, "model": { - "description": "Optional. Get supported languages of this model. The format depends on model type: - AutoML Translation models: `projects/{project-number-or-id}/locations/{location-id}/models/{model-id}` - General (built-in) models: `projects/{project-number-or-id}/locations/{location-id}/models/general/nmt`, `projects/{project-number-or-id}/locations/{location-id}/models/general/base` Returns languages supported by the specified model. If missing, we get supported languages of Google general base (PBMT) model.", + "description": "Optional. Get supported languages of this model. The format depends on model type: - AutoML Translation models: `projects/{project-number-or-id}/locations/{location-id}/models/{model-id}` - General (built-in) models: `projects/{project-number-or-id}/locations/{location-id}/models/general/nmt`, Returns languages supported by the specified model. If missing, we get supported languages of Google general NMT model.", "location": "query", "type": "string" }, @@ -687,7 +687,7 @@ } } }, - "revision": "20210521", + "revision": "20210625", "rootUrl": "https://translation.googleapis.com/", "schemas": { "BatchTranslateTextRequest": { @@ -719,7 +719,7 @@ "additionalProperties": { "type": "string" }, - "description": "Optional. The models to use for translation. Map's key is target language code. Map's value is model name. Value can be a built-in general model, or an AutoML Translation model. The value format depends on model type: - AutoML Translation models: `projects/{project-number-or-id}/locations/{location-id}/models/{model-id}` - General (built-in) models: `projects/{project-number-or-id}/locations/{location-id}/models/general/nmt`, `projects/{project-number-or-id}/locations/{location-id}/models/general/base` If the map is empty or a specific model is not requested for a language pair, then default google model (nmt) is used.", + "description": "Optional. The models to use for translation. Map's key is target language code. Map's value is model name. Value can be a built-in general model, or an AutoML Translation model. The value format depends on model type: - AutoML Translation models: `projects/{project-number-or-id}/locations/{location-id}/models/{model-id}` - General (built-in) models: `projects/{project-number-or-id}/locations/{location-id}/models/general/nmt`, If the map is empty or a specific model is not requested for a language pair, then default google model (nmt) is used.", "type": "object" }, "outputConfig": { @@ -1166,7 +1166,7 @@ "type": "string" }, "model": { - "description": "Optional. The `model` type requested for this translation. The format depends on model type: - AutoML Translation models: `projects/{project-number-or-id}/locations/{location-id}/models/{model-id}` - General (built-in) models: `projects/{project-number-or-id}/locations/{location-id}/models/general/nmt`, `projects/{project-number-or-id}/locations/{location-id}/models/general/base` For global (non-regionalized) requests, use `location-id` `global`. For example, `projects/{project-number-or-id}/locations/global/models/general/nmt`. If missing, the system decides which google base model to use.", + "description": "Optional. The `model` type requested for this translation. The format depends on model type: - AutoML Translation models: `projects/{project-number-or-id}/locations/{location-id}/models/{model-id}` - General (built-in) models: `projects/{project-number-or-id}/locations/{location-id}/models/general/nmt`, For global (non-regionalized) requests, use `location-id` `global`. For example, `projects/{project-number-or-id}/locations/global/models/general/nmt`. If not provided, the default Google model (NMT) will be used", "type": "string" }, "sourceLanguageCode": { diff --git a/discovery/translate-v3beta1.json b/discovery/translate-v3beta1.json index b6c71274573..b1dd0a1f894 100644 --- a/discovery/translate-v3beta1.json +++ b/discovery/translate-v3beta1.json @@ -154,7 +154,7 @@ "type": "string" }, "model": { - "description": "Optional. Get supported languages of this model. The format depends on model type: - AutoML Translation models: `projects/{project-number-or-id}/locations/{location-id}/models/{model-id}` - General (built-in) models: `projects/{project-number-or-id}/locations/{location-id}/models/general/nmt`, `projects/{project-number-or-id}/locations/{location-id}/models/general/base` Returns languages supported by the specified model. If missing, we get supported languages of Google general base (PBMT) model.", + "description": "Optional. Get supported languages of this model. The format depends on model type: - AutoML Translation models: `projects/{project-number-or-id}/locations/{location-id}/models/{model-id}` - General (built-in) models: `projects/{project-number-or-id}/locations/{location-id}/models/general/nmt`, Returns languages supported by the specified model. If missing, we get supported languages of Google general NMT model.", "location": "query", "type": "string" }, @@ -334,7 +334,7 @@ "type": "string" }, "model": { - "description": "Optional. Get supported languages of this model. The format depends on model type: - AutoML Translation models: `projects/{project-number-or-id}/locations/{location-id}/models/{model-id}` - General (built-in) models: `projects/{project-number-or-id}/locations/{location-id}/models/general/nmt`, `projects/{project-number-or-id}/locations/{location-id}/models/general/base` Returns languages supported by the specified model. If missing, we get supported languages of Google general base (PBMT) model.", + "description": "Optional. Get supported languages of this model. The format depends on model type: - AutoML Translation models: `projects/{project-number-or-id}/locations/{location-id}/models/{model-id}` - General (built-in) models: `projects/{project-number-or-id}/locations/{location-id}/models/general/nmt`, Returns languages supported by the specified model. If missing, we get supported languages of Google general NMT model.", "location": "query", "type": "string" }, @@ -744,7 +744,7 @@ } } }, - "revision": "20210521", + "revision": "20210625", "rootUrl": "https://translation.googleapis.com/", "schemas": { "BatchDocumentInputConfig": { @@ -791,7 +791,7 @@ "additionalProperties": { "type": "string" }, - "description": "Optional. The models to use for translation. Map's key is target language code. Map's value is the model name. Value can be a built-in general model, or an AutoML Translation model. The value format depends on model type: - AutoML Translation models: `projects/{project-number-or-id}/locations/{location-id}/models/{model-id}` - General (built-in) models: `projects/{project-number-or-id}/locations/{location-id}/models/general/nmt`, `projects/{project-number-or-id}/locations/{location-id}/models/general/base` If the map is empty or a specific model is not requested for a language pair, then default google model (nmt) is used.", + "description": "Optional. The models to use for translation. Map's key is target language code. Map's value is the model name. Value can be a built-in general model, or an AutoML Translation model. The value format depends on model type: - AutoML Translation models: `projects/{project-number-or-id}/locations/{location-id}/models/{model-id}` - General (built-in) models: `projects/{project-number-or-id}/locations/{location-id}/models/general/nmt`, If the map is empty or a specific model is not requested for a language pair, then default google model (nmt) is used.", "type": "object" }, "outputConfig": { @@ -841,7 +841,7 @@ "additionalProperties": { "type": "string" }, - "description": "Optional. The models to use for translation. Map's key is target language code. Map's value is model name. Value can be a built-in general model, or an AutoML Translation model. The value format depends on model type: - AutoML Translation models: `projects/{project-number-or-id}/locations/{location-id}/models/{model-id}` - General (built-in) models: `projects/{project-number-or-id}/locations/{location-id}/models/general/nmt`, `projects/{project-number-or-id}/locations/{location-id}/models/general/base` If the map is empty or a specific model is not requested for a language pair, then default google model (nmt) is used.", + "description": "Optional. The models to use for translation. Map's key is target language code. Map's value is model name. Value can be a built-in general model, or an AutoML Translation model. The value format depends on model type: - AutoML Translation models: `projects/{project-number-or-id}/locations/{location-id}/models/{model-id}` - General (built-in) models: `projects/{project-number-or-id}/locations/{location-id}/models/general/nmt`, If the map is empty or a specific model is not requested for a language pair, then default google model (nmt) is used.", "type": "object" }, "outputConfig": { @@ -1328,7 +1328,7 @@ "type": "object" }, "model": { - "description": "Optional. The `model` type requested for this translation. The format depends on model type: - AutoML Translation models: `projects/{project-number-or-id}/locations/{location-id}/models/{model-id}` - General (built-in) models: `projects/{project-number-or-id}/locations/{location-id}/models/general/nmt`, `projects/{project-number-or-id}/locations/{location-id}/models/general/base` If not provided, the default Google model (NMT) will be used for translation.", + "description": "Optional. The `model` type requested for this translation. The format depends on model type: - AutoML Translation models: `projects/{project-number-or-id}/locations/{location-id}/models/{model-id}` - General (built-in) models: `projects/{project-number-or-id}/locations/{location-id}/models/general/nmt`, If not provided, the default Google model (NMT) will be used for translation.", "type": "string" }, "sourceLanguageCode": { @@ -1407,7 +1407,7 @@ "type": "string" }, "model": { - "description": "Optional. The `model` type requested for this translation. The format depends on model type: - AutoML Translation models: `projects/{project-number-or-id}/locations/{location-id}/models/{model-id}` - General (built-in) models: `projects/{project-number-or-id}/locations/{location-id}/models/general/nmt`, `projects/{project-number-or-id}/locations/{location-id}/models/general/base` For global (non-regionalized) requests, use `location-id` `global`. For example, `projects/{project-number-or-id}/locations/global/models/general/nmt`. If missing, the system decides which google base model to use.", + "description": "Optional. The `model` type requested for this translation. The format depends on model type: - AutoML Translation models: `projects/{project-number-or-id}/locations/{location-id}/models/{model-id}` - General (built-in) models: `projects/{project-number-or-id}/locations/{location-id}/models/general/nmt`, For global (non-regionalized) requests, use `location-id` `global`. For example, `projects/{project-number-or-id}/locations/global/models/general/nmt`. If not provided, the default Google model (NMT) will be used", "type": "string" }, "sourceLanguageCode": { diff --git a/src/apis/accessapproval/v1.ts b/src/apis/accessapproval/v1.ts index fd0021f9c06..4da63cdb254 100644 --- a/src/apis/accessapproval/v1.ts +++ b/src/apis/accessapproval/v1.ts @@ -262,7 +262,7 @@ export namespace accessapproval_v1 { */ export interface Schema$EnrolledService { /** - * The product for which Access Approval will be enrolled. Allowed values are listed below (case-sensitive): * all * App Engine * BigQuery * Cloud Bigtable * Cloud Key Management Service * Compute Engine * Cloud Dataflow * Cloud Identity and Access Management * Cloud Logging * Cloud Pub/Sub * Cloud Spanner * Cloud SQL * Cloud Storage * Google Kubernetes Engine * Persistent Disk Note: These values are supported as input for legacy purposes, but will not be returned from the API. * all * appengine.googleapis.com * bigquery.googleapis.com * bigtable.googleapis.com * container.googleapis.com * cloudkms.googleapis.com * cloudsql.googleapis.com * compute.googleapis.com * dataflow.googleapis.com * iam.googleapis.com * logging.googleapis.com * pubsub.googleapis.com * spanner.googleapis.com * storage.googleapis.com Calls to UpdateAccessApprovalSettings using 'all' or any of the XXX.googleapis.com will be translated to the associated product name ('all', 'App Engine', etc.). Note: 'all' will enroll the resource in all products supported at both 'GA' and 'Preview' levels. More information about levels of support is available at https://cloud.google.com/access-approval/docs/supported-services + * The product for which Access Approval will be enrolled. Allowed values are listed below (case-sensitive): * all * GA * App Engine * BigQuery * Cloud Bigtable * Cloud Key Management Service * Compute Engine * Cloud Dataflow * Cloud DLP * Cloud EKM * Cloud HSM * Cloud Identity and Access Management * Cloud Logging * Cloud Pub/Sub * Cloud Spanner * Cloud SQL * Cloud Storage * Google Kubernetes Engine * Persistent Disk Note: These values are supported as input for legacy purposes, but will not be returned from the API. * all * ga-only * appengine.googleapis.com * bigquery.googleapis.com * bigtable.googleapis.com * container.googleapis.com * cloudkms.googleapis.com * cloudsql.googleapis.com * compute.googleapis.com * dataflow.googleapis.com * dlp.googleapis.com * iam.googleapis.com * logging.googleapis.com * pubsub.googleapis.com * spanner.googleapis.com * storage.googleapis.com Calls to UpdateAccessApprovalSettings using 'all' or any of the XXX.googleapis.com will be translated to the associated product name ('all', 'App Engine', etc.). Note: 'all' will enroll the resource in all products supported at both 'GA' and 'Preview' levels. More information about levels of support is available at https://cloud.google.com/access-approval/docs/supported-services */ cloudProduct?: string | null; /** diff --git a/src/apis/analyticsdata/v1beta.ts b/src/apis/analyticsdata/v1beta.ts index d0f76284cf4..006a8834411 100644 --- a/src/apis/analyticsdata/v1beta.ts +++ b/src/apis/analyticsdata/v1beta.ts @@ -533,6 +533,23 @@ export namespace analyticsdata_v1beta { */ value?: string | null; } + /** + * A contiguous set of minutes: startMinutesAgo, startMinutesAgo + 1, ..., endMinutesAgo. Requests are allowed up to 2 minute ranges. + */ + export interface Schema$MinuteRange { + /** + * The inclusive end minute for the query as a number of minutes before now. Cannot be before `startMinutesAgo`. For example, `"endMinutesAgo": 15` specifies the report should include event data from prior to 15 minutes ago. If unspecified, `endMinutesAgo` is defaulted to 0. Standard Analytics properties can request any minute in the last 30 minutes of event data (`endMinutesAgo <= 29`), and 360 Analytics properties can request any minute in the last 60 minutes of event data (`endMinutesAgo <= 59`). + */ + endMinutesAgo?: number | null; + /** + * Assigns a name to this minute range. The dimension `dateRange` is valued to this name in a report response. If set, cannot begin with `date_range_` or `RESERVED_`. If not set, minute ranges are named by their zero based index in the request: `date_range_0`, `date_range_1`, etc. + */ + name?: string | null; + /** + * The inclusive start minute for the query as a number of minutes before now. For example, `"startMinutesAgo": 29` specifies the report should include event data from 29 minutes ago and after. Cannot be after `endMinutesAgo`. If unspecified, `startMinutesAgo` is defaulted to 29. Standard Analytics properties can request up to the last 30 minutes of event data (`startMinutesAgo <= 29`), and 360 Analytics properties can request up to the last 60 minutes of event data (`startMinutesAgo <= 59`). + */ + startMinutesAgo?: number | null; + } /** * Filters for numeric or date values. */ @@ -827,6 +844,10 @@ export namespace analyticsdata_v1beta { * The metrics requested and displayed. */ metrics?: Schema$Metric[]; + /** + * The minute ranges of event data to read. If unspecified, one minute range for the last 30 minutes will be used. If multiple minute ranges are requested, each response row will contain a zero based minute range index. If two minute ranges overlap, the event data for the overlapping minutes is included in the response rows for both minute ranges. + */ + minuteRanges?: Schema$MinuteRange[]; /** * Specifies how rows are ordered in the response. */ @@ -1647,6 +1668,7 @@ export namespace analyticsdata_v1beta { * // "metricAggregations": [], * // "metricFilter": {}, * // "metrics": [], + * // "minuteRanges": [], * // "orderBys": [], * // "returnPropertyQuota": false * // } diff --git a/src/apis/androiddeviceprovisioning/v1.ts b/src/apis/androiddeviceprovisioning/v1.ts index 9c4a2021f26..d16b917e9d8 100644 --- a/src/apis/androiddeviceprovisioning/v1.ts +++ b/src/apis/androiddeviceprovisioning/v1.ts @@ -188,14 +188,22 @@ export namespace androiddeviceprovisioning_v1 { * Required. The name of the company. For example _XYZ Corp_. Displayed to the company's employees in the zero-touch enrollment portal. */ companyName?: string | null; + /** + * Input only. The preferred locale of the customer represented as a BCP47 language code. This field is validated on input and requests containing unsupported language codes will be rejected. Supported language codes: Arabic (ar) Chinese (Hong Kong) (zh-HK) Chinese (Simplified) (zh-CN) Chinese (Traditional) (zh-TW) Czech (cs) Danish (da) Dutch (nl) English (UK) (en-GB) English (US) (en-US) Filipino (fil) Finnish (fi) French (fr) German (de) Hebrew (iw) Hindi (hi) Hungarian (hu) Indonesian (id) Italian (it) Japanese (ja) Korean (ko) Norwegian (Bokmal) (no) Polish (pl) Portuguese (Brazil) (pt-BR) Portuguese (Portugal) (pt-PT) Russian (ru) Spanish (es) Spanish (Latin America) (es-419) Swedish (sv) Thai (th) Turkish (tr) Ukrainian (uk) Vietnamese (vi) + */ + languageCode?: string | null; /** * Output only. The API resource name of the company. The resource name is one of the following formats: * `partners/[PARTNER_ID]/customers/[CUSTOMER_ID]` * `partners/[PARTNER_ID]/vendors/[VENDOR_ID]` * `partners/[PARTNER_ID]/vendors/[VENDOR_ID]/customers/[CUSTOMER_ID]` Assigned by the server. */ name?: string | null; /** - * Required. Input only. Email address of customer's users in the owner role. At least one `owner_email` is required. Each email address must be associated with a Google Account. Owners share the same access as admins but can also add, delete, and edit your organization's portal users. + * Required. Input only. Email address of customer's users in the owner role. At least one `owner_email` is required. Owners share the same access as admins but can also add, delete, and edit your organization's portal users. */ ownerEmails?: string[] | null; + /** + * Input only. If set to true, welcome email will not be sent to the customer. It is recommended to skip the welcome email if devices will be claimed with additional DEVICE_PROTECTION service, as the customer will receive separate emails at device claim time. This field is ignored if this is not a Zero-touch customer. + */ + skipWelcomeEmail?: boolean | null; /** * Output only. Whether any user from the company has accepted the latest Terms of Service (ToS). See TermsStatus. */ @@ -2840,8 +2848,10 @@ export namespace androiddeviceprovisioning_v1 { * // "adminEmails": [], * // "companyId": "my_companyId", * // "companyName": "my_companyName", + * // "languageCode": "my_languageCode", * // "name": "my_name", * // "ownerEmails": [], + * // "skipWelcomeEmail": false, * // "termsStatus": "my_termsStatus" * // } * } diff --git a/src/apis/cloudasset/v1.ts b/src/apis/cloudasset/v1.ts index cc86793ff2e..46b77d9f987 100644 --- a/src/apis/cloudasset/v1.ts +++ b/src/apis/cloudasset/v1.ts @@ -1621,6 +1621,10 @@ export namespace cloudasset_v1 { * The last update timestamp of this resource, at which the resource was last modified or deleted. The granularity is in seconds. Timestamp.nanos will always be 0. This field is available only when the resource's proto contains it. To search against `update_time`: * use a field query. - value in seconds since unix epoch. Example: `updateTime < 1609459200` - value in date string. Example: `updateTime < 2021-01-01` - value in date-time string (must be quoted). Example: `updateTime < "2021-01-01T00:00:00"` */ updateTime?: string | null; + /** + * Versioned resource representations of this resource. This is repeated because there could be multiple versions of resource representations during version migration. This `versioned_resources` field is not searchable. Some attributes of the resource representations are exposed in `additional_attributes` field, so as to allow users to search on them. + */ + versionedResources?: Schema$VersionedResource[]; } /** * Specifies the resource to analyze for access policies, which may be set directly on the resource, or on ancestors such as organizations, folders or projects. @@ -1779,6 +1783,19 @@ export namespace cloudasset_v1 { */ version?: string | null; } + /** + * Resource representation as defined by the corresponding service providing the resource for a given API version. + */ + export interface Schema$VersionedResource { + /** + * JSON representation of the resource as defined by the corresponding service providing this resource. Example: If the resource is an instance provided by Compute Engine, this field will contain the JSON representation of the instance as defined by Compute Engine: `https://cloud.google.com/compute/docs/reference/rest/v1/instances`. You can find the resource definition for each supported resource type in this table: `https://cloud.google.com/asset-inventory/docs/supported-asset-types#searchable_asset_types` + */ + resource?: {[key: string]: any} | null; + /** + * API version of the resource. Example: If the resource is an instance provided by Compute Engine v1 API as defined in `https://cloud.google.com/compute/docs/reference/rest/v1/instances`, version will be "v1". + */ + version?: string | null; + } /** * Information related to a Quick Fix Engineering package. Fields are taken from Windows QuickFixEngineering Interface and match the source names: https://docs.microsoft.com/en-us/windows/win32/cimwin32prov/win32-quickfixengineering */ @@ -3834,6 +3851,8 @@ export namespace cloudasset_v1 { * pageToken: 'placeholder-value', * // Optional. The query statement. See [how to construct a query](https://cloud.google.com/asset-inventory/docs/searching-resources#how_to_construct_a_query) for more information. If not specified or empty, it will search all the resources within the specified `scope`. Examples: * `name:Important` to find Cloud resources whose name contains "Important" as a word. * `name=Important` to find the Cloud resource whose name is exactly "Important". * `displayName:Impor*` to find Cloud resources whose display name contains "Impor" as a prefix of any word in the field. * `location:us-west*` to find Cloud resources whose location contains both "us" and "west" as prefixes. * `labels:prod` to find Cloud resources whose labels contain "prod" as a key or value. * `labels.env:prod` to find Cloud resources that have a label "env" and its value is "prod". * `labels.env:*` to find Cloud resources that have a label "env". * `kmsKey:key` to find Cloud resources encrypted with a customer-managed encryption key whose name contains the word "key". * `state:ACTIVE` to find Cloud resources whose state contains "ACTIVE" as a word. * `NOT state:ACTIVE` to find {{gcp_name\}\} resources whose state doesn't contain "ACTIVE" as a word. * `createTime<1609459200` to find Cloud resources that were created before "2021-01-01 00:00:00 UTC". 1609459200 is the epoch timestamp of "2021-01-01 00:00:00 UTC" in seconds. * `updateTime\>1609459200` to find Cloud resources that were updated after "2021-01-01 00:00:00 UTC". 1609459200 is the epoch timestamp of "2021-01-01 00:00:00 UTC" in seconds. * `Important` to find Cloud resources that contain "Important" as a word in any of the searchable fields. * `Impor*` to find Cloud resources that contain "Impor" as a prefix of any word in any of the searchable fields. * `Important location:(us-west1 OR global)` to find Cloud resources that contain "Important" as a word in any of the searchable fields and are also located in the "us-west1" region or the "global" location. * query: 'placeholder-value', + * // Optional. A comma-separated list of fields specifying which fields to be returned in ResourceSearchResult. Only '*' or combination of top level fields can be specified. Field names of both snake_case and camelCase are supported. Examples: `"*"`, `"name,location"`, `"name,versionedResources"`. The read_mask paths must be valid field paths listed but not limited to (both snake_case and camelCase are supported): * name * asset_type or assetType * project * display_name or displayName * description * location * labels * network_tags or networkTags * kms_key or kmsKey * create_time or createTime * update_time or updateTime * state * additional_attributes or additionalAttributes * versioned_resources or versionedResources If read_mask is not specified, all fields except versionedResources will be returned. If only '*' is specified, all fields including versionedResources will be returned. Any invalid field path will trigger INVALID_ARGUMENT error. + * readMask: 'placeholder-value', * // Required. A scope can be a project, a folder, or an organization. The search is limited to the resources within the `scope`. The caller must be granted the [`cloudasset.assets.searchAllResources`](https://cloud.google.com/asset-inventory/docs/access-control#required_permissions) permission on the desired scope. The allowed values are: * projects/{PROJECT_ID\} (e.g., "projects/foo-bar") * projects/{PROJECT_NUMBER\} (e.g., "projects/12345678") * folders/{FOLDER_NUMBER\} (e.g., "folders/1234567") * organizations/{ORGANIZATION_NUMBER\} (e.g., "organizations/123456") * scope: '[^/]+/[^/]+', * }); @@ -4109,6 +4128,10 @@ export namespace cloudasset_v1 { * Optional. The query statement. See [how to construct a query](https://cloud.google.com/asset-inventory/docs/searching-resources#how_to_construct_a_query) for more information. If not specified or empty, it will search all the resources within the specified `scope`. Examples: * `name:Important` to find Cloud resources whose name contains "Important" as a word. * `name=Important` to find the Cloud resource whose name is exactly "Important". * `displayName:Impor*` to find Cloud resources whose display name contains "Impor" as a prefix of any word in the field. * `location:us-west*` to find Cloud resources whose location contains both "us" and "west" as prefixes. * `labels:prod` to find Cloud resources whose labels contain "prod" as a key or value. * `labels.env:prod` to find Cloud resources that have a label "env" and its value is "prod". * `labels.env:*` to find Cloud resources that have a label "env". * `kmsKey:key` to find Cloud resources encrypted with a customer-managed encryption key whose name contains the word "key". * `state:ACTIVE` to find Cloud resources whose state contains "ACTIVE" as a word. * `NOT state:ACTIVE` to find {{gcp_name\}\} resources whose state doesn't contain "ACTIVE" as a word. * `createTime<1609459200` to find Cloud resources that were created before "2021-01-01 00:00:00 UTC". 1609459200 is the epoch timestamp of "2021-01-01 00:00:00 UTC" in seconds. * `updateTime\>1609459200` to find Cloud resources that were updated after "2021-01-01 00:00:00 UTC". 1609459200 is the epoch timestamp of "2021-01-01 00:00:00 UTC" in seconds. * `Important` to find Cloud resources that contain "Important" as a word in any of the searchable fields. * `Impor*` to find Cloud resources that contain "Impor" as a prefix of any word in any of the searchable fields. * `Important location:(us-west1 OR global)` to find Cloud resources that contain "Important" as a word in any of the searchable fields and are also located in the "us-west1" region or the "global" location. */ query?: string; + /** + * Optional. A comma-separated list of fields specifying which fields to be returned in ResourceSearchResult. Only '*' or combination of top level fields can be specified. Field names of both snake_case and camelCase are supported. Examples: `"*"`, `"name,location"`, `"name,versionedResources"`. The read_mask paths must be valid field paths listed but not limited to (both snake_case and camelCase are supported): * name * asset_type or assetType * project * display_name or displayName * description * location * labels * network_tags or networkTags * kms_key or kmsKey * create_time or createTime * update_time or updateTime * state * additional_attributes or additionalAttributes * versioned_resources or versionedResources If read_mask is not specified, all fields except versionedResources will be returned. If only '*' is specified, all fields including versionedResources will be returned. Any invalid field path will trigger INVALID_ARGUMENT error. + */ + readMask?: string; /** * Required. A scope can be a project, a folder, or an organization. The search is limited to the resources within the `scope`. The caller must be granted the [`cloudasset.assets.searchAllResources`](https://cloud.google.com/asset-inventory/docs/access-control#required_permissions) permission on the desired scope. The allowed values are: * projects/{PROJECT_ID\} (e.g., "projects/foo-bar") * projects/{PROJECT_NUMBER\} (e.g., "projects/12345678") * folders/{FOLDER_NUMBER\} (e.g., "folders/1234567") * organizations/{ORGANIZATION_NUMBER\} (e.g., "organizations/123456") */ diff --git a/src/apis/cloudidentity/v1beta1.ts b/src/apis/cloudidentity/v1beta1.ts index 6cc15846e36..8e3e3092aaa 100644 --- a/src/apis/cloudidentity/v1beta1.ts +++ b/src/apis/cloudidentity/v1beta1.ts @@ -878,6 +878,10 @@ export namespace cloudidentity_v1beta1 { * Required. Immutable. The resource name of the entity under which this `Group` resides in the Cloud Identity resource hierarchy. Must be of the form `identitysources/{identity_source_id\}` for external- identity-mapped groups or `customers/{customer_id\}` for Google Groups. The `customer_id` must begin with "C" (for example, 'C046psxkn'). */ parent?: string | null; + /** + * Optional. The POSIX groups associated with the `Group`. + */ + posixGroups?: Schema$PosixGroup[]; /** * Output only. The time when the `Group` was last updated. */ @@ -1165,6 +1169,23 @@ export namespace cloudidentity_v1beta1 { */ response?: {[key: string]: any} | null; } + /** + * POSIX Group definition to represent a group in a POSIX compliant system. + */ + export interface Schema$PosixGroup { + /** + * GID of the POSIX group. + */ + gid?: string | null; + /** + * Name of the POSIX group. + */ + name?: string | null; + /** + * System identifier for which group name and gid apply to. If not specified it will default to empty value. + */ + systemId?: string | null; + } /** * The response message for GroupsService.SearchGroups. */ @@ -4617,6 +4638,7 @@ export namespace cloudidentity_v1beta1 { * // "labels": {}, * // "name": "my_name", * // "parent": "my_parent", + * // "posixGroups": [], * // "updateTime": "my_updateTime" * // } * }, @@ -4901,6 +4923,7 @@ export namespace cloudidentity_v1beta1 { * // "labels": {}, * // "name": "my_name", * // "parent": "my_parent", + * // "posixGroups": [], * // "updateTime": "my_updateTime" * // } * } @@ -5323,6 +5346,7 @@ export namespace cloudidentity_v1beta1 { * // "labels": {}, * // "name": "my_name", * // "parent": "my_parent", + * // "posixGroups": [], * // "updateTime": "my_updateTime" * // } * }, diff --git a/src/apis/compute/alpha.ts b/src/apis/compute/alpha.ts index aaf1adbd446..efe3d6e4d90 100644 --- a/src/apis/compute/alpha.ts +++ b/src/apis/compute/alpha.ts @@ -549,7 +549,7 @@ export namespace compute_alpha { type?: string | null; } /** - * Use global external addresses for GFE-based external HTTP(S) load balancers in Premium Tier. Use global internal addresses for reserved peering network range. Use regional external addresses for the following resources: - External IP addresses for VM instances - Regional external forwarding rules - Cloud NAT external IP addresses - GFE based LBs in Standard Tier - Network LBs in Premium or Standard Tier - Cloud VPN gateways (both Classic and HA) Use regional internal IP addresses for subnet IP ranges (primary and secondary). This includes: - Internal IP addresses for VM instances - Alias IP ranges of VM instances (/32 only) - Regional internal forwarding rules - Internal TCP/UDP load balancer addresses - Internal HTTP(S) load balancer addresses - Cloud DNS inbound forwarding IP addresses For more information, read reserved IP address. + * Use global external addresses for GFE-based external HTTP(S) load balancers in Premium Tier. Use global internal addresses for reserved peering network range. Use regional external addresses for the following resources: - External IP addresses for VM instances - Regional external forwarding rules - Cloud NAT external IP addresses - GFE based LBs in Standard Tier - Network LBs in Premium or Standard Tier - Cloud VPN gateways (both Classic and HA) Use regional internal IP addresses for subnet IP ranges (primary and secondary). This includes: - Internal IP addresses for VM instances - Alias IP ranges of VM instances (/32 only) - Regional internal forwarding rules - Internal TCP/UDP load balancer addresses - Internal HTTP(S) load balancer addresses - Cloud DNS inbound forwarding IP addresses For more information, see Reserving a static external IP address. */ export interface Schema$Address { /** @@ -902,13 +902,17 @@ export namespace compute_alpha { */ diskSizeGb?: string | null; /** - * Specifies the disk type to use to create the instance. If not specified, the default is pd-standard, specified using the full URL. For example: https://www.googleapis.com/compute/v1/projects/project/zones/zone /diskTypes/pd-standard Other values include pd-ssd and local-ssd. If you define this field, you can provide either the full or partial URL. For example, the following are valid values: - https://www.googleapis.com/compute/v1/projects/project/zones/zone /diskTypes/diskType - projects/project/zones/zone/diskTypes/diskType - zones/zone/diskTypes/diskType Note that for InstanceTemplate, this is the name of the disk type, not URL. + * Specifies the disk type to use to create the instance. If not specified, the default is pd-standard, specified using the full URL. For example: https://www.googleapis.com/compute/v1/projects/project/zones/zone /diskTypes/pd-standard For a full list of acceptable values, see Persistent disk types. If you define this field, you can provide either the full or partial URL. For example, the following are valid values: - https://www.googleapis.com/compute/v1/projects/project/zones/zone /diskTypes/diskType - projects/project/zones/zone/diskTypes/diskType - zones/zone/diskTypes/diskType Note that for InstanceTemplate, this is the name of the disk type, not URL. */ diskType?: string | null; /** * A list of features to enable on the guest operating system. Applicable only for bootable images. Read Enabling guest operating system features to see a list of available options. Guest OS features are applied by merging initializeParams.guestOsFeatures and disks.guestOsFeatures */ guestOsFeatures?: Schema$GuestOsFeature[]; + /** + * Specifies the disk interface to use for attaching this disk, which is either SCSI or NVME. The default is SCSI. + */ + interface?: string | null; /** * Labels to apply to this disk. These can be later modified by the disks.setLabels method. This field is only applicable for persistent disks. */ @@ -922,7 +926,7 @@ export namespace compute_alpha { */ onUpdateAction?: string | null; /** - * Indicates how many IOPS must be provisioned for the disk. + * Indicates how many IOPS to provision for the disk. This sets the number of I/O operations per second that the disk can handle. Values must be between 10,000 and 120,000. For more details, see the Extreme persistent disk documentation. */ provisionedIops?: string | null; /** @@ -1333,7 +1337,7 @@ export namespace compute_alpha { */ balancingMode?: string | null; /** - * A multiplier applied to the backend's target capacity of its balancing mode. The default value is 1, which means the group serves up to 100% of its configured capacity (depending on balancingMode). A setting of 0 means the group is completely drained, offering 0% of its available capacity. The valid ranges are 0.0 and [0.1,1.0]. You cannot configure a setting larger than 0 and smaller than 0.1. You cannot configure a setting of 0 when there is only one backend attached to the backend service. Not supported by: - Internal TCP/UDP Load Balancing - Network Load Balancing + * A multiplier applied to the backend's target capacity of its balancing mode. The default value is 1, which means the group serves up to 100% of its configured capacity (depending on balancingMode). A setting of 0 means the group is completely drained, offering 0% of its available capacity. The valid ranges are 0.0 and [0.1,1.0]. You cannot configure a setting larger than 0 and smaller than 0.1. You cannot configure a setting of 0 when there is only one backend attached to the backend service. */ capacityScaler?: number | null; /** @@ -1345,19 +1349,19 @@ export namespace compute_alpha { */ failover?: boolean | null; /** - * The fully-qualified URL of an instance group or network endpoint group (NEG) resource. The type of backend that a backend service supports depends on the backend service's loadBalancingScheme. - When the loadBalancingScheme for the backend service is EXTERNAL (except Network Load Balancing), INTERNAL_SELF_MANAGED, or INTERNAL_MANAGED , the backend can be either an instance group or a NEG. The backends on the backend service must be either all instance groups or all NEGs. You cannot mix instance group and NEG backends on the same backend service. - When the loadBalancingScheme for the backend service is EXTERNAL for Network Load Balancing or INTERNAL for Internal TCP/UDP Load Balancing, the backend must be an instance group. NEGs are not supported. For regional services, the backend must be in the same region as the backend service. You must use the *fully-qualified* URL (starting with https://www.googleapis.com/) to specify the instance group or NEG. Partial URLs are not supported. + * The fully-qualified URL of an instance group or network endpoint group (NEG) resource. To determine what types of backends a load balancer supports, see the [Backend services overview](https://cloud.google.com/load-balancing/docs/backend-service#backends). You must use the *fully-qualified* URL (starting with https://www.googleapis.com/) to specify the instance group or NEG. Partial URLs are not supported. */ group?: string | null; /** - * Defines a target maximum number of simultaneous connections. For usage guidelines, see Connection balancing mode and Utilization balancing mode. Not available if the backend's balancingMode is RATE. Not supported by: - Internal TCP/UDP Load Balancing - Network Load Balancing + * Defines a target maximum number of simultaneous connections. For usage guidelines, see Connection balancing mode and Utilization balancing mode. Not available if the backend's balancingMode is RATE. */ maxConnections?: number | null; /** - * Defines a target maximum number of simultaneous connections. For usage guidelines, see Connection balancing mode and Utilization balancing mode. Not available if the backend's balancingMode is RATE. Not supported by: - Internal TCP/UDP Load Balancing - Network Load Balancing. + * Defines a target maximum number of simultaneous connections. For usage guidelines, see Connection balancing mode and Utilization balancing mode. Not available if the backend's balancingMode is RATE. */ maxConnectionsPerEndpoint?: number | null; /** - * Defines a target maximum number of simultaneous connections. For usage guidelines, see Connection balancing mode and Utilization balancing mode. Not available if the backend's balancingMode is RATE. Not supported by: - Internal TCP/UDP Load Balancing - Network Load Balancing. + * Defines a target maximum number of simultaneous connections. For usage guidelines, see Connection balancing mode and Utilization balancing mode. Not available if the backend's balancingMode is RATE. */ maxConnectionsPerInstance?: number | null; /** @@ -1387,7 +1391,7 @@ export namespace compute_alpha { */ cdnPolicy?: Schema$BackendBucketCdnPolicy; /** - * Compress text responses using Brotli or gzip compression, based on the client’s Accept-Encoding header. + * Compress text responses using Brotli or gzip compression, based on the client's Accept-Encoding header. */ compressionMode?: string | null; /** @@ -1553,11 +1557,11 @@ export namespace compute_alpha { } | null; } /** - * Represents a Backend Service resource. A backend service defines how Google Cloud load balancers distribute traffic. The backend service configuration contains a set of values, such as the protocol used to connect to backends, various distribution and session settings, health checks, and timeouts. These settings provide fine-grained control over how your load balancer behaves. Most of the settings have default values that allow for easy configuration if you need to get started quickly. Backend services in Google Compute Engine can be either regionally or globally scoped. * [Global](/compute/docs/reference/rest/alpha/backendServices) * [Regional](/compute/docs/reference/rest/alpha/regionBackendServices) For more information, see Backend Services. + * Represents a Backend Service resource. A backend service defines how Google Cloud load balancers distribute traffic. The backend service configuration contains a set of values, such as the protocol used to connect to backends, various distribution and session settings, health checks, and timeouts. These settings provide fine-grained control over how your load balancer behaves. Most of the settings have default values that allow for easy configuration if you need to get started quickly. Backend services in Google Compute Engine can be either regionally or globally scoped. * [Global](https://cloud.google.com/compute/docs/reference/rest/alpha/backendServices) * [Regional](https://cloud.google.com/compute/docs/reference/rest/alpha/regionBackendServices) For more information, see Backend Services. */ export interface Schema$BackendService { /** - * Lifetime of cookies in seconds. Only applicable if the loadBalancingScheme is EXTERNAL, INTERNAL_SELF_MANAGED, or INTERNAL_MANAGED, the protocol is HTTP or HTTPS, and the sessionAffinity is GENERATED_COOKIE, or HTTP_COOKIE. If set to 0, the cookie is non-persistent and lasts only until the end of the browser session (or equivalent). The maximum allowed value is one day ( 86,400). Not supported when the backend service is referenced by a URL map that is bound to target gRPC proxy that has validateForProxyless field set to true. + * Lifetime of cookies in seconds. This setting is applicable to external and internal HTTP(S) load balancers and Traffic Director and requires GENERATED_COOKIE or HTTP_COOKIE session affinity. If set to 0, the cookie is non-persistent and lasts only until the end of the browser session (or equivalent). The maximum allowed value is one day (86,400). Not supported when the backend service is referenced by a URL map that is bound to target gRPC proxy that has validateForProxyless field set to true. */ affinityCookieTtlSec?: number | null; /** @@ -1565,12 +1569,12 @@ export namespace compute_alpha { */ backends?: Schema$Backend[]; /** - * Cloud CDN configuration for this BackendService. Only available for external HTTP(S) Load Balancing. + * Cloud CDN configuration for this BackendService. Only available for specified load balancer types. */ cdnPolicy?: Schema$BackendServiceCdnPolicy; circuitBreakers?: Schema$CircuitBreakers; /** - * Compress text responses using Brotli or gzip compression, based on the client’s Accept-Encoding header. + * Compress text responses using Brotli or gzip compression, based on the client's Accept-Encoding header. */ compressionMode?: string | null; connectionDraining?: Schema$ConnectionDraining; @@ -1584,11 +1588,11 @@ export namespace compute_alpha { */ creationTimestamp?: string | null; /** - * Headers that the HTTP/S load balancer should add to proxied requests. + * Headers that the load balancer adds to proxied requests. See [Creating custom headers](https://cloud.google.com/load-balancing/docs/custom-headers). */ customRequestHeaders?: string[] | null; /** - * Headers that the HTTP/S load balancer should add to proxied responses. + * Headers that the load balancer adds to proxied responses. See [Creating custom headers](https://cloud.google.com/load-balancing/docs/custom-headers). */ customResponseHeaders?: string[] | null; /** @@ -1600,11 +1604,11 @@ export namespace compute_alpha { */ edgeSecurityPolicy?: string | null; /** - * If true, enables Cloud CDN for the backend service. Only applicable if the loadBalancingScheme is EXTERNAL and the protocol is HTTP or HTTPS. + * If true, enables Cloud CDN for the backend service of an external HTTP(S) load balancer. */ enableCDN?: boolean | null; /** - * Applicable only to Failover for Internal TCP/UDP Load Balancing and Network Load Balancing. Requires at least one backend instance group to be defined as a backup (failover) backend. + * Requires at least one backend instance group to be defined as a backup (failover) backend. For load balancers that have configurable failover: [Internal TCP/UDP Load Balancing](https://cloud.google.com/load-balancing/docs/internal/failover-overview) and [external TCP/UDP Load Balancing](/network/networklb-failover-overview). */ failoverPolicy?: Schema$BackendServiceFailoverPolicy; /** @@ -1628,7 +1632,7 @@ export namespace compute_alpha { */ kind?: string | null; /** - * Specifies the load balancer type. Choose EXTERNAL for external HTTP(S), SSL Proxy, TCP Proxy and Network Load Balancing. Choose INTERNAL for Internal TCP/UDP Load Balancing. Choose INTERNAL_MANAGED for Internal HTTP(S) Load Balancing. INTERNAL_SELF_MANAGED for Traffic Director. A backend service created for one type of load balancer cannot be used with another. For more information, refer to Choosing a load balancer. + * Specifies the load balancer type. A backend service created for one type of load balancer cannot be used with another. For more information, refer to Choosing a load balancer. */ loadBalancingScheme?: string | null; /** @@ -1656,15 +1660,15 @@ export namespace compute_alpha { */ outlierDetection?: Schema$OutlierDetection; /** - * Deprecated in favor of portName. The TCP port to connect on the backend. The default value is 80. Backend services for Internal TCP/UDP Load Balancing and Network Load Balancing require you omit port. + * Deprecated in favor of portName. The TCP port to connect on the backend. The default value is 80. For Internal TCP/UDP Load Balancing and Network Load Balancing, omit port. */ port?: number | null; /** - * A named port on a backend instance group representing the port for communication to the backend VMs in that group. Required when the loadBalancingScheme is EXTERNAL (except Network Load Balancing), INTERNAL_MANAGED, or INTERNAL_SELF_MANAGED and the backends are instance groups. The named port must be defined on each backend instance group. This parameter has no meaning if the backends are NEGs. Backend services for Internal TCP/UDP Load Balancing and Network Load Balancing require you omit port_name. + * A named port on a backend instance group representing the port for communication to the backend VMs in that group. The named port must be [defined on each backend instance group](https://cloud.google.com/load-balancing/docs/backend-service#named_ports). This parameter has no meaning if the backends are NEGs. For Internal TCP/UDP Load Balancing and Network Load Balancing, omit port_name. */ portName?: string | null; /** - * The protocol this BackendService uses to communicate with backends. Possible values are HTTP, HTTPS, HTTP2, TCP, SSL, UDP or GRPC. depending on the chosen load balancer or Traffic Director configuration. Refer to the documentation for the load balancer or for Traffic Director for more information. Must be set to GRPC when the backend service is referenced by a URL map that is bound to target gRPC proxy. + * The protocol this BackendService uses to communicate with backends. Possible values are HTTP, HTTPS, HTTP2, TCP, SSL, UDP or GRPC. depending on the chosen load balancer or Traffic Director configuration. Refer to the documentation for the load balancers or for Traffic Director for more information. Must be set to GRPC when the backend service is referenced by a URL map that is bound to target gRPC proxy. */ protocol?: string | null; /** @@ -1688,7 +1692,7 @@ export namespace compute_alpha { */ selfLinkWithId?: string | null; /** - * Type of session affinity to use. The default is NONE. When the loadBalancingScheme is EXTERNAL: * For Network Load Balancing, the possible values are NONE, CLIENT_IP, CLIENT_IP_PROTO, or CLIENT_IP_PORT_PROTO. * For all other load balancers that use loadBalancingScheme=EXTERNAL, the possible values are NONE, CLIENT_IP, or GENERATED_COOKIE. * You can use GENERATED_COOKIE if the protocol is HTTP, HTTP2, or HTTPS. When the loadBalancingScheme is INTERNAL, possible values are NONE, CLIENT_IP, CLIENT_IP_PROTO, or CLIENT_IP_PORT_PROTO. When the loadBalancingScheme is INTERNAL_SELF_MANAGED, or INTERNAL_MANAGED, possible values are NONE, CLIENT_IP, GENERATED_COOKIE, HEADER_FIELD, or HTTP_COOKIE. Not supported when the backend service is referenced by a URL map that is bound to target gRPC proxy that has validateForProxyless field set to true. + * Type of session affinity to use. The default is NONE. For a detailed description of session affinity options, see: [Session affinity](https://cloud.google.com/load-balancing/docs/backend-service#session_affinity). Not supported when the backend service is referenced by a URL map that is bound to target gRPC proxy that has validateForProxyless field set to true. */ sessionAffinity?: string | null; subsetting?: Schema$Subsetting; @@ -1827,7 +1831,7 @@ export namespace compute_alpha { trackingMode?: string | null; } /** - * Applicable only to Failover for Internal TCP/UDP Load Balancing and Network Load Balancing. On failover or failback, this field indicates whether connection draining will be honored. GCP has a fixed connection draining timeout of 10 minutes. A setting of true terminates existing TCP connections to the active pool during failover and failback, immediately draining traffic. A setting of false allows existing TCP connections to persist, even on VMs no longer in the active pool, for up to the duration of the connection draining timeout (10 minutes). + * For load balancers that have configurable failover: [Internal TCP/UDP Load Balancing](https://cloud.google.com/load-balancing/docs/internal/failover-overview) and [external TCP/UDP Load Balancing](/network/networklb-failover-overview). On failover or failback, this field indicates whether connection draining will be honored. Google Cloud has a fixed connection draining timeout of 10 minutes. A setting of true terminates existing TCP connections to the active pool during failover and failback, immediately draining traffic. A setting of false allows existing TCP connections to persist, even on VMs no longer in the active pool, for up to the duration of the connection draining timeout (10 minutes). */ export interface Schema$BackendServiceFailoverPolicy { /** @@ -1835,11 +1839,11 @@ export namespace compute_alpha { */ disableConnectionDrainOnFailover?: boolean | null; /** - * Applicable only to Failover for Internal TCP/UDP Load Balancing and Network Load Balancing, If set to true, connections to the load balancer are dropped when all primary and all backup backend VMs are unhealthy.If set to false, connections are distributed among all primary VMs when all primary and all backup backend VMs are unhealthy. The default is false. + * If set to true, connections to the load balancer are dropped when all primary and all backup backend VMs are unhealthy.If set to false, connections are distributed among all primary VMs when all primary and all backup backend VMs are unhealthy. For load balancers that have configurable failover: [Internal TCP/UDP Load Balancing](https://cloud.google.com/load-balancing/docs/internal/failover-overview) and [external TCP/UDP Load Balancing](/network/networklb-failover-overview). The default is false. */ dropTrafficIfUnhealthy?: boolean | null; /** - * Applicable only to Failover for Internal TCP/UDP Load Balancing and Network Load Balancing. The value of the field must be in the range [0, 1]. If the value is 0, the load balancer performs a failover when the number of healthy primary VMs equals zero. For all other values, the load balancer performs a failover when the total number of healthy primary VMs is less than this ratio. + * The value of the field must be in the range [0, 1]. If the value is 0, the load balancer performs a failover when the number of healthy primary VMs equals zero. For all other values, the load balancer performs a failover when the total number of healthy primary VMs is less than this ratio. For load balancers that have configurable failover: [Internal TCP/UDP Load Balancing](https://cloud.google.com/load-balancing/docs/internal/failover-overview) and [external TCP/UDP Load Balancing](/network/networklb-failover-overview). */ failoverRatio?: number | null; } @@ -2126,7 +2130,7 @@ export namespace compute_alpha { role?: string | null; } /** - * A transient resource used in compute.instances.bulkInsert and compute.regionInstances.bulkInsert and compute.regionInstances.recommendLocations. This resource is not persisted anywhere, it is used only for processing the requests. + * A transient resource used in compute.instances.bulkInsert and compute.regionInstances.bulkInsert . This resource is not persisted anywhere, it is used only for processing the requests. */ export interface Schema$BulkInsertInstanceResource { /** @@ -2150,7 +2154,7 @@ export namespace compute_alpha { */ minCount?: string | null; /** - * The string pattern used for the names of the VMs. Either name_pattern or per_instance_properties must be set. The pattern should contain one continuous sequence of placeholder hash characters (#) with each character corresponding to one digit of the generated instance name. Example: name_pattern of inst-#### will generate instance names such as inst-0001, inst-0002, ... . If there already exist instance(s) whose names match the name pattern in the same project and zone, then the generated instance numbers will start after the biggest existing number. For example, if there exists an instance with name inst-0050, then instance names generated using the pattern inst-#### will be inst-0051, inst-0052, etc. The name pattern placeholder # ...# can contain up to 18 characters. + * The string pattern used for the names of the VMs. Either name_pattern or per_instance_properties must be set. The pattern must contain one continuous sequence of placeholder hash characters (#) with each character corresponding to one digit of the generated instance name. Example: a name_pattern of inst-#### generates instance names such as inst-0001 and inst-0002. If existing instances in the same project and zone have names that match the name pattern then the generated instance numbers start after the biggest existing number. For example, if there exists an instance with name inst-0050, then instance names generated using the pattern inst-#### begin with inst-0051. The name pattern placeholder #...# can contain up to 18 characters. */ namePattern?: string | null; /** @@ -2248,7 +2252,7 @@ export namespace compute_alpha { channelCredentialType?: string | null; } /** - * Settings controlling the volume of connections to a backend service. + * Settings controlling the volume of requests, connections and retries to this backend service. */ export interface Schema$CircuitBreakers { /** @@ -2715,7 +2719,7 @@ export namespace compute_alpha { */ physicalBlockSizeBytes?: string | null; /** - * Indicates how many IOPS must be provisioned for the disk. + * Indicates how many IOPS to provision for the disk. This sets the number of I/O operations per second that the disk can handle. Values must be between 10,000 and 120,000. For more details, see the Extreme persistent disk documentation. */ provisionedIops?: string | null; /** @@ -2807,7 +2811,7 @@ export namespace compute_alpha { */ storageType?: string | null; /** - * URL of the disk type resource describing which disk type to use to create the disk. Provide this when creating the disk. For example: projects/project /zones/zone/diskTypes/pd-standard or pd-ssd + * URL of the disk type resource describing which disk type to use to create the disk. Provide this when creating the disk. For example: projects/project /zones/zone/diskTypes/pd-ssd . See Persistent disk types. */ type?: string | null; /** @@ -2923,7 +2927,7 @@ export namespace compute_alpha { } export interface Schema$DisksAddResourcePoliciesRequest { /** - * Resource policies to be added to this disk. Currently you can only specify one policy here. + * Full or relative path to the resource policy to be added to this disk. You can only specify one resource policy. */ resourcePolicies?: string[] | null; } @@ -3215,7 +3219,7 @@ export namespace compute_alpha { */ id?: string | null; /** - * List of interfaces for this external VPN gateway. If your peer-side gateway is an on-premises gateway and non-AWS cloud providers’ gateway, at most two interfaces can be provided for an external VPN gateway. If your peer side is an AWS virtual private gateway, four interfaces should be provided for an external VPN gateway. + * List of interfaces for this external VPN gateway. If your peer-side gateway is an on-premises gateway and non-AWS cloud providers' gateway, at most two interfaces can be provided for an external VPN gateway. If your peer side is an AWS virtual private gateway, four interfaces should be provided for an external VPN gateway. */ interfaces?: Schema$ExternalVpnGatewayInterface[]; /** @@ -4168,7 +4172,7 @@ export namespace compute_alpha { */ kind?: string | null; /** - * The path to be queried. This can be the default namespace ('/') or a nested namespace ('/\/') or a specified key ('/\/\') + * The path to be queried. This can be the default namespace ('') or a nested namespace ('\/') or a specified key ('\/\'). */ queryPath?: string | null; /** @@ -4391,7 +4395,7 @@ export namespace compute_alpha { */ healthChecks?: string[] | null; /** - * Optional. Policy for how the results from multiple health checks for the same endpoint are aggregated. Defaults to NO_AGGREGATION if unspecified. - NO_AGGREGATION. An EndpointHealth message is returned for each backend in the health check service. - AND. If any backend's health check reports UNHEALTHY, then UNHEALTHY is the HealthState of the entire health check service. If all backend's are healthy, the HealthState of the health check service is HEALTHY. . + * Optional. Policy for how the results from multiple health checks for the same endpoint are aggregated. Defaults to NO_AGGREGATION if unspecified. - NO_AGGREGATION. An EndpointHealth message is returned for each pair in the health check service. - AND. If any health check of an endpoint reports UNHEALTHY, then UNHEALTHY is the HealthState of the endpoint. If all health checks report HEALTHY, the HealthState of the endpoint is HEALTHY. . */ healthStatusAggregationPolicy?: string | null; /** @@ -4959,7 +4963,7 @@ export namespace compute_alpha { */ perTryTimeout?: Schema$Duration; /** - * Specifies one or more conditions when this retry rule applies. Valid values are: - 5xx: Loadbalancer will attempt a retry if the backend service responds with any 5xx response code, or if the backend service does not respond at all, example: disconnects, reset, read timeout, connection failure, and refused streams. - gateway-error: Similar to 5xx, but only applies to response codes 502, 503 or 504. - - connect-failure: Loadbalancer will retry on failures connecting to backend services, for example due to connection timeouts. - retriable-4xx: Loadbalancer will retry for retriable 4xx response codes. Currently the only retriable error supported is 409. - refused-stream:Loadbalancer will retry if the backend service resets the stream with a REFUSED_STREAM error code. This reset type indicates that it is safe to retry. - cancelledLoadbalancer will retry if the gRPC status code in the response header is set to cancelled - deadline-exceeded: Loadbalancer will retry if the gRPC status code in the response header is set to deadline-exceeded - resource-exhausted: Loadbalancer will retry if the gRPC status code in the response header is set to resource-exhausted - unavailable: Loadbalancer will retry if the gRPC status code in the response header is set to unavailable + * Specifies one or more conditions when this retry policy applies. Valid values are: - 5xx: Retry will be attempted if the instance or endpoint responds with any 5xx response code, or if the instance or endpoint does not respond at all, example: disconnects, reset, read timeout, connection failure, and refused streams. - gateway-error: Similar to 5xx, but only applies to response codes 502, 503 or 504. - - connect-failure: A retry will be attempted on failures connecting to the instance or endpoint, for example due to connection timeouts. - retriable-4xx: A retry will be attempted if the instance or endpoint responds with a retriable 4xx response code. Currently the only retriable error supported is 409. - refused-stream: A retry will be attempted if the instance or endpoint resets the stream with a REFUSED_STREAM error code. This reset type indicates that it is safe to retry. - cancelled: A retry will be attempted if the gRPC status code in the response header is set to cancelled. - deadline-exceeded: A retry will be attempted if the gRPC status code in the response header is set to deadline-exceeded. - internal: A retry will be attempted if the gRPC status code in the response header is set to internal. - resource-exhausted: A retry will be attempted if the gRPC status code in the response header is set to resource-exhausted. - unavailable: A retry will be attempted if the gRPC status code in the response header is set to unavailable. */ retryConditions?: string[] | null; } @@ -5862,7 +5866,7 @@ export namespace compute_alpha { } | null; } /** - * Whether the instance is a standby. # Properties of a standby instance comparing to the regular instance: # | regular | standby managed by IGM? | yes | yes added to the IG? | yes | yes counts towards IGM's target size? | yes | no taken into account by Autoscaler? | yes | no # receives traffic from LB? | yes | no Represents a Managed Instance Group resource. An instance group is a collection of VM instances that you can manage as a single entity. For more information, read Instance groups. For zonal Managed Instance Group, use the instanceGroupManagers resource. For regional Managed Instance Group, use the regionInstanceGroupManagers resource. + * Represents a Managed Instance Group resource. An instance group is a collection of VM instances that you can manage as a single entity. For more information, read Instance groups. For zonal Managed Instance Group, use the instanceGroupManagers resource. For regional Managed Instance Group, use the regionInstanceGroupManagers resource. */ export interface Schema$InstanceGroupManager { /** @@ -11664,54 +11668,6 @@ export namespace compute_alpha { */ namedPorts?: Schema$NamedPort[]; } - /** - * A transient resource used in compute.regionInstances.recommendLocations. This resource is not saved anywhere and used only to process the request. - */ - export interface Schema$RegionInstancesRecommendLocationsResource { - /** - * Specification of named homogeneous instance sets to find location for. Keys of this map are arbitrary (but must be different), defined by the caller used only in the response. They must follow RFC 1035 name standard. Specifically, they must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. Values are trimmed BulkInsertInstanceResource messages, without the following fields: - min_count - predefined_name - name_pattern - per_instance_properties - instance - secure_tag - location_policy - */ - instanceSpecs?: {[key: string]: Schema$BulkInsertInstanceResource} | null; - /** - * Location policy to indicate allowed zones for instances, together with the shape of the distribution. - */ - locationPolicy?: Schema$LocationPolicy; - } - /** - * Response for for compute.regionInstances.recommendLocations. - */ - export interface Schema$RegionInstancesRecommendLocationsResponse { - /** - * Instance count recommendations, keys are instance spec names. - */ - recommendedLocations?: { - [ - key: string - ]: Schema$RegionInstancesRecommendLocationsResponseRecommendationsForInstanceSpecs; - } | null; - } - /** - * Instance count recommendation for a single zone. - */ - export interface Schema$RegionInstancesRecommendLocationsResponseRecommendation { - /** - * Count of instances recommended. - */ - instanceCount?: number | null; - } - /** - * Instance count recommendations for a single instance specification. - */ - export interface Schema$RegionInstancesRecommendLocationsResponseRecommendationsForInstanceSpecs { - /** - * Instance count recommendations, keys are zone names. - */ - locations?: { - [ - key: string - ]: Schema$RegionInstancesRecommendLocationsResponseRecommendation; - } | null; - } export interface Schema$RegionInstantSnapshotsExportRequest { /** * Parameters to export the changed blocks. @@ -13258,6 +13214,10 @@ export namespace compute_alpha { * Defines whether the instance is preemptible. This can only be set during instance creation or while the instance is stopped and therefore, in a `TERMINATED` state. See Instance Life Cycle for more information on the possible instance states. */ preemptible?: boolean | null; + /** + * Specifies the provisioning model of the instance. + */ + provisioningModel?: string | null; } /** * Node Affinity: the configuration of desired nodes onto which this Instance could be scheduled. @@ -13564,6 +13524,10 @@ export namespace compute_alpha { * Must be specified if the action is "rate_based_ban" or "throttle". Cannot be specified for any other actions. */ rateLimitOptions?: Schema$SecurityPolicyRuleRateLimitOptions; + /** + * Parameters defining the redirect action. Cannot be specified for any other actions. + */ + redirectOptions?: Schema$SecurityPolicyRuleRedirectOptions; /** * This must be specified for redirect actions. Cannot be specified for any other actions. */ @@ -13692,6 +13656,16 @@ export namespace compute_alpha { */ intervalSec?: number | null; } + export interface Schema$SecurityPolicyRuleRedirectOptions { + /** + * Target for the redirect action. This is required if the type is EXTERNAL_302 and cannot be specified for GOOGLE_RECAPTCHA. + */ + target?: string | null; + /** + * Type of the redirect action. + */ + type?: string | null; + } /** * The authentication and authorization settings for a BackendService. */ @@ -14219,6 +14193,14 @@ export namespace compute_alpha { * [Output Only] The ID value of the disk used to create this snapshot. This value may be used to determine whether the snapshot was taken from the current or a previous instance of a given disk name. */ sourceDiskId?: string | null; + /** + * The source instant snapshot used to create this snapshot. You can provide this as a partial or full URL to the resource. For example, the following are valid values: - https://www.googleapis.com/compute/v1/projects/project/zones/zone /instantSnapshots/instantSnapshot - projects/project/zones/zone/instantSnapshots/instantSnapshot - zones/zone/instantSnapshots/instantSnapshot + */ + sourceInstantSnapshot?: string | null; + /** + * [Output Only] The unique ID of the instant snapshot used to create this snapshot. This value identifies the exact instant snapshot that was used to create this persistent disk. For example, if you created the persistent disk from an instant snapshot that was later deleted and recreated under the same name, the source instant snapshot ID would identify the exact instant snapshot that was used. + */ + sourceInstantSnapshotId?: string | null; /** * [Output Only] The status of the snapshot. This can be CREATING, DELETING, FAILED, READY, or UPLOADING. */ @@ -14968,6 +14950,10 @@ export namespace compute_alpha { */ export interface Schema$Subsetting { policy?: string | null; + /** + * The number of backends per backend group assigned to each proxy instance or each service mesh client. An input parameter to the `CONSISTENT_HASH_SUBSETTING` algorithm. Can only be set if `policy` is set to `CONSISTENT_HASH_SUBSETTING`. Can only be set if load balancing scheme is `INTERNAL_MANAGED` or 'INTERNAL_SELF_MANAGED'. 'subset_size' is optional for Internal HTTP(S) load balancing and required for Traffic Director. If you do not provide this value, Cloud Load Balancing will calculate it dynamically to optimize the number of proxies/clients visible to each backend and vice versa. Must be greater than 0. If `subset_size` is larger than the number of backends/endpoints, then subsetting is disabled. + */ + subsetSize?: number | null; } /** * A set of instance tags. @@ -25959,6 +25945,8 @@ export namespace compute_alpha { * // "sourceDisk": "my_sourceDisk", * // "sourceDiskEncryptionKey": {}, * // "sourceDiskId": "my_sourceDiskId", + * // "sourceInstantSnapshot": "my_sourceInstantSnapshot", + * // "sourceInstantSnapshotId": "my_sourceInstantSnapshotId", * // "status": "my_status", * // "storageBytes": "my_storageBytes", * // "storageBytesStatus": "my_storageBytesStatus", @@ -62939,7 +62927,8 @@ export namespace compute_alpha { * // "minNodeCpus": 0, * // "nodeAffinities": [], * // "onHostMaintenance": "my_onHostMaintenance", - * // "preemptible": false + * // "preemptible": false, + * // "provisioningModel": "my_provisioningModel" * // } * }, * }); @@ -88941,6 +88930,7 @@ export namespace compute_alpha { * // "preview": false, * // "priority": 0, * // "rateLimitOptions": {}, + * // "redirectOptions": {}, * // "redirectTarget": "my_redirectTarget", * // "ruleNumber": "my_ruleNumber", * // "ruleTupleCount": 0, @@ -89739,6 +89729,7 @@ export namespace compute_alpha { * // "preview": false, * // "priority": 0, * // "rateLimitOptions": {}, + * // "redirectOptions": {}, * // "redirectTarget": "my_redirectTarget", * // "ruleNumber": "my_ruleNumber", * // "ruleTupleCount": 0, @@ -90718,6 +90709,7 @@ export namespace compute_alpha { * // "preview": false, * // "priority": 0, * // "rateLimitOptions": {}, + * // "redirectOptions": {}, * // "redirectTarget": "my_redirectTarget", * // "ruleNumber": "my_ruleNumber", * // "ruleTupleCount": 0, @@ -100564,7 +100556,7 @@ export namespace compute_alpha { } /** - * Retrieves an aggregated list of commitments. + * Retrieves an aggregated list of commitments by region. * @example * ```js * // Before running the sample: @@ -102154,6 +102146,8 @@ export namespace compute_alpha { * // "sourceDisk": "my_sourceDisk", * // "sourceDiskEncryptionKey": {}, * // "sourceDiskId": "my_sourceDiskId", + * // "sourceInstantSnapshot": "my_sourceInstantSnapshot", + * // "sourceInstantSnapshotId": "my_sourceInstantSnapshotId", * // "status": "my_status", * // "storageBytes": "my_storageBytes", * // "storageBytesStatus": "my_storageBytesStatus", @@ -115166,159 +115160,6 @@ export namespace compute_alpha { return createAPIRequest(parameters); } } - - /** - * Returns recommended locations (zones in a region) for specified sets of homogenous instances. - * @example - * ```js - * // Before running the sample: - * // - Enable the API at: - * // https://console.developers.google.com/apis/api/compute.googleapis.com - * // - Login into gcloud by running: - * // `$ gcloud auth application-default login` - * // - Install the npm module by running: - * // `$ npm install googleapis` - * - * const {google} = require('googleapis'); - * const compute = google.compute('alpha'); - * - * async function main() { - * const auth = new google.auth.GoogleAuth({ - * // Scopes can be specified either as an array or as a single, space-delimited string. - * scopes: [ - * 'https://www.googleapis.com/auth/cloud-platform', - * 'https://www.googleapis.com/auth/compute', - * ], - * }); - * - * // Acquire an auth client, and bind it to all future calls - * const authClient = await auth.getClient(); - * google.options({auth: authClient}); - * - * // Do the magic - * const res = await compute.regionInstances.recommendLocations({ - * // Project ID for this request. - * project: - * '(?:(?:[-a-z0-9]{1,63}.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', - * // The name of the region for this request. - * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', - * - * // Request body metadata - * requestBody: { - * // request body parameters - * // { - * // "instanceSpecs": {}, - * // "locationPolicy": {} - * // } - * }, - * }); - * console.log(res.data); - * - * // Example response - * // { - * // "recommendedLocations": {} - * // } - * } - * - * main().catch(e => { - * console.error(e); - * throw e; - * }); - * - * ``` - * - * @param params - Parameters for request - * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. - * @param callback - Optional callback that handles the response. - * @returns A promise if used with async/await, or void if used with a callback. - */ - recommendLocations( - params: Params$Resource$Regioninstances$Recommendlocations, - options: StreamMethodOptions - ): GaxiosPromise; - recommendLocations( - params?: Params$Resource$Regioninstances$Recommendlocations, - options?: MethodOptions - ): GaxiosPromise; - recommendLocations( - params: Params$Resource$Regioninstances$Recommendlocations, - options: StreamMethodOptions | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - recommendLocations( - params: Params$Resource$Regioninstances$Recommendlocations, - options: - | MethodOptions - | BodyResponseCallback, - callback: BodyResponseCallback - ): void; - recommendLocations( - params: Params$Resource$Regioninstances$Recommendlocations, - callback: BodyResponseCallback - ): void; - recommendLocations( - callback: BodyResponseCallback - ): void; - recommendLocations( - paramsOrCallback?: - | Params$Resource$Regioninstances$Recommendlocations - | BodyResponseCallback - | BodyResponseCallback, - optionsOrCallback?: - | MethodOptions - | StreamMethodOptions - | BodyResponseCallback - | BodyResponseCallback, - callback?: - | BodyResponseCallback - | BodyResponseCallback - ): - | void - | GaxiosPromise - | GaxiosPromise { - let params = (paramsOrCallback || - {}) as Params$Resource$Regioninstances$Recommendlocations; - let options = (optionsOrCallback || {}) as MethodOptions; - - if (typeof paramsOrCallback === 'function') { - callback = paramsOrCallback; - params = {} as Params$Resource$Regioninstances$Recommendlocations; - options = {}; - } - - if (typeof optionsOrCallback === 'function') { - callback = optionsOrCallback; - options = {}; - } - - const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; - const parameters = { - options: Object.assign( - { - url: ( - rootUrl + - '/compute/alpha/projects/{project}/regions/{region}/instances/recommendLocations' - ).replace(/([^:]\/)\/+/g, '$1'), - method: 'POST', - }, - options - ), - params, - requiredParams: ['project', 'region'], - pathParams: ['project', 'region'], - context: this.context, - }; - if (callback) { - createAPIRequest( - parameters, - callback as BodyResponseCallback - ); - } else { - return createAPIRequest( - parameters - ); - } - } } export interface Params$Resource$Regioninstances$Bulkinsert @@ -115341,22 +115182,6 @@ export namespace compute_alpha { */ requestBody?: Schema$BulkInsertInstanceResource; } - export interface Params$Resource$Regioninstances$Recommendlocations - extends StandardParameters { - /** - * Project ID for this request. - */ - project?: string; - /** - * The name of the region for this request. - */ - region?: string; - - /** - * Request body metadata - */ - requestBody?: Schema$RegionInstancesRecommendLocationsResource; - } export class Resource$Regioninstantsnapshots { context: APIRequestContext; @@ -135019,6 +134844,7 @@ export namespace compute_alpha { * // "preview": false, * // "priority": 0, * // "rateLimitOptions": {}, + * // "redirectOptions": {}, * // "redirectTarget": "my_redirectTarget", * // "ruleNumber": "my_ruleNumber", * // "ruleTupleCount": 0, @@ -135682,6 +135508,7 @@ export namespace compute_alpha { * // "preview": false, * // "priority": 0, * // "rateLimitOptions": {}, + * // "redirectOptions": {}, * // "redirectTarget": "my_redirectTarget", * // "ruleNumber": "my_ruleNumber", * // "ruleTupleCount": 0, @@ -136523,6 +136350,7 @@ export namespace compute_alpha { * // "preview": false, * // "priority": 0, * // "rateLimitOptions": {}, + * // "redirectOptions": {}, * // "redirectTarget": "my_redirectTarget", * // "ruleNumber": "my_ruleNumber", * // "ruleTupleCount": 0, @@ -139292,6 +139120,8 @@ export namespace compute_alpha { * // "sourceDisk": "my_sourceDisk", * // "sourceDiskEncryptionKey": {}, * // "sourceDiskId": "my_sourceDiskId", + * // "sourceInstantSnapshot": "my_sourceInstantSnapshot", + * // "sourceInstantSnapshotId": "my_sourceInstantSnapshotId", * // "status": "my_status", * // "storageBytes": "my_storageBytes", * // "storageBytesStatus": "my_storageBytesStatus", @@ -139595,6 +139425,8 @@ export namespace compute_alpha { * // "sourceDisk": "my_sourceDisk", * // "sourceDiskEncryptionKey": {}, * // "sourceDiskId": "my_sourceDiskId", + * // "sourceInstantSnapshot": "my_sourceInstantSnapshot", + * // "sourceInstantSnapshotId": "my_sourceInstantSnapshotId", * // "status": "my_status", * // "storageBytes": "my_storageBytes", * // "storageBytesStatus": "my_storageBytesStatus", diff --git a/src/apis/compute/beta.ts b/src/apis/compute/beta.ts index 75b9103c3a0..d4ae6454871 100644 --- a/src/apis/compute/beta.ts +++ b/src/apis/compute/beta.ts @@ -505,7 +505,7 @@ export namespace compute_beta { type?: string | null; } /** - * Use global external addresses for GFE-based external HTTP(S) load balancers in Premium Tier. Use global internal addresses for reserved peering network range. Use regional external addresses for the following resources: - External IP addresses for VM instances - Regional external forwarding rules - Cloud NAT external IP addresses - GFE based LBs in Standard Tier - Network LBs in Premium or Standard Tier - Cloud VPN gateways (both Classic and HA) Use regional internal IP addresses for subnet IP ranges (primary and secondary). This includes: - Internal IP addresses for VM instances - Alias IP ranges of VM instances (/32 only) - Regional internal forwarding rules - Internal TCP/UDP load balancer addresses - Internal HTTP(S) load balancer addresses - Cloud DNS inbound forwarding IP addresses For more information, read reserved IP address. + * Use global external addresses for GFE-based external HTTP(S) load balancers in Premium Tier. Use global internal addresses for reserved peering network range. Use regional external addresses for the following resources: - External IP addresses for VM instances - Regional external forwarding rules - Cloud NAT external IP addresses - GFE based LBs in Standard Tier - Network LBs in Premium or Standard Tier - Cloud VPN gateways (both Classic and HA) Use regional internal IP addresses for subnet IP ranges (primary and secondary). This includes: - Internal IP addresses for VM instances - Alias IP ranges of VM instances (/32 only) - Regional internal forwarding rules - Internal TCP/UDP load balancer addresses - Internal HTTP(S) load balancer addresses - Cloud DNS inbound forwarding IP addresses For more information, see Reserving a static external IP address. */ export interface Schema$Address { /** @@ -834,7 +834,7 @@ export namespace compute_beta { */ diskSizeGb?: string | null; /** - * Specifies the disk type to use to create the instance. If not specified, the default is pd-standard, specified using the full URL. For example: https://www.googleapis.com/compute/v1/projects/project/zones/zone /diskTypes/pd-standard Other values include pd-ssd and local-ssd. If you define this field, you can provide either the full or partial URL. For example, the following are valid values: - https://www.googleapis.com/compute/v1/projects/project/zones/zone /diskTypes/diskType - projects/project/zones/zone/diskTypes/diskType - zones/zone/diskTypes/diskType Note that for InstanceTemplate, this is the name of the disk type, not URL. + * Specifies the disk type to use to create the instance. If not specified, the default is pd-standard, specified using the full URL. For example: https://www.googleapis.com/compute/v1/projects/project/zones/zone /diskTypes/pd-standard For a full list of acceptable values, see Persistent disk types. If you define this field, you can provide either the full or partial URL. For example, the following are valid values: - https://www.googleapis.com/compute/v1/projects/project/zones/zone /diskTypes/diskType - projects/project/zones/zone/diskTypes/diskType - zones/zone/diskTypes/diskType Note that for InstanceTemplate, this is the name of the disk type, not URL. */ diskType?: string | null; /** @@ -854,7 +854,7 @@ export namespace compute_beta { */ onUpdateAction?: string | null; /** - * Indicates how many IOPS must be provisioned for the disk. + * Indicates how many IOPS to provision for the disk. This sets the number of I/O operations per second that the disk can handle. Values must be between 10,000 and 120,000. For more details, see the Extreme persistent disk documentation. */ provisionedIops?: string | null; /** @@ -1227,7 +1227,7 @@ export namespace compute_beta { */ balancingMode?: string | null; /** - * A multiplier applied to the backend's target capacity of its balancing mode. The default value is 1, which means the group serves up to 100% of its configured capacity (depending on balancingMode). A setting of 0 means the group is completely drained, offering 0% of its available capacity. The valid ranges are 0.0 and [0.1,1.0]. You cannot configure a setting larger than 0 and smaller than 0.1. You cannot configure a setting of 0 when there is only one backend attached to the backend service. Not supported by: - Internal TCP/UDP Load Balancing - Network Load Balancing + * A multiplier applied to the backend's target capacity of its balancing mode. The default value is 1, which means the group serves up to 100% of its configured capacity (depending on balancingMode). A setting of 0 means the group is completely drained, offering 0% of its available capacity. The valid ranges are 0.0 and [0.1,1.0]. You cannot configure a setting larger than 0 and smaller than 0.1. You cannot configure a setting of 0 when there is only one backend attached to the backend service. */ capacityScaler?: number | null; /** @@ -1239,19 +1239,19 @@ export namespace compute_beta { */ failover?: boolean | null; /** - * The fully-qualified URL of an instance group or network endpoint group (NEG) resource. The type of backend that a backend service supports depends on the backend service's loadBalancingScheme. - When the loadBalancingScheme for the backend service is EXTERNAL (except Network Load Balancing), INTERNAL_SELF_MANAGED, or INTERNAL_MANAGED , the backend can be either an instance group or a NEG. The backends on the backend service must be either all instance groups or all NEGs. You cannot mix instance group and NEG backends on the same backend service. - When the loadBalancingScheme for the backend service is EXTERNAL for Network Load Balancing or INTERNAL for Internal TCP/UDP Load Balancing, the backend must be an instance group. NEGs are not supported. For regional services, the backend must be in the same region as the backend service. You must use the *fully-qualified* URL (starting with https://www.googleapis.com/) to specify the instance group or NEG. Partial URLs are not supported. + * The fully-qualified URL of an instance group or network endpoint group (NEG) resource. To determine what types of backends a load balancer supports, see the [Backend services overview](https://cloud.google.com/load-balancing/docs/backend-service#backends). You must use the *fully-qualified* URL (starting with https://www.googleapis.com/) to specify the instance group or NEG. Partial URLs are not supported. */ group?: string | null; /** - * Defines a target maximum number of simultaneous connections. For usage guidelines, see Connection balancing mode and Utilization balancing mode. Not available if the backend's balancingMode is RATE. Not supported by: - Internal TCP/UDP Load Balancing - Network Load Balancing + * Defines a target maximum number of simultaneous connections. For usage guidelines, see Connection balancing mode and Utilization balancing mode. Not available if the backend's balancingMode is RATE. */ maxConnections?: number | null; /** - * Defines a target maximum number of simultaneous connections. For usage guidelines, see Connection balancing mode and Utilization balancing mode. Not available if the backend's balancingMode is RATE. Not supported by: - Internal TCP/UDP Load Balancing - Network Load Balancing. + * Defines a target maximum number of simultaneous connections. For usage guidelines, see Connection balancing mode and Utilization balancing mode. Not available if the backend's balancingMode is RATE. */ maxConnectionsPerEndpoint?: number | null; /** - * Defines a target maximum number of simultaneous connections. For usage guidelines, see Connection balancing mode and Utilization balancing mode. Not available if the backend's balancingMode is RATE. Not supported by: - Internal TCP/UDP Load Balancing - Network Load Balancing. + * Defines a target maximum number of simultaneous connections. For usage guidelines, see Connection balancing mode and Utilization balancing mode. Not available if the backend's balancingMode is RATE. */ maxConnectionsPerInstance?: number | null; /** @@ -1281,7 +1281,7 @@ export namespace compute_beta { */ cdnPolicy?: Schema$BackendBucketCdnPolicy; /** - * Compress text responses using Brotli or gzip compression, based on the client’s Accept-Encoding header. + * Compress text responses using Brotli or gzip compression, based on the client's Accept-Encoding header. */ compressionMode?: string | null; /** @@ -1443,11 +1443,11 @@ export namespace compute_beta { } | null; } /** - * Represents a Backend Service resource. A backend service defines how Google Cloud load balancers distribute traffic. The backend service configuration contains a set of values, such as the protocol used to connect to backends, various distribution and session settings, health checks, and timeouts. These settings provide fine-grained control over how your load balancer behaves. Most of the settings have default values that allow for easy configuration if you need to get started quickly. Backend services in Google Compute Engine can be either regionally or globally scoped. * [Global](/compute/docs/reference/rest/beta/backendServices) * [Regional](/compute/docs/reference/rest/beta/regionBackendServices) For more information, see Backend Services. + * Represents a Backend Service resource. A backend service defines how Google Cloud load balancers distribute traffic. The backend service configuration contains a set of values, such as the protocol used to connect to backends, various distribution and session settings, health checks, and timeouts. These settings provide fine-grained control over how your load balancer behaves. Most of the settings have default values that allow for easy configuration if you need to get started quickly. Backend services in Google Compute Engine can be either regionally or globally scoped. * [Global](https://cloud.google.com/compute/docs/reference/rest/beta/backendServices) * [Regional](https://cloud.google.com/compute/docs/reference/rest/beta/regionBackendServices) For more information, see Backend Services. */ export interface Schema$BackendService { /** - * Lifetime of cookies in seconds. Only applicable if the loadBalancingScheme is EXTERNAL, INTERNAL_SELF_MANAGED, or INTERNAL_MANAGED, the protocol is HTTP or HTTPS, and the sessionAffinity is GENERATED_COOKIE, or HTTP_COOKIE. If set to 0, the cookie is non-persistent and lasts only until the end of the browser session (or equivalent). The maximum allowed value is one day ( 86,400). Not supported when the backend service is referenced by a URL map that is bound to target gRPC proxy that has validateForProxyless field set to true. + * Lifetime of cookies in seconds. This setting is applicable to external and internal HTTP(S) load balancers and Traffic Director and requires GENERATED_COOKIE or HTTP_COOKIE session affinity. If set to 0, the cookie is non-persistent and lasts only until the end of the browser session (or equivalent). The maximum allowed value is one day (86,400). Not supported when the backend service is referenced by a URL map that is bound to target gRPC proxy that has validateForProxyless field set to true. */ affinityCookieTtlSec?: number | null; /** @@ -1455,12 +1455,12 @@ export namespace compute_beta { */ backends?: Schema$Backend[]; /** - * Cloud CDN configuration for this BackendService. Only available for external HTTP(S) Load Balancing. + * Cloud CDN configuration for this BackendService. Only available for specified load balancer types. */ cdnPolicy?: Schema$BackendServiceCdnPolicy; circuitBreakers?: Schema$CircuitBreakers; /** - * Compress text responses using Brotli or gzip compression, based on the client’s Accept-Encoding header. + * Compress text responses using Brotli or gzip compression, based on the client's Accept-Encoding header. */ compressionMode?: string | null; connectionDraining?: Schema$ConnectionDraining; @@ -1474,11 +1474,11 @@ export namespace compute_beta { */ creationTimestamp?: string | null; /** - * Headers that the HTTP/S load balancer should add to proxied requests. + * Headers that the load balancer adds to proxied requests. See [Creating custom headers](https://cloud.google.com/load-balancing/docs/custom-headers). */ customRequestHeaders?: string[] | null; /** - * Headers that the HTTP/S load balancer should add to proxied responses. + * Headers that the load balancer adds to proxied responses. See [Creating custom headers](https://cloud.google.com/load-balancing/docs/custom-headers). */ customResponseHeaders?: string[] | null; /** @@ -1490,11 +1490,11 @@ export namespace compute_beta { */ edgeSecurityPolicy?: string | null; /** - * If true, enables Cloud CDN for the backend service. Only applicable if the loadBalancingScheme is EXTERNAL and the protocol is HTTP or HTTPS. + * If true, enables Cloud CDN for the backend service of an external HTTP(S) load balancer. */ enableCDN?: boolean | null; /** - * Applicable only to Failover for Internal TCP/UDP Load Balancing and Network Load Balancing. Requires at least one backend instance group to be defined as a backup (failover) backend. + * Requires at least one backend instance group to be defined as a backup (failover) backend. For load balancers that have configurable failover: [Internal TCP/UDP Load Balancing](https://cloud.google.com/load-balancing/docs/internal/failover-overview) and [external TCP/UDP Load Balancing](/network/networklb-failover-overview). */ failoverPolicy?: Schema$BackendServiceFailoverPolicy; /** @@ -1518,7 +1518,7 @@ export namespace compute_beta { */ kind?: string | null; /** - * Specifies the load balancer type. Choose EXTERNAL for external HTTP(S), SSL Proxy, TCP Proxy and Network Load Balancing. Choose INTERNAL for Internal TCP/UDP Load Balancing. Choose INTERNAL_MANAGED for Internal HTTP(S) Load Balancing. INTERNAL_SELF_MANAGED for Traffic Director. A backend service created for one type of load balancer cannot be used with another. For more information, refer to Choosing a load balancer. + * Specifies the load balancer type. A backend service created for one type of load balancer cannot be used with another. For more information, refer to Choosing a load balancer. */ loadBalancingScheme?: string | null; /** @@ -1546,15 +1546,15 @@ export namespace compute_beta { */ outlierDetection?: Schema$OutlierDetection; /** - * Deprecated in favor of portName. The TCP port to connect on the backend. The default value is 80. Backend services for Internal TCP/UDP Load Balancing and Network Load Balancing require you omit port. + * Deprecated in favor of portName. The TCP port to connect on the backend. The default value is 80. For Internal TCP/UDP Load Balancing and Network Load Balancing, omit port. */ port?: number | null; /** - * A named port on a backend instance group representing the port for communication to the backend VMs in that group. Required when the loadBalancingScheme is EXTERNAL (except Network Load Balancing), INTERNAL_MANAGED, or INTERNAL_SELF_MANAGED and the backends are instance groups. The named port must be defined on each backend instance group. This parameter has no meaning if the backends are NEGs. Backend services for Internal TCP/UDP Load Balancing and Network Load Balancing require you omit port_name. + * A named port on a backend instance group representing the port for communication to the backend VMs in that group. The named port must be [defined on each backend instance group](https://cloud.google.com/load-balancing/docs/backend-service#named_ports). This parameter has no meaning if the backends are NEGs. For Internal TCP/UDP Load Balancing and Network Load Balancing, omit port_name. */ portName?: string | null; /** - * The protocol this BackendService uses to communicate with backends. Possible values are HTTP, HTTPS, HTTP2, TCP, SSL, UDP or GRPC. depending on the chosen load balancer or Traffic Director configuration. Refer to the documentation for the load balancer or for Traffic Director for more information. Must be set to GRPC when the backend service is referenced by a URL map that is bound to target gRPC proxy. + * The protocol this BackendService uses to communicate with backends. Possible values are HTTP, HTTPS, HTTP2, TCP, SSL, UDP or GRPC. depending on the chosen load balancer or Traffic Director configuration. Refer to the documentation for the load balancers or for Traffic Director for more information. Must be set to GRPC when the backend service is referenced by a URL map that is bound to target gRPC proxy. */ protocol?: string | null; /** @@ -1574,7 +1574,7 @@ export namespace compute_beta { */ selfLink?: string | null; /** - * Type of session affinity to use. The default is NONE. When the loadBalancingScheme is EXTERNAL: * For Network Load Balancing, the possible values are NONE, CLIENT_IP, CLIENT_IP_PROTO, or CLIENT_IP_PORT_PROTO. * For all other load balancers that use loadBalancingScheme=EXTERNAL, the possible values are NONE, CLIENT_IP, or GENERATED_COOKIE. * You can use GENERATED_COOKIE if the protocol is HTTP, HTTP2, or HTTPS. When the loadBalancingScheme is INTERNAL, possible values are NONE, CLIENT_IP, CLIENT_IP_PROTO, or CLIENT_IP_PORT_PROTO. When the loadBalancingScheme is INTERNAL_SELF_MANAGED, or INTERNAL_MANAGED, possible values are NONE, CLIENT_IP, GENERATED_COOKIE, HEADER_FIELD, or HTTP_COOKIE. Not supported when the backend service is referenced by a URL map that is bound to target gRPC proxy that has validateForProxyless field set to true. + * Type of session affinity to use. The default is NONE. For a detailed description of session affinity options, see: [Session affinity](https://cloud.google.com/load-balancing/docs/backend-service#session_affinity). Not supported when the backend service is referenced by a URL map that is bound to target gRPC proxy that has validateForProxyless field set to true. */ sessionAffinity?: string | null; subsetting?: Schema$Subsetting; @@ -1713,7 +1713,7 @@ export namespace compute_beta { trackingMode?: string | null; } /** - * Applicable only to Failover for Internal TCP/UDP Load Balancing and Network Load Balancing. On failover or failback, this field indicates whether connection draining will be honored. GCP has a fixed connection draining timeout of 10 minutes. A setting of true terminates existing TCP connections to the active pool during failover and failback, immediately draining traffic. A setting of false allows existing TCP connections to persist, even on VMs no longer in the active pool, for up to the duration of the connection draining timeout (10 minutes). + * For load balancers that have configurable failover: [Internal TCP/UDP Load Balancing](https://cloud.google.com/load-balancing/docs/internal/failover-overview) and [external TCP/UDP Load Balancing](/network/networklb-failover-overview). On failover or failback, this field indicates whether connection draining will be honored. Google Cloud has a fixed connection draining timeout of 10 minutes. A setting of true terminates existing TCP connections to the active pool during failover and failback, immediately draining traffic. A setting of false allows existing TCP connections to persist, even on VMs no longer in the active pool, for up to the duration of the connection draining timeout (10 minutes). */ export interface Schema$BackendServiceFailoverPolicy { /** @@ -1721,11 +1721,11 @@ export namespace compute_beta { */ disableConnectionDrainOnFailover?: boolean | null; /** - * Applicable only to Failover for Internal TCP/UDP Load Balancing and Network Load Balancing, If set to true, connections to the load balancer are dropped when all primary and all backup backend VMs are unhealthy.If set to false, connections are distributed among all primary VMs when all primary and all backup backend VMs are unhealthy. The default is false. + * If set to true, connections to the load balancer are dropped when all primary and all backup backend VMs are unhealthy.If set to false, connections are distributed among all primary VMs when all primary and all backup backend VMs are unhealthy. For load balancers that have configurable failover: [Internal TCP/UDP Load Balancing](https://cloud.google.com/load-balancing/docs/internal/failover-overview) and [external TCP/UDP Load Balancing](/network/networklb-failover-overview). The default is false. */ dropTrafficIfUnhealthy?: boolean | null; /** - * Applicable only to Failover for Internal TCP/UDP Load Balancing and Network Load Balancing. The value of the field must be in the range [0, 1]. If the value is 0, the load balancer performs a failover when the number of healthy primary VMs equals zero. For all other values, the load balancer performs a failover when the total number of healthy primary VMs is less than this ratio. + * The value of the field must be in the range [0, 1]. If the value is 0, the load balancer performs a failover when the number of healthy primary VMs equals zero. For all other values, the load balancer performs a failover when the total number of healthy primary VMs is less than this ratio. For load balancers that have configurable failover: [Internal TCP/UDP Load Balancing](https://cloud.google.com/load-balancing/docs/internal/failover-overview) and [external TCP/UDP Load Balancing](/network/networklb-failover-overview). */ failoverRatio?: number | null; } @@ -1978,7 +1978,7 @@ export namespace compute_beta { role?: string | null; } /** - * A transient resource used in compute.instances.bulkInsert and compute.regionInstances.bulkInsert and compute.regionInstances.recommendLocations. This resource is not persisted anywhere, it is used only for processing the requests. + * A transient resource used in compute.instances.bulkInsert and compute.regionInstances.bulkInsert . This resource is not persisted anywhere, it is used only for processing the requests. */ export interface Schema$BulkInsertInstanceResource { /** @@ -1998,7 +1998,7 @@ export namespace compute_beta { */ minCount?: string | null; /** - * The string pattern used for the names of the VMs. Either name_pattern or per_instance_properties must be set. The pattern should contain one continuous sequence of placeholder hash characters (#) with each character corresponding to one digit of the generated instance name. Example: name_pattern of inst-#### will generate instance names such as inst-0001, inst-0002, ... . If there already exist instance(s) whose names match the name pattern in the same project and zone, then the generated instance numbers will start after the biggest existing number. For example, if there exists an instance with name inst-0050, then instance names generated using the pattern inst-#### will be inst-0051, inst-0052, etc. The name pattern placeholder # ...# can contain up to 18 characters. + * The string pattern used for the names of the VMs. Either name_pattern or per_instance_properties must be set. The pattern must contain one continuous sequence of placeholder hash characters (#) with each character corresponding to one digit of the generated instance name. Example: a name_pattern of inst-#### generates instance names such as inst-0001 and inst-0002. If existing instances in the same project and zone have names that match the name pattern then the generated instance numbers start after the biggest existing number. For example, if there exists an instance with name inst-0050, then instance names generated using the pattern inst-#### begin with inst-0051. The name pattern placeholder #...# can contain up to 18 characters. */ namePattern?: string | null; /** @@ -2062,7 +2062,7 @@ export namespace compute_beta { queryStringWhitelist?: string[] | null; } /** - * Settings controlling the volume of connections to a backend service. + * Settings controlling the volume of requests, connections and retries to this backend service. */ export interface Schema$CircuitBreakers { /** @@ -2496,7 +2496,7 @@ export namespace compute_beta { */ physicalBlockSizeBytes?: string | null; /** - * Indicates how many IOPS must be provisioned for the disk. + * Indicates how many IOPS to provision for the disk. This sets the number of I/O operations per second that the disk can handle. Values must be between 10,000 and 120,000. For more details, see the Extreme persistent disk documentation. */ provisionedIops?: string | null; /** @@ -2568,7 +2568,7 @@ export namespace compute_beta { */ storageType?: string | null; /** - * URL of the disk type resource describing which disk type to use to create the disk. Provide this when creating the disk. For example: projects/project /zones/zone/diskTypes/pd-standard or pd-ssd + * URL of the disk type resource describing which disk type to use to create the disk. Provide this when creating the disk. For example: projects/project /zones/zone/diskTypes/pd-ssd . See Persistent disk types. */ type?: string | null; /** @@ -2680,7 +2680,7 @@ export namespace compute_beta { } export interface Schema$DisksAddResourcePoliciesRequest { /** - * Resource policies to be added to this disk. Currently you can only specify one policy here. + * Full or relative path to the resource policy to be added to this disk. You can only specify one resource policy. */ resourcePolicies?: string[] | null; } @@ -2968,7 +2968,7 @@ export namespace compute_beta { */ id?: string | null; /** - * List of interfaces for this external VPN gateway. If your peer-side gateway is an on-premises gateway and non-AWS cloud providers’ gateway, at most two interfaces can be provided for an external VPN gateway. If your peer side is an AWS virtual private gateway, four interfaces should be provided for an external VPN gateway. + * List of interfaces for this external VPN gateway. If your peer-side gateway is an on-premises gateway and non-AWS cloud providers' gateway, at most two interfaces can be provided for an external VPN gateway. If your peer side is an AWS virtual private gateway, four interfaces should be provided for an external VPN gateway. */ interfaces?: Schema$ExternalVpnGatewayInterface[]; /** @@ -3693,7 +3693,7 @@ export namespace compute_beta { */ kind?: string | null; /** - * The path to be queried. This can be the default namespace ('/') or a nested namespace ('/\/') or a specified key ('/\/\') + * The path to be queried. This can be the default namespace ('') or a nested namespace ('\/') or a specified key ('\/\'). */ queryPath?: string | null; /** @@ -3911,7 +3911,7 @@ export namespace compute_beta { */ healthChecks?: string[] | null; /** - * Optional. Policy for how the results from multiple health checks for the same endpoint are aggregated. Defaults to NO_AGGREGATION if unspecified. - NO_AGGREGATION. An EndpointHealth message is returned for each backend in the health check service. - AND. If any backend's health check reports UNHEALTHY, then UNHEALTHY is the HealthState of the entire health check service. If all backend's are healthy, the HealthState of the health check service is HEALTHY. . + * Optional. Policy for how the results from multiple health checks for the same endpoint are aggregated. Defaults to NO_AGGREGATION if unspecified. - NO_AGGREGATION. An EndpointHealth message is returned for each pair in the health check service. - AND. If any health check of an endpoint reports UNHEALTHY, then UNHEALTHY is the HealthState of the endpoint. If all health checks report HEALTHY, the HealthState of the endpoint is HEALTHY. . */ healthStatusAggregationPolicy?: string | null; /** @@ -4412,7 +4412,7 @@ export namespace compute_beta { */ perTryTimeout?: Schema$Duration; /** - * Specifies one or more conditions when this retry rule applies. Valid values are: - 5xx: Loadbalancer will attempt a retry if the backend service responds with any 5xx response code, or if the backend service does not respond at all, example: disconnects, reset, read timeout, connection failure, and refused streams. - gateway-error: Similar to 5xx, but only applies to response codes 502, 503 or 504. - - connect-failure: Loadbalancer will retry on failures connecting to backend services, for example due to connection timeouts. - retriable-4xx: Loadbalancer will retry for retriable 4xx response codes. Currently the only retriable error supported is 409. - refused-stream:Loadbalancer will retry if the backend service resets the stream with a REFUSED_STREAM error code. This reset type indicates that it is safe to retry. - cancelledLoadbalancer will retry if the gRPC status code in the response header is set to cancelled - deadline-exceeded: Loadbalancer will retry if the gRPC status code in the response header is set to deadline-exceeded - resource-exhausted: Loadbalancer will retry if the gRPC status code in the response header is set to resource-exhausted - unavailable: Loadbalancer will retry if the gRPC status code in the response header is set to unavailable + * Specifies one or more conditions when this retry policy applies. Valid values are: - 5xx: Retry will be attempted if the instance or endpoint responds with any 5xx response code, or if the instance or endpoint does not respond at all, example: disconnects, reset, read timeout, connection failure, and refused streams. - gateway-error: Similar to 5xx, but only applies to response codes 502, 503 or 504. - - connect-failure: A retry will be attempted on failures connecting to the instance or endpoint, for example due to connection timeouts. - retriable-4xx: A retry will be attempted if the instance or endpoint responds with a retriable 4xx response code. Currently the only retriable error supported is 409. - refused-stream: A retry will be attempted if the instance or endpoint resets the stream with a REFUSED_STREAM error code. This reset type indicates that it is safe to retry. - cancelled: A retry will be attempted if the gRPC status code in the response header is set to cancelled. - deadline-exceeded: A retry will be attempted if the gRPC status code in the response header is set to deadline-exceeded. - internal: A retry will be attempted if the gRPC status code in the response header is set to internal. - resource-exhausted: A retry will be attempted if the gRPC status code in the response header is set to resource-exhausted. - unavailable: A retry will be attempted if the gRPC status code in the response header is set to unavailable. */ retryConditions?: string[] | null; } @@ -5169,7 +5169,7 @@ export namespace compute_beta { } | null; } /** - * Whether the instance is a standby. # Properties of a standby instance comparing to the regular instance: # | regular | standby managed by IGM? | yes | yes added to the IG? | yes | yes counts towards IGM's target size? | yes | no taken into account by Autoscaler? | yes | no # receives traffic from LB? | yes | no Represents a Managed Instance Group resource. An instance group is a collection of VM instances that you can manage as a single entity. For more information, read Instance groups. For zonal Managed Instance Group, use the instanceGroupManagers resource. For regional Managed Instance Group, use the regionInstanceGroupManagers resource. + * Represents a Managed Instance Group resource. An instance group is a collection of VM instances that you can manage as a single entity. For more information, read Instance groups. For zonal Managed Instance Group, use the instanceGroupManagers resource. For regional Managed Instance Group, use the regionInstanceGroupManagers resource. */ export interface Schema$InstanceGroupManager { /** @@ -11542,6 +11542,10 @@ export namespace compute_beta { * Denotes whether to enable logging for a particular rule. If logging is enabled, logs will be exported to the configured export destination in Stackdriver. Logs may be exported to BigQuery or Pub/Sub. Note: you cannot enable logging on "goto_next" rules. This field may only be specified when the versioned_expr is set to FIREWALL. */ enableLogging?: boolean | null; + /** + * Optional, additional actions that are performed on headers. + */ + headerAction?: Schema$SecurityPolicyRuleHttpHeaderAction; /** * [Output only] Type of the resource. Always compute#securityPolicyRule for security policy rules */ @@ -11558,6 +11562,10 @@ export namespace compute_beta { * An integer indicating the priority of a rule in the list. The priority must be a positive value between 0 and 2147483647. Rules are evaluated from highest to lowest priority where 0 is the highest priority and 2147483647 is the lowest priority. */ priority?: number | null; + /** + * Parameters defining the redirect action. Cannot be specified for any other actions. + */ + redirectOptions?: Schema$SecurityPolicyRuleRedirectOptions; /** * Identifier for the rule. This is only unique within the given security policy. This can only be set during rule creation, if rule number is not specified it will be generated by the server. */ @@ -11575,6 +11583,22 @@ export namespace compute_beta { */ targetServiceAccounts?: string[] | null; } + export interface Schema$SecurityPolicyRuleHttpHeaderAction { + /** + * The list of request headers to add or overwrite if they're already present. + */ + requestHeadersToAdds?: Schema$SecurityPolicyRuleHttpHeaderActionHttpHeaderOption[]; + } + export interface Schema$SecurityPolicyRuleHttpHeaderActionHttpHeaderOption { + /** + * The name of the header to set. + */ + headerName?: string | null; + /** + * The value to set the named header to. + */ + headerValue?: string | null; + } /** * Represents a match condition that incoming traffic is evaluated against. Exactly one field must be specified. */ @@ -11616,6 +11640,16 @@ export namespace compute_beta { */ ports?: string[] | null; } + export interface Schema$SecurityPolicyRuleRedirectOptions { + /** + * Target for the redirect action. This is required if the type is EXTERNAL_302 and cannot be specified for GOOGLE_RECAPTCHA. + */ + target?: string | null; + /** + * Type of the redirect action. + */ + type?: string | null; + } /** * The authentication and authorization settings for a BackendService. */ @@ -77835,10 +77869,12 @@ export namespace compute_beta { * // "description": "my_description", * // "direction": "my_direction", * // "enableLogging": false, + * // "headerAction": {}, * // "kind": "my_kind", * // "match": {}, * // "preview": false, * // "priority": 0, + * // "redirectOptions": {}, * // "ruleNumber": "my_ruleNumber", * // "ruleTupleCount": 0, * // "targetResources": [], @@ -78624,10 +78660,12 @@ export namespace compute_beta { * // "description": "my_description", * // "direction": "my_direction", * // "enableLogging": false, + * // "headerAction": {}, * // "kind": "my_kind", * // "match": {}, * // "preview": false, * // "priority": 0, + * // "redirectOptions": {}, * // "ruleNumber": "my_ruleNumber", * // "ruleTupleCount": 0, * // "targetResources": [], @@ -79589,10 +79627,12 @@ export namespace compute_beta { * // "description": "my_description", * // "direction": "my_direction", * // "enableLogging": false, + * // "headerAction": {}, * // "kind": "my_kind", * // "match": {}, * // "preview": false, * // "priority": 0, + * // "redirectOptions": {}, * // "ruleNumber": "my_ruleNumber", * // "ruleTupleCount": 0, * // "targetResources": [], @@ -89206,7 +89246,7 @@ export namespace compute_beta { } /** - * Retrieves an aggregated list of commitments. + * Retrieves an aggregated list of commitments by region. * @example * ```js * // Before running the sample: @@ -114640,10 +114680,12 @@ export namespace compute_beta { * // "description": "my_description", * // "direction": "my_direction", * // "enableLogging": false, + * // "headerAction": {}, * // "kind": "my_kind", * // "match": {}, * // "preview": false, * // "priority": 0, + * // "redirectOptions": {}, * // "ruleNumber": "my_ruleNumber", * // "ruleTupleCount": 0, * // "targetResources": [], @@ -115133,10 +115175,12 @@ export namespace compute_beta { * // "description": "my_description", * // "direction": "my_direction", * // "enableLogging": false, + * // "headerAction": {}, * // "kind": "my_kind", * // "match": {}, * // "preview": false, * // "priority": 0, + * // "redirectOptions": {}, * // "ruleNumber": "my_ruleNumber", * // "ruleTupleCount": 0, * // "targetResources": [], @@ -115961,10 +116005,12 @@ export namespace compute_beta { * // "description": "my_description", * // "direction": "my_direction", * // "enableLogging": false, + * // "headerAction": {}, * // "kind": "my_kind", * // "match": {}, * // "preview": false, * // "priority": 0, + * // "redirectOptions": {}, * // "ruleNumber": "my_ruleNumber", * // "ruleTupleCount": 0, * // "targetResources": [], diff --git a/src/apis/compute/v1.ts b/src/apis/compute/v1.ts index e5c328a3f6a..46253e5d9c3 100644 --- a/src/apis/compute/v1.ts +++ b/src/apis/compute/v1.ts @@ -180,6 +180,7 @@ export namespace compute_v1 { routers: Resource$Routers; routes: Resource$Routes; securityPolicies: Resource$Securitypolicies; + serviceAttachments: Resource$Serviceattachments; snapshots: Resource$Snapshots; sslCertificates: Resource$Sslcertificates; sslPolicies: Resource$Sslpolicies; @@ -299,6 +300,7 @@ export namespace compute_v1 { this.routers = new Resource$Routers(this.context); this.routes = new Resource$Routes(this.context); this.securityPolicies = new Resource$Securitypolicies(this.context); + this.serviceAttachments = new Resource$Serviceattachments(this.context); this.snapshots = new Resource$Snapshots(this.context); this.sslCertificates = new Resource$Sslcertificates(this.context); this.sslPolicies = new Resource$Sslpolicies(this.context); @@ -496,7 +498,7 @@ export namespace compute_v1 { type?: string | null; } /** - * Use global external addresses for GFE-based external HTTP(S) load balancers in Premium Tier. Use global internal addresses for reserved peering network range. Use regional external addresses for the following resources: - External IP addresses for VM instances - Regional external forwarding rules - Cloud NAT external IP addresses - GFE based LBs in Standard Tier - Network LBs in Premium or Standard Tier - Cloud VPN gateways (both Classic and HA) Use regional internal IP addresses for subnet IP ranges (primary and secondary). This includes: - Internal IP addresses for VM instances - Alias IP ranges of VM instances (/32 only) - Regional internal forwarding rules - Internal TCP/UDP load balancer addresses - Internal HTTP(S) load balancer addresses - Cloud DNS inbound forwarding IP addresses For more information, read reserved IP address. + * Use global external addresses for GFE-based external HTTP(S) load balancers in Premium Tier. Use global internal addresses for reserved peering network range. Use regional external addresses for the following resources: - External IP addresses for VM instances - Regional external forwarding rules - Cloud NAT external IP addresses - GFE based LBs in Standard Tier - Network LBs in Premium or Standard Tier - Cloud VPN gateways (both Classic and HA) Use regional internal IP addresses for subnet IP ranges (primary and secondary). This includes: - Internal IP addresses for VM instances - Alias IP ranges of VM instances (/32 only) - Regional internal forwarding rules - Internal TCP/UDP load balancer addresses - Internal HTTP(S) load balancer addresses - Cloud DNS inbound forwarding IP addresses For more information, see Reserving a static external IP address. */ export interface Schema$Address { /** @@ -809,7 +811,7 @@ export namespace compute_v1 { */ diskSizeGb?: string | null; /** - * Specifies the disk type to use to create the instance. If not specified, the default is pd-standard, specified using the full URL. For example: https://www.googleapis.com/compute/v1/projects/project/zones/zone /diskTypes/pd-standard Other values include pd-ssd and local-ssd. If you define this field, you can provide either the full or partial URL. For example, the following are valid values: - https://www.googleapis.com/compute/v1/projects/project/zones/zone /diskTypes/diskType - projects/project/zones/zone/diskTypes/diskType - zones/zone/diskTypes/diskType Note that for InstanceTemplate, this is the name of the disk type, not URL. + * Specifies the disk type to use to create the instance. If not specified, the default is pd-standard, specified using the full URL. For example: https://www.googleapis.com/compute/v1/projects/project/zones/zone /diskTypes/pd-standard For a full list of acceptable values, see Persistent disk types. If you define this field, you can provide either the full or partial URL. For example, the following are valid values: - https://www.googleapis.com/compute/v1/projects/project/zones/zone /diskTypes/diskType - projects/project/zones/zone/diskTypes/diskType - zones/zone/diskTypes/diskType Note that for InstanceTemplate, this is the name of the disk type, not URL. */ diskType?: string | null; /** @@ -821,7 +823,7 @@ export namespace compute_v1 { */ onUpdateAction?: string | null; /** - * Indicates how many IOPS must be provisioned for the disk. + * Indicates how many IOPS to provision for the disk. This sets the number of I/O operations per second that the disk can handle. Values must be between 10,000 and 120,000. For more details, see the Extreme persistent disk documentation. */ provisionedIops?: string | null; /** @@ -1180,7 +1182,7 @@ export namespace compute_v1 { */ balancingMode?: string | null; /** - * A multiplier applied to the backend's target capacity of its balancing mode. The default value is 1, which means the group serves up to 100% of its configured capacity (depending on balancingMode). A setting of 0 means the group is completely drained, offering 0% of its available capacity. The valid ranges are 0.0 and [0.1,1.0]. You cannot configure a setting larger than 0 and smaller than 0.1. You cannot configure a setting of 0 when there is only one backend attached to the backend service. Not supported by: - Internal TCP/UDP Load Balancing - Network Load Balancing + * A multiplier applied to the backend's target capacity of its balancing mode. The default value is 1, which means the group serves up to 100% of its configured capacity (depending on balancingMode). A setting of 0 means the group is completely drained, offering 0% of its available capacity. The valid ranges are 0.0 and [0.1,1.0]. You cannot configure a setting larger than 0 and smaller than 0.1. You cannot configure a setting of 0 when there is only one backend attached to the backend service. */ capacityScaler?: number | null; /** @@ -1192,19 +1194,19 @@ export namespace compute_v1 { */ failover?: boolean | null; /** - * The fully-qualified URL of an instance group or network endpoint group (NEG) resource. The type of backend that a backend service supports depends on the backend service's loadBalancingScheme. - When the loadBalancingScheme for the backend service is EXTERNAL (except Network Load Balancing), INTERNAL_SELF_MANAGED, or INTERNAL_MANAGED , the backend can be either an instance group or a NEG. The backends on the backend service must be either all instance groups or all NEGs. You cannot mix instance group and NEG backends on the same backend service. - When the loadBalancingScheme for the backend service is EXTERNAL for Network Load Balancing or INTERNAL for Internal TCP/UDP Load Balancing, the backend must be an instance group. NEGs are not supported. For regional services, the backend must be in the same region as the backend service. You must use the *fully-qualified* URL (starting with https://www.googleapis.com/) to specify the instance group or NEG. Partial URLs are not supported. + * The fully-qualified URL of an instance group or network endpoint group (NEG) resource. To determine what types of backends a load balancer supports, see the [Backend services overview](https://cloud.google.com/load-balancing/docs/backend-service#backends). You must use the *fully-qualified* URL (starting with https://www.googleapis.com/) to specify the instance group or NEG. Partial URLs are not supported. */ group?: string | null; /** - * Defines a target maximum number of simultaneous connections. For usage guidelines, see Connection balancing mode and Utilization balancing mode. Not available if the backend's balancingMode is RATE. Not supported by: - Internal TCP/UDP Load Balancing - Network Load Balancing + * Defines a target maximum number of simultaneous connections. For usage guidelines, see Connection balancing mode and Utilization balancing mode. Not available if the backend's balancingMode is RATE. */ maxConnections?: number | null; /** - * Defines a target maximum number of simultaneous connections. For usage guidelines, see Connection balancing mode and Utilization balancing mode. Not available if the backend's balancingMode is RATE. Not supported by: - Internal TCP/UDP Load Balancing - Network Load Balancing. + * Defines a target maximum number of simultaneous connections. For usage guidelines, see Connection balancing mode and Utilization balancing mode. Not available if the backend's balancingMode is RATE. */ maxConnectionsPerEndpoint?: number | null; /** - * Defines a target maximum number of simultaneous connections. For usage guidelines, see Connection balancing mode and Utilization balancing mode. Not available if the backend's balancingMode is RATE. Not supported by: - Internal TCP/UDP Load Balancing - Network Load Balancing. + * Defines a target maximum number of simultaneous connections. For usage guidelines, see Connection balancing mode and Utilization balancing mode. Not available if the backend's balancingMode is RATE. */ maxConnectionsPerInstance?: number | null; /** @@ -1371,11 +1373,11 @@ export namespace compute_v1 { } | null; } /** - * Represents a Backend Service resource. A backend service defines how Google Cloud load balancers distribute traffic. The backend service configuration contains a set of values, such as the protocol used to connect to backends, various distribution and session settings, health checks, and timeouts. These settings provide fine-grained control over how your load balancer behaves. Most of the settings have default values that allow for easy configuration if you need to get started quickly. Backend services in Google Compute Engine can be either regionally or globally scoped. * [Global](/compute/docs/reference/rest/v1/backendServices) * [Regional](/compute/docs/reference/rest/v1/regionBackendServices) For more information, see Backend Services. + * Represents a Backend Service resource. A backend service defines how Google Cloud load balancers distribute traffic. The backend service configuration contains a set of values, such as the protocol used to connect to backends, various distribution and session settings, health checks, and timeouts. These settings provide fine-grained control over how your load balancer behaves. Most of the settings have default values that allow for easy configuration if you need to get started quickly. Backend services in Google Compute Engine can be either regionally or globally scoped. * [Global](https://cloud.google.com/compute/docs/reference/rest/v1/backendServices) * [Regional](https://cloud.google.com/compute/docs/reference/rest/v1/regionBackendServices) For more information, see Backend Services. */ export interface Schema$BackendService { /** - * Lifetime of cookies in seconds. Only applicable if the loadBalancingScheme is EXTERNAL, INTERNAL_SELF_MANAGED, or INTERNAL_MANAGED, the protocol is HTTP or HTTPS, and the sessionAffinity is GENERATED_COOKIE, or HTTP_COOKIE. If set to 0, the cookie is non-persistent and lasts only until the end of the browser session (or equivalent). The maximum allowed value is one day ( 86,400). Not supported when the backend service is referenced by a URL map that is bound to target gRPC proxy that has validateForProxyless field set to true. + * Lifetime of cookies in seconds. This setting is applicable to external and internal HTTP(S) load balancers and Traffic Director and requires GENERATED_COOKIE or HTTP_COOKIE session affinity. If set to 0, the cookie is non-persistent and lasts only until the end of the browser session (or equivalent). The maximum allowed value is one day (86,400). Not supported when the backend service is referenced by a URL map that is bound to target gRPC proxy that has validateForProxyless field set to true. */ affinityCookieTtlSec?: number | null; /** @@ -1383,7 +1385,7 @@ export namespace compute_v1 { */ backends?: Schema$Backend[]; /** - * Cloud CDN configuration for this BackendService. Only available for external HTTP(S) Load Balancing. + * Cloud CDN configuration for this BackendService. Only available for specified load balancer types. */ cdnPolicy?: Schema$BackendServiceCdnPolicy; circuitBreakers?: Schema$CircuitBreakers; @@ -1397,11 +1399,11 @@ export namespace compute_v1 { */ creationTimestamp?: string | null; /** - * Headers that the HTTP/S load balancer should add to proxied requests. + * Headers that the load balancer adds to proxied requests. See [Creating custom headers](https://cloud.google.com/load-balancing/docs/custom-headers). */ customRequestHeaders?: string[] | null; /** - * Headers that the HTTP/S load balancer should add to proxied responses. + * Headers that the load balancer adds to proxied responses. See [Creating custom headers](https://cloud.google.com/load-balancing/docs/custom-headers). */ customResponseHeaders?: string[] | null; /** @@ -1409,11 +1411,11 @@ export namespace compute_v1 { */ description?: string | null; /** - * If true, enables Cloud CDN for the backend service. Only applicable if the loadBalancingScheme is EXTERNAL and the protocol is HTTP or HTTPS. + * If true, enables Cloud CDN for the backend service of an external HTTP(S) load balancer. */ enableCDN?: boolean | null; /** - * Applicable only to Failover for Internal TCP/UDP Load Balancing and Network Load Balancing. Requires at least one backend instance group to be defined as a backup (failover) backend. + * Requires at least one backend instance group to be defined as a backup (failover) backend. For load balancers that have configurable failover: [Internal TCP/UDP Load Balancing](https://cloud.google.com/load-balancing/docs/internal/failover-overview) and [external TCP/UDP Load Balancing](/network/networklb-failover-overview). */ failoverPolicy?: Schema$BackendServiceFailoverPolicy; /** @@ -1437,7 +1439,7 @@ export namespace compute_v1 { */ kind?: string | null; /** - * Specifies the load balancer type. Choose EXTERNAL for external HTTP(S), SSL Proxy, TCP Proxy and Network Load Balancing. Choose INTERNAL for Internal TCP/UDP Load Balancing. Choose INTERNAL_MANAGED for Internal HTTP(S) Load Balancing. INTERNAL_SELF_MANAGED for Traffic Director. A backend service created for one type of load balancer cannot be used with another. For more information, refer to Choosing a load balancer. + * Specifies the load balancer type. A backend service created for one type of load balancer cannot be used with another. For more information, refer to Choosing a load balancer. */ loadBalancingScheme?: string | null; /** @@ -1465,15 +1467,15 @@ export namespace compute_v1 { */ outlierDetection?: Schema$OutlierDetection; /** - * Deprecated in favor of portName. The TCP port to connect on the backend. The default value is 80. Backend services for Internal TCP/UDP Load Balancing and Network Load Balancing require you omit port. + * Deprecated in favor of portName. The TCP port to connect on the backend. The default value is 80. For Internal TCP/UDP Load Balancing and Network Load Balancing, omit port. */ port?: number | null; /** - * A named port on a backend instance group representing the port for communication to the backend VMs in that group. Required when the loadBalancingScheme is EXTERNAL (except Network Load Balancing), INTERNAL_MANAGED, or INTERNAL_SELF_MANAGED and the backends are instance groups. The named port must be defined on each backend instance group. This parameter has no meaning if the backends are NEGs. Backend services for Internal TCP/UDP Load Balancing and Network Load Balancing require you omit port_name. + * A named port on a backend instance group representing the port for communication to the backend VMs in that group. The named port must be [defined on each backend instance group](https://cloud.google.com/load-balancing/docs/backend-service#named_ports). This parameter has no meaning if the backends are NEGs. For Internal TCP/UDP Load Balancing and Network Load Balancing, omit port_name. */ portName?: string | null; /** - * The protocol this BackendService uses to communicate with backends. Possible values are HTTP, HTTPS, HTTP2, TCP, SSL, UDP or GRPC. depending on the chosen load balancer or Traffic Director configuration. Refer to the documentation for the load balancer or for Traffic Director for more information. Must be set to GRPC when the backend service is referenced by a URL map that is bound to target gRPC proxy. + * The protocol this BackendService uses to communicate with backends. Possible values are HTTP, HTTPS, HTTP2, TCP, SSL, UDP or GRPC. depending on the chosen load balancer or Traffic Director configuration. Refer to the documentation for the load balancers or for Traffic Director for more information. Must be set to GRPC when the backend service is referenced by a URL map that is bound to target gRPC proxy. */ protocol?: string | null; /** @@ -1493,7 +1495,7 @@ export namespace compute_v1 { */ selfLink?: string | null; /** - * Type of session affinity to use. The default is NONE. When the loadBalancingScheme is EXTERNAL: * For Network Load Balancing, the possible values are NONE, CLIENT_IP, CLIENT_IP_PROTO, or CLIENT_IP_PORT_PROTO. * For all other load balancers that use loadBalancingScheme=EXTERNAL, the possible values are NONE, CLIENT_IP, or GENERATED_COOKIE. * You can use GENERATED_COOKIE if the protocol is HTTP, HTTP2, or HTTPS. When the loadBalancingScheme is INTERNAL, possible values are NONE, CLIENT_IP, CLIENT_IP_PROTO, or CLIENT_IP_PORT_PROTO. When the loadBalancingScheme is INTERNAL_SELF_MANAGED, or INTERNAL_MANAGED, possible values are NONE, CLIENT_IP, GENERATED_COOKIE, HEADER_FIELD, or HTTP_COOKIE. Not supported when the backend service is referenced by a URL map that is bound to target gRPC proxy that has validateForProxyless field set to true. + * Type of session affinity to use. The default is NONE. For a detailed description of session affinity options, see: [Session affinity](https://cloud.google.com/load-balancing/docs/backend-service#session_affinity). Not supported when the backend service is referenced by a URL map that is bound to target gRPC proxy that has validateForProxyless field set to true. */ sessionAffinity?: string | null; /** @@ -1614,7 +1616,7 @@ export namespace compute_v1 { ttl?: number | null; } /** - * Applicable only to Failover for Internal TCP/UDP Load Balancing and Network Load Balancing. On failover or failback, this field indicates whether connection draining will be honored. GCP has a fixed connection draining timeout of 10 minutes. A setting of true terminates existing TCP connections to the active pool during failover and failback, immediately draining traffic. A setting of false allows existing TCP connections to persist, even on VMs no longer in the active pool, for up to the duration of the connection draining timeout (10 minutes). + * For load balancers that have configurable failover: [Internal TCP/UDP Load Balancing](https://cloud.google.com/load-balancing/docs/internal/failover-overview) and [external TCP/UDP Load Balancing](/network/networklb-failover-overview). On failover or failback, this field indicates whether connection draining will be honored. Google Cloud has a fixed connection draining timeout of 10 minutes. A setting of true terminates existing TCP connections to the active pool during failover and failback, immediately draining traffic. A setting of false allows existing TCP connections to persist, even on VMs no longer in the active pool, for up to the duration of the connection draining timeout (10 minutes). */ export interface Schema$BackendServiceFailoverPolicy { /** @@ -1622,11 +1624,11 @@ export namespace compute_v1 { */ disableConnectionDrainOnFailover?: boolean | null; /** - * Applicable only to Failover for Internal TCP/UDP Load Balancing and Network Load Balancing, If set to true, connections to the load balancer are dropped when all primary and all backup backend VMs are unhealthy.If set to false, connections are distributed among all primary VMs when all primary and all backup backend VMs are unhealthy. The default is false. + * If set to true, connections to the load balancer are dropped when all primary and all backup backend VMs are unhealthy.If set to false, connections are distributed among all primary VMs when all primary and all backup backend VMs are unhealthy. For load balancers that have configurable failover: [Internal TCP/UDP Load Balancing](https://cloud.google.com/load-balancing/docs/internal/failover-overview) and [external TCP/UDP Load Balancing](/network/networklb-failover-overview). The default is false. */ dropTrafficIfUnhealthy?: boolean | null; /** - * Applicable only to Failover for Internal TCP/UDP Load Balancing and Network Load Balancing. The value of the field must be in the range [0, 1]. If the value is 0, the load balancer performs a failover when the number of healthy primary VMs equals zero. For all other values, the load balancer performs a failover when the total number of healthy primary VMs is less than this ratio. + * The value of the field must be in the range [0, 1]. If the value is 0, the load balancer performs a failover when the number of healthy primary VMs equals zero. For all other values, the load balancer performs a failover when the total number of healthy primary VMs is less than this ratio. For load balancers that have configurable failover: [Internal TCP/UDP Load Balancing](https://cloud.google.com/load-balancing/docs/internal/failover-overview) and [external TCP/UDP Load Balancing](/network/networklb-failover-overview). */ failoverRatio?: number | null; } @@ -1750,7 +1752,7 @@ export namespace compute_v1 { role?: string | null; } /** - * A transient resource used in compute.instances.bulkInsert and compute.regionInstances.bulkInsert and compute.regionInstances.recommendLocations. This resource is not persisted anywhere, it is used only for processing the requests. + * A transient resource used in compute.instances.bulkInsert and compute.regionInstances.bulkInsert . This resource is not persisted anywhere, it is used only for processing the requests. */ export interface Schema$BulkInsertInstanceResource { /** @@ -1770,7 +1772,7 @@ export namespace compute_v1 { */ minCount?: string | null; /** - * The string pattern used for the names of the VMs. Either name_pattern or per_instance_properties must be set. The pattern should contain one continuous sequence of placeholder hash characters (#) with each character corresponding to one digit of the generated instance name. Example: name_pattern of inst-#### will generate instance names such as inst-0001, inst-0002, ... . If there already exist instance(s) whose names match the name pattern in the same project and zone, then the generated instance numbers will start after the biggest existing number. For example, if there exists an instance with name inst-0050, then instance names generated using the pattern inst-#### will be inst-0051, inst-0052, etc. The name pattern placeholder # ...# can contain up to 18 characters. + * The string pattern used for the names of the VMs. Either name_pattern or per_instance_properties must be set. The pattern must contain one continuous sequence of placeholder hash characters (#) with each character corresponding to one digit of the generated instance name. Example: a name_pattern of inst-#### generates instance names such as inst-0001 and inst-0002. If existing instances in the same project and zone have names that match the name pattern then the generated instance numbers start after the biggest existing number. For example, if there exists an instance with name inst-0050, then instance names generated using the pattern inst-#### begin with inst-0051. The name pattern placeholder #...# can contain up to 18 characters. */ namePattern?: string | null; /** @@ -1826,7 +1828,7 @@ export namespace compute_v1 { queryStringWhitelist?: string[] | null; } /** - * Settings controlling the volume of connections to a backend service. + * Settings controlling the volume of requests, connections and retries to this backend service. */ export interface Schema$CircuitBreakers { /** @@ -2236,7 +2238,7 @@ export namespace compute_v1 { */ physicalBlockSizeBytes?: string | null; /** - * Indicates how many IOPS must be provisioned for the disk. + * Indicates how many IOPS to provision for the disk. This sets the number of I/O operations per second that the disk can handle. Values must be between 10,000 and 120,000. For more details, see the Extreme persistent disk documentation. */ provisionedIops?: string | null; /** @@ -2304,7 +2306,7 @@ export namespace compute_v1 { */ status?: string | null; /** - * URL of the disk type resource describing which disk type to use to create the disk. Provide this when creating the disk. For example: projects/project /zones/zone/diskTypes/pd-standard or pd-ssd + * URL of the disk type resource describing which disk type to use to create the disk. Provide this when creating the disk. For example: projects/project /zones/zone/diskTypes/pd-ssd . See Persistent disk types. */ type?: string | null; /** @@ -2416,7 +2418,7 @@ export namespace compute_v1 { } export interface Schema$DisksAddResourcePoliciesRequest { /** - * Resource policies to be added to this disk. Currently you can only specify one policy here. + * Full or relative path to the resource policy to be added to this disk. You can only specify one resource policy. */ resourcePolicies?: string[] | null; } @@ -2704,7 +2706,7 @@ export namespace compute_v1 { */ id?: string | null; /** - * List of interfaces for this external VPN gateway. If your peer-side gateway is an on-premises gateway and non-AWS cloud providers’ gateway, at most two interfaces can be provided for an external VPN gateway. If your peer side is an AWS virtual private gateway, four interfaces should be provided for an external VPN gateway. + * List of interfaces for this external VPN gateway. If your peer-side gateway is an on-premises gateway and non-AWS cloud providers' gateway, at most two interfaces can be provided for an external VPN gateway. If your peer side is an AWS virtual private gateway, four interfaces should be provided for an external VPN gateway. */ interfaces?: Schema$ExternalVpnGatewayInterface[]; /** @@ -3424,7 +3426,7 @@ export namespace compute_v1 { */ kind?: string | null; /** - * The path to be queried. This can be the default namespace ('/') or a nested namespace ('/\/') or a specified key ('/\/\') + * The path to be queried. This can be the default namespace ('') or a nested namespace ('\/') or a specified key ('\/\'). */ queryPath?: string | null; /** @@ -3642,7 +3644,7 @@ export namespace compute_v1 { */ healthChecks?: string[] | null; /** - * Optional. Policy for how the results from multiple health checks for the same endpoint are aggregated. Defaults to NO_AGGREGATION if unspecified. - NO_AGGREGATION. An EndpointHealth message is returned for each backend in the health check service. - AND. If any backend's health check reports UNHEALTHY, then UNHEALTHY is the HealthState of the entire health check service. If all backend's are healthy, the HealthState of the health check service is HEALTHY. . + * Optional. Policy for how the results from multiple health checks for the same endpoint are aggregated. Defaults to NO_AGGREGATION if unspecified. - NO_AGGREGATION. An EndpointHealth message is returned for each pair in the health check service. - AND. If any health check of an endpoint reports UNHEALTHY, then UNHEALTHY is the HealthState of the endpoint. If all health checks report HEALTHY, the HealthState of the endpoint is HEALTHY. . */ healthStatusAggregationPolicy?: string | null; /** @@ -4122,7 +4124,7 @@ export namespace compute_v1 { */ perTryTimeout?: Schema$Duration; /** - * Specifies one or more conditions when this retry rule applies. Valid values are: - 5xx: Loadbalancer will attempt a retry if the backend service responds with any 5xx response code, or if the backend service does not respond at all, example: disconnects, reset, read timeout, connection failure, and refused streams. - gateway-error: Similar to 5xx, but only applies to response codes 502, 503 or 504. - - connect-failure: Loadbalancer will retry on failures connecting to backend services, for example due to connection timeouts. - retriable-4xx: Loadbalancer will retry for retriable 4xx response codes. Currently the only retriable error supported is 409. - refused-stream:Loadbalancer will retry if the backend service resets the stream with a REFUSED_STREAM error code. This reset type indicates that it is safe to retry. - cancelledLoadbalancer will retry if the gRPC status code in the response header is set to cancelled - deadline-exceeded: Loadbalancer will retry if the gRPC status code in the response header is set to deadline-exceeded - resource-exhausted: Loadbalancer will retry if the gRPC status code in the response header is set to resource-exhausted - unavailable: Loadbalancer will retry if the gRPC status code in the response header is set to unavailable + * Specifies one or more conditions when this retry policy applies. Valid values are: - 5xx: Retry will be attempted if the instance or endpoint responds with any 5xx response code, or if the instance or endpoint does not respond at all, example: disconnects, reset, read timeout, connection failure, and refused streams. - gateway-error: Similar to 5xx, but only applies to response codes 502, 503 or 504. - - connect-failure: A retry will be attempted on failures connecting to the instance or endpoint, for example due to connection timeouts. - retriable-4xx: A retry will be attempted if the instance or endpoint responds with a retriable 4xx response code. Currently the only retriable error supported is 409. - refused-stream: A retry will be attempted if the instance or endpoint resets the stream with a REFUSED_STREAM error code. This reset type indicates that it is safe to retry. - cancelled: A retry will be attempted if the gRPC status code in the response header is set to cancelled. - deadline-exceeded: A retry will be attempted if the gRPC status code in the response header is set to deadline-exceeded. - internal: A retry will be attempted if the gRPC status code in the response header is set to internal. - resource-exhausted: A retry will be attempted if the gRPC status code in the response header is set to resource-exhausted. - unavailable: A retry will be attempted if the gRPC status code in the response header is set to unavailable. */ retryConditions?: string[] | null; } @@ -4840,7 +4842,7 @@ export namespace compute_v1 { } | null; } /** - * Whether the instance is a standby. # Properties of a standby instance comparing to the regular instance: # | regular | standby managed by IGM? | yes | yes added to the IG? | yes | yes counts towards IGM's target size? | yes | no taken into account by Autoscaler? | yes | no # receives traffic from LB? | yes | no Represents a Managed Instance Group resource. An instance group is a collection of VM instances that you can manage as a single entity. For more information, read Instance groups. For zonal Managed Instance Group, use the instanceGroupManagers resource. For regional Managed Instance Group, use the regionInstanceGroupManagers resource. + * Represents a Managed Instance Group resource. An instance group is a collection of VM instances that you can manage as a single entity. For more information, read Instance groups. For zonal Managed Instance Group, use the instanceGroupManagers resource. For regional Managed Instance Group, use the regionInstanceGroupManagers resource. */ export interface Schema$InstanceGroupManager { /** @@ -10636,6 +10638,7 @@ export namespace compute_v1 { * Represents a Google Cloud Armor security policy resource. Only external backend services that use load balancers can reference a security policy. For more information, see Google Cloud Armor security policy overview. */ export interface Schema$SecurityPolicy { + adaptiveProtectionConfig?: Schema$SecurityPolicyAdaptiveProtectionConfig; advancedOptionsConfig?: Schema$SecurityPolicyAdvancedOptionsConfig; /** * [Output Only] Creation timestamp in RFC3339 text format. @@ -10670,6 +10673,28 @@ export namespace compute_v1 { */ selfLink?: string | null; } + /** + * Configuration options for Cloud Armor Adaptive Protection (CAAP). + */ + export interface Schema$SecurityPolicyAdaptiveProtectionConfig { + /** + * If set to true, enables Cloud Armor Machine Learning. + */ + layer7DdosDefenseConfig?: Schema$SecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfig; + } + /** + * Configuration options for L7 DDoS detection. + */ + export interface Schema$SecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfig { + /** + * If set to true, enables CAAP for L7 DDoS detection. + */ + enable?: boolean | null; + /** + * Rule visibility can be one of the following: STANDARD - opaque rules. (default) PREMIUM - transparent rules. + */ + ruleVisibility?: string | null; + } export interface Schema$SecurityPolicyAdvancedOptionsConfig { jsonParsing?: string | null; logLevel?: string | null; @@ -10809,6 +10834,187 @@ export namespace compute_v1 { */ scopes?: string[] | null; } + /** + * Represents a ServiceAttachment resource. A service attachment represents a service that a producer has exposed. It encapsulates the load balancer which fronts the service runs and a list of NAT IP ranges that the producers uses to represent the consumers connecting to the service. next tag = 19 + */ + export interface Schema$ServiceAttachment { + /** + * [Output Only] An array of connections for all the consumers connected to this service attachment. + */ + connectedEndpoints?: Schema$ServiceAttachmentConnectedEndpoint[]; + /** + * The connection preference of service attachment. The value can be set to ACCEPT_AUTOMATIC. An ACCEPT_AUTOMATIC service attachment is one that always accepts the connection from consumer forwarding rules. + */ + connectionPreference?: string | null; + /** + * Projects that are allowed to connect to this service attachment. + */ + consumerAcceptLists?: Schema$ServiceAttachmentConsumerProjectLimit[]; + /** + * Projects that are not allowed to connect to this service attachment. The project can be specified using its id or number. + */ + consumerRejectLists?: string[] | null; + /** + * [Output Only] Creation timestamp in RFC3339 text format. + */ + creationTimestamp?: string | null; + /** + * An optional description of this resource. Provide this property when you create the resource. + */ + description?: string | null; + /** + * If true, enable the proxy protocol which is for supplying client TCP/IP address data in TCP connections that traverse proxies on their way to destination servers. + */ + enableProxyProtocol?: boolean | null; + /** + * Fingerprint of this resource. A hash of the contents stored in this object. This field is used in optimistic locking. This field will be ignored when inserting a ServiceAttachment. An up-to-date fingerprint must be provided in order to patch/update the ServiceAttachment; otherwise, the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make a get() request to retrieve the ServiceAttachment. + */ + fingerprint?: string | null; + /** + * [Output Only] The unique identifier for the resource type. The server generates this identifier. + */ + id?: string | null; + /** + * [Output Only] Type of the resource. Always compute#serviceAttachment for service attachments. + */ + kind?: string | null; + /** + * Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. + */ + name?: string | null; + /** + * An array of URLs where each entry is the URL of a subnet provided by the service producer to use for NAT in this service attachment. + */ + natSubnets?: string[] | null; + /** + * The URL of a forwarding rule with loadBalancingScheme INTERNAL* that is serving the endpoint identified by this service attachment. + */ + producerForwardingRule?: string | null; + /** + * [Output Only] An 128-bit global unique ID of the PSC service attachment. + */ + pscServiceAttachmentId?: Schema$Uint128; + /** + * [Output Only] URL of the region where the service attachment resides. This field applies only to the region resource. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body. + */ + region?: string | null; + /** + * [Output Only] Server-defined URL for the resource. + */ + selfLink?: string | null; + /** + * The URL of a service serving the endpoint identified by this service attachment. + */ + targetService?: string | null; + } + /** + * Contains a list of ServiceAttachmentsScopedList. + */ + export interface Schema$ServiceAttachmentAggregatedList { + /** + * [Output Only] Unique identifier for the resource; defined by the server. + */ + id?: string | null; + /** + * A list of ServiceAttachmentsScopedList resources. + */ + items?: {[key: string]: Schema$ServiceAttachmentsScopedList} | null; + /** + * Type of resource. + */ + kind?: string | null; + /** + * [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + */ + nextPageToken?: string | null; + /** + * [Output Only] Server-defined URL for this resource. + */ + selfLink?: string | null; + /** + * [Output Only] Unreachable resources. + */ + unreachables?: string[] | null; + /** + * [Output Only] Informational warning message. + */ + warning?: { + code?: string; + data?: Array<{key?: string; value?: string}>; + message?: string; + } | null; + } + /** + * [Output Only] A connection connected to this service attachment. + */ + export interface Schema$ServiceAttachmentConnectedEndpoint { + /** + * The url of a connected endpoint. + */ + endpoint?: string | null; + /** + * The PSC connection id of the connected endpoint. + */ + pscConnectionId?: string | null; + /** + * The status of a connected endpoint to this service attachment. + */ + status?: string | null; + } + export interface Schema$ServiceAttachmentConsumerProjectLimit { + /** + * The value of the limit to set. + */ + connectionLimit?: number | null; + /** + * The project id or number for the project to set the limit for. + */ + projectIdOrNum?: string | null; + } + export interface Schema$ServiceAttachmentList { + /** + * [Output Only] Unique identifier for the resource; defined by the server. + */ + id?: string | null; + /** + * A list of ServiceAttachment resources. + */ + items?: Schema$ServiceAttachment[]; + /** + * [Output Only] Type of the resource. Always compute#serviceAttachment for service attachments. + */ + kind?: string | null; + /** + * [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + */ + nextPageToken?: string | null; + /** + * [Output Only] Server-defined URL for this resource. + */ + selfLink?: string | null; + /** + * [Output Only] Informational warning message. + */ + warning?: { + code?: string; + data?: Array<{key?: string; value?: string}>; + message?: string; + } | null; + } + export interface Schema$ServiceAttachmentsScopedList { + /** + * A list of ServiceAttachments contained in this scope. + */ + serviceAttachments?: Schema$ServiceAttachment[]; + /** + * Informational warning which replaces the list of service attachments when the list is empty. + */ + warning?: { + code?: string; + data?: Array<{key?: string; value?: string}>; + message?: string; + } | null; + } /** * A set of Shielded Instance options. */ @@ -12606,6 +12812,10 @@ export namespace compute_v1 { */ permissions?: string[] | null; } + export interface Schema$Uint128 { + high?: string | null; + low?: string | null; + } /** * Represents a URL Map resource. Google Compute Engine has two URL Map resources: * [Global](/compute/docs/reference/rest/v1/urlMaps) * [Regional](/compute/docs/reference/rest/v1/regionUrlMaps) A URL map resource is a component of certain types of GCP load balancers and Traffic Director. * urlMaps are used by external HTTP(S) load balancers and Traffic Director. * regionUrlMaps are used by internal HTTP(S) load balancers. For a list of supported URL map features by load balancer type, see the Load balancing features: Routing and traffic management table. For a list of supported URL map features for Traffic Director, see the Traffic Director features: Routing and traffic management table. This resource defines mappings from host names and URL paths to either a backend service or a backend bucket. To use the global urlMaps resource, the backend service must have a loadBalancingScheme of either EXTERNAL or INTERNAL_SELF_MANAGED. To use the regionUrlMaps resource, the backend service must have a loadBalancingScheme of INTERNAL_MANAGED. For more information, read URL Map Concepts. */ @@ -76881,7 +77091,7 @@ export namespace compute_v1 { } /** - * Retrieves an aggregated list of commitments. + * Retrieves an aggregated list of commitments by region. * @example * ```js * // Before running the sample: @@ -99721,6 +99931,7 @@ export namespace compute_v1 { * * // Example response * // { + * // "adaptiveProtectionConfig": {}, * // "advancedOptionsConfig": {}, * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", @@ -100010,6 +100221,7 @@ export namespace compute_v1 { * requestBody: { * // request body parameters * // { + * // "adaptiveProtectionConfig": {}, * // "advancedOptionsConfig": {}, * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", @@ -100489,6 +100701,7 @@ export namespace compute_v1 { * requestBody: { * // request body parameters * // { + * // "adaptiveProtectionConfig": {}, * // "advancedOptionsConfig": {}, * // "creationTimestamp": "my_creationTimestamp", * // "description": "my_description", @@ -101140,6 +101353,1669 @@ export namespace compute_v1 { securityPolicy?: string; } + export class Resource$Serviceattachments { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Retrieves the list of all ServiceAttachment resources, regional and global, available to the specified project. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // `$ gcloud auth application-default login` + * // - Install the npm module by running: + * // `$ npm install googleapis` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.serviceAttachments.aggregatedList({ + * // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + * filter: 'placeholder-value', + * // Indicates whether every visible scope for each scope type (zone, region, global) should be included in the response. For new resource types added after this field, the flag has no effect as new resource types will always include every visible scope for each scope type in response. For resource types which predate this field, if this flag is omitted or false, only scopes of the scope types where the resource type is expected to be found will be included. + * includeAllScopes: 'placeholder-value', + * // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + * pageToken: 'placeholder-value', + * // Name of the project scoping this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + * returnPartialSuccess: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "id": "my_id", + * // "items": {}, + * // "kind": "my_kind", + * // "nextPageToken": "my_nextPageToken", + * // "selfLink": "my_selfLink", + * // "unreachables": [], + * // "warning": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + aggregatedList( + params: Params$Resource$Serviceattachments$Aggregatedlist, + options: StreamMethodOptions + ): GaxiosPromise; + aggregatedList( + params?: Params$Resource$Serviceattachments$Aggregatedlist, + options?: MethodOptions + ): GaxiosPromise; + aggregatedList( + params: Params$Resource$Serviceattachments$Aggregatedlist, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + aggregatedList( + params: Params$Resource$Serviceattachments$Aggregatedlist, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + aggregatedList( + params: Params$Resource$Serviceattachments$Aggregatedlist, + callback: BodyResponseCallback + ): void; + aggregatedList( + callback: BodyResponseCallback + ): void; + aggregatedList( + paramsOrCallback?: + | Params$Resource$Serviceattachments$Aggregatedlist + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | GaxiosPromise + | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Serviceattachments$Aggregatedlist; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Serviceattachments$Aggregatedlist; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/aggregated/serviceAttachments' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + }, + options + ), + params, + requiredParams: ['project'], + pathParams: ['project'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + + /** + * Deletes the specified ServiceAttachment in the given scope + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // `$ gcloud auth application-default login` + * // - Install the npm module by running: + * // `$ npm install googleapis` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.serviceAttachments.delete({ + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region of this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). end_interface: MixerMutationRequestBuilder + * requestId: 'placeholder-value', + * // Name of the ServiceAttachment resource to delete. + * serviceAttachment: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + delete( + params: Params$Resource$Serviceattachments$Delete, + options: StreamMethodOptions + ): GaxiosPromise; + delete( + params?: Params$Resource$Serviceattachments$Delete, + options?: MethodOptions + ): GaxiosPromise; + delete( + params: Params$Resource$Serviceattachments$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Serviceattachments$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Serviceattachments$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Serviceattachments$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Serviceattachments$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Serviceattachments$Delete; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/serviceAttachments/{serviceAttachment}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + }, + options + ), + params, + requiredParams: ['project', 'region', 'serviceAttachment'], + pathParams: ['project', 'region', 'serviceAttachment'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Returns the specified ServiceAttachment resource in the given scope. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // `$ gcloud auth application-default login` + * // - Install the npm module by running: + * // `$ npm install googleapis` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.serviceAttachments.get({ + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region of this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // Name of the ServiceAttachment resource to return. + * serviceAttachment: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "connectedEndpoints": [], + * // "connectionPreference": "my_connectionPreference", + * // "consumerAcceptLists": [], + * // "consumerRejectLists": [], + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "enableProxyProtocol": false, + * // "fingerprint": "my_fingerprint", + * // "id": "my_id", + * // "kind": "my_kind", + * // "name": "my_name", + * // "natSubnets": [], + * // "producerForwardingRule": "my_producerForwardingRule", + * // "pscServiceAttachmentId": {}, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "targetService": "my_targetService" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + get( + params: Params$Resource$Serviceattachments$Get, + options: StreamMethodOptions + ): GaxiosPromise; + get( + params?: Params$Resource$Serviceattachments$Get, + options?: MethodOptions + ): GaxiosPromise; + get( + params: Params$Resource$Serviceattachments$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Serviceattachments$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Serviceattachments$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Serviceattachments$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | GaxiosPromise + | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Serviceattachments$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Serviceattachments$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/serviceAttachments/{serviceAttachment}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + }, + options + ), + params, + requiredParams: ['project', 'region', 'serviceAttachment'], + pathParams: ['project', 'region', 'serviceAttachment'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Gets the access control policy for a resource. May be empty if no such policy or resource exists. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // `$ gcloud auth application-default login` + * // - Install the npm module by running: + * // `$ npm install googleapis` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.serviceAttachments.getIamPolicy({ + * // Requested IAM Policy version. + * optionsRequestedPolicyVersion: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // The name of the region for this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "auditConfigs": [], + * // "bindings": [], + * // "etag": "my_etag", + * // "iamOwned": false, + * // "rules": [], + * // "version": 0 + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + getIamPolicy( + params: Params$Resource$Serviceattachments$Getiampolicy, + options: StreamMethodOptions + ): GaxiosPromise; + getIamPolicy( + params?: Params$Resource$Serviceattachments$Getiampolicy, + options?: MethodOptions + ): GaxiosPromise; + getIamPolicy( + params: Params$Resource$Serviceattachments$Getiampolicy, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getIamPolicy( + params: Params$Resource$Serviceattachments$Getiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getIamPolicy( + params: Params$Resource$Serviceattachments$Getiampolicy, + callback: BodyResponseCallback + ): void; + getIamPolicy(callback: BodyResponseCallback): void; + getIamPolicy( + paramsOrCallback?: + | Params$Resource$Serviceattachments$Getiampolicy + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Serviceattachments$Getiampolicy; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Serviceattachments$Getiampolicy; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/serviceAttachments/{resource}/getIamPolicy' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + }, + options + ), + params, + requiredParams: ['project', 'region', 'resource'], + pathParams: ['project', 'region', 'resource'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Creates a ServiceAttachment in the specified project in the given scope using the parameters that are included in the request. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // `$ gcloud auth application-default login` + * // - Install the npm module by running: + * // `$ npm install googleapis` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.serviceAttachments.insert({ + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region of this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). end_interface: MixerMutationRequestBuilder + * requestId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "connectedEndpoints": [], + * // "connectionPreference": "my_connectionPreference", + * // "consumerAcceptLists": [], + * // "consumerRejectLists": [], + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "enableProxyProtocol": false, + * // "fingerprint": "my_fingerprint", + * // "id": "my_id", + * // "kind": "my_kind", + * // "name": "my_name", + * // "natSubnets": [], + * // "producerForwardingRule": "my_producerForwardingRule", + * // "pscServiceAttachmentId": {}, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "targetService": "my_targetService" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + insert( + params: Params$Resource$Serviceattachments$Insert, + options: StreamMethodOptions + ): GaxiosPromise; + insert( + params?: Params$Resource$Serviceattachments$Insert, + options?: MethodOptions + ): GaxiosPromise; + insert( + params: Params$Resource$Serviceattachments$Insert, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + insert( + params: Params$Resource$Serviceattachments$Insert, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + insert( + params: Params$Resource$Serviceattachments$Insert, + callback: BodyResponseCallback + ): void; + insert(callback: BodyResponseCallback): void; + insert( + paramsOrCallback?: + | Params$Resource$Serviceattachments$Insert + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Serviceattachments$Insert; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Serviceattachments$Insert; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/serviceAttachments' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + }, + options + ), + params, + requiredParams: ['project', 'region'], + pathParams: ['project', 'region'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Lists the ServiceAttachments for a project in the given scope. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // `$ gcloud auth application-default login` + * // - Install the npm module by running: + * // `$ npm install googleapis` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.serviceAttachments.list({ + * // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + * filter: 'placeholder-value', + * // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + * maxResults: 'placeholder-value', + * // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + * orderBy: 'placeholder-value', + * // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + * pageToken: 'placeholder-value', + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // Name of the region of this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + * returnPartialSuccess: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "id": "my_id", + * // "items": [], + * // "kind": "my_kind", + * // "nextPageToken": "my_nextPageToken", + * // "selfLink": "my_selfLink", + * // "warning": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + list( + params: Params$Resource$Serviceattachments$List, + options: StreamMethodOptions + ): GaxiosPromise; + list( + params?: Params$Resource$Serviceattachments$List, + options?: MethodOptions + ): GaxiosPromise; + list( + params: Params$Resource$Serviceattachments$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Serviceattachments$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Serviceattachments$List, + callback: BodyResponseCallback + ): void; + list(callback: BodyResponseCallback): void; + list( + paramsOrCallback?: + | Params$Resource$Serviceattachments$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | GaxiosPromise + | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Serviceattachments$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Serviceattachments$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/serviceAttachments' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + }, + options + ), + params, + requiredParams: ['project', 'region'], + pathParams: ['project', 'region'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Patches the specified ServiceAttachment resource with the data included in the request. This method supports PATCH semantics and uses JSON merge patch format and processing rules. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // `$ gcloud auth application-default login` + * // - Install the npm module by running: + * // `$ npm install googleapis` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.serviceAttachments.patch({ + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // The region scoping this request and should conform to RFC1035. + * region: 'placeholder-value', + * // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). end_interface: MixerMutationRequestBuilder + * requestId: 'placeholder-value', + * // The resource id of the ServiceAttachment to patch. It should conform to RFC1035 resource name or be a string form on an unsigned long number. + * serviceAttachment: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "connectedEndpoints": [], + * // "connectionPreference": "my_connectionPreference", + * // "consumerAcceptLists": [], + * // "consumerRejectLists": [], + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "enableProxyProtocol": false, + * // "fingerprint": "my_fingerprint", + * // "id": "my_id", + * // "kind": "my_kind", + * // "name": "my_name", + * // "natSubnets": [], + * // "producerForwardingRule": "my_producerForwardingRule", + * // "pscServiceAttachmentId": {}, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "targetService": "my_targetService" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientOperationId": "my_clientOperationId", + * // "creationTimestamp": "my_creationTimestamp", + * // "description": "my_description", + * // "endTime": "my_endTime", + * // "error": {}, + * // "httpErrorMessage": "my_httpErrorMessage", + * // "httpErrorStatusCode": 0, + * // "id": "my_id", + * // "insertTime": "my_insertTime", + * // "kind": "my_kind", + * // "name": "my_name", + * // "operationGroupId": "my_operationGroupId", + * // "operationType": "my_operationType", + * // "progress": 0, + * // "region": "my_region", + * // "selfLink": "my_selfLink", + * // "startTime": "my_startTime", + * // "status": "my_status", + * // "statusMessage": "my_statusMessage", + * // "targetId": "my_targetId", + * // "targetLink": "my_targetLink", + * // "user": "my_user", + * // "warnings": [], + * // "zone": "my_zone" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + patch( + params: Params$Resource$Serviceattachments$Patch, + options: StreamMethodOptions + ): GaxiosPromise; + patch( + params?: Params$Resource$Serviceattachments$Patch, + options?: MethodOptions + ): GaxiosPromise; + patch( + params: Params$Resource$Serviceattachments$Patch, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Serviceattachments$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Serviceattachments$Patch, + callback: BodyResponseCallback + ): void; + patch(callback: BodyResponseCallback): void; + patch( + paramsOrCallback?: + | Params$Resource$Serviceattachments$Patch + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Serviceattachments$Patch; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Serviceattachments$Patch; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/serviceAttachments/{serviceAttachment}' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + }, + options + ), + params, + requiredParams: ['project', 'region', 'serviceAttachment'], + pathParams: ['project', 'region', 'serviceAttachment'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Sets the access control policy on the specified resource. Replaces any existing policy. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // `$ gcloud auth application-default login` + * // - Install the npm module by running: + * // `$ npm install googleapis` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.serviceAttachments.setIamPolicy({ + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // The name of the region for this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "bindings": [], + * // "etag": "my_etag", + * // "policy": {} + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "auditConfigs": [], + * // "bindings": [], + * // "etag": "my_etag", + * // "iamOwned": false, + * // "rules": [], + * // "version": 0 + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + setIamPolicy( + params: Params$Resource$Serviceattachments$Setiampolicy, + options: StreamMethodOptions + ): GaxiosPromise; + setIamPolicy( + params?: Params$Resource$Serviceattachments$Setiampolicy, + options?: MethodOptions + ): GaxiosPromise; + setIamPolicy( + params: Params$Resource$Serviceattachments$Setiampolicy, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setIamPolicy( + params: Params$Resource$Serviceattachments$Setiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setIamPolicy( + params: Params$Resource$Serviceattachments$Setiampolicy, + callback: BodyResponseCallback + ): void; + setIamPolicy(callback: BodyResponseCallback): void; + setIamPolicy( + paramsOrCallback?: + | Params$Resource$Serviceattachments$Setiampolicy + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Serviceattachments$Setiampolicy; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Serviceattachments$Setiampolicy; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/serviceAttachments/{resource}/setIamPolicy' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + }, + options + ), + params, + requiredParams: ['project', 'region', 'resource'], + pathParams: ['project', 'region', 'resource'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Returns permissions that a caller has on the specified resource. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/compute.googleapis.com + * // - Login into gcloud by running: + * // `$ gcloud auth application-default login` + * // - Install the npm module by running: + * // `$ npm install googleapis` + * + * const {google} = require('googleapis'); + * const compute = google.compute('v1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: [ + * 'https://www.googleapis.com/auth/cloud-platform', + * 'https://www.googleapis.com/auth/compute', + * 'https://www.googleapis.com/auth/compute.readonly', + * ], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await compute.serviceAttachments.testIamPermissions({ + * // Project ID for this request. + * project: + * '(?:(?:[-a-z0-9]{1,63}.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))', + * // The name of the region for this request. + * region: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?', + * // Name or id of the resource for this request. + * resource: '[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "permissions": [] + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "permissions": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + testIamPermissions( + params: Params$Resource$Serviceattachments$Testiampermissions, + options: StreamMethodOptions + ): GaxiosPromise; + testIamPermissions( + params?: Params$Resource$Serviceattachments$Testiampermissions, + options?: MethodOptions + ): GaxiosPromise; + testIamPermissions( + params: Params$Resource$Serviceattachments$Testiampermissions, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + testIamPermissions( + params: Params$Resource$Serviceattachments$Testiampermissions, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + testIamPermissions( + params: Params$Resource$Serviceattachments$Testiampermissions, + callback: BodyResponseCallback + ): void; + testIamPermissions( + callback: BodyResponseCallback + ): void; + testIamPermissions( + paramsOrCallback?: + | Params$Resource$Serviceattachments$Testiampermissions + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | GaxiosPromise + | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Serviceattachments$Testiampermissions; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Serviceattachments$Testiampermissions; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://compute.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: ( + rootUrl + + '/compute/v1/projects/{project}/regions/{region}/serviceAttachments/{resource}/testIamPermissions' + ).replace(/([^:]\/)\/+/g, '$1'), + method: 'POST', + }, + options + ), + params, + requiredParams: ['project', 'region', 'resource'], + pathParams: ['project', 'region', 'resource'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + } + + export interface Params$Resource$Serviceattachments$Aggregatedlist + extends StandardParameters { + /** + * A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + */ + filter?: string; + /** + * Indicates whether every visible scope for each scope type (zone, region, global) should be included in the response. For new resource types added after this field, the flag has no effect as new resource types will always include every visible scope for each scope type in response. For resource types which predate this field, if this flag is omitted or false, only scopes of the scope types where the resource type is expected to be found will be included. + */ + includeAllScopes?: boolean; + /** + * The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + */ + pageToken?: string; + /** + * Name of the project scoping this request. + */ + project?: string; + /** + * Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + */ + returnPartialSuccess?: boolean; + } + export interface Params$Resource$Serviceattachments$Delete + extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region of this request. + */ + region?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). end_interface: MixerMutationRequestBuilder + */ + requestId?: string; + /** + * Name of the ServiceAttachment resource to delete. + */ + serviceAttachment?: string; + } + export interface Params$Resource$Serviceattachments$Get + extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region of this request. + */ + region?: string; + /** + * Name of the ServiceAttachment resource to return. + */ + serviceAttachment?: string; + } + export interface Params$Resource$Serviceattachments$Getiampolicy + extends StandardParameters { + /** + * Requested IAM Policy version. + */ + optionsRequestedPolicyVersion?: number; + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the region for this request. + */ + region?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + } + export interface Params$Resource$Serviceattachments$Insert + extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region of this request. + */ + region?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). end_interface: MixerMutationRequestBuilder + */ + requestId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$ServiceAttachment; + } + export interface Params$Resource$Serviceattachments$List + extends StandardParameters { + /** + * A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + */ + filter?: string; + /** + * The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + */ + maxResults?: number; + /** + * Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + */ + orderBy?: string; + /** + * Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + */ + pageToken?: string; + /** + * Project ID for this request. + */ + project?: string; + /** + * Name of the region of this request. + */ + region?: string; + /** + * Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + */ + returnPartialSuccess?: boolean; + } + export interface Params$Resource$Serviceattachments$Patch + extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * The region scoping this request and should conform to RFC1035. + */ + region?: string; + /** + * An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). end_interface: MixerMutationRequestBuilder + */ + requestId?: string; + /** + * The resource id of the ServiceAttachment to patch. It should conform to RFC1035 resource name or be a string form on an unsigned long number. + */ + serviceAttachment?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$ServiceAttachment; + } + export interface Params$Resource$Serviceattachments$Setiampolicy + extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the region for this request. + */ + region?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$RegionSetPolicyRequest; + } + export interface Params$Resource$Serviceattachments$Testiampermissions + extends StandardParameters { + /** + * Project ID for this request. + */ + project?: string; + /** + * The name of the region for this request. + */ + region?: string; + /** + * Name or id of the resource for this request. + */ + resource?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$TestPermissionsRequest; + } + export class Resource$Snapshots { context: APIRequestContext; constructor(context: APIRequestContext) { diff --git a/src/apis/container/v1.ts b/src/apis/container/v1.ts index b4e7faa8da7..8664736dfb5 100644 --- a/src/apis/container/v1.ts +++ b/src/apis/container/v1.ts @@ -583,6 +583,10 @@ export namespace container_v1 { * Configurations for the various addons available to run in the cluster. */ desiredAddonsConfig?: Schema$AddonsConfig; + /** + * The desired authenticator groups config for the cluster. + */ + desiredAuthenticatorGroupsConfig?: Schema$AuthenticatorGroupsConfig; /** * The desired Autopilot configuration for the cluster. */ diff --git a/src/apis/container/v1beta1.ts b/src/apis/container/v1beta1.ts index 9d820865b4b..5bcc13261d7 100644 --- a/src/apis/container/v1beta1.ts +++ b/src/apis/container/v1beta1.ts @@ -653,6 +653,10 @@ export namespace container_v1beta1 { * Configurations for the various addons available to run in the cluster. */ desiredAddonsConfig?: Schema$AddonsConfig; + /** + * AuthenticatorGroupsConfig specifies the config for the cluster security groups settings. + */ + desiredAuthenticatorGroupsConfig?: Schema$AuthenticatorGroupsConfig; /** * The desired Autopilot configuration for the cluster. */ diff --git a/src/apis/content/v2.1.ts b/src/apis/content/v2.1.ts index abd6303d8eb..2876a64796d 100644 --- a/src/apis/content/v2.1.ts +++ b/src/apis/content/v2.1.ts @@ -474,11 +474,11 @@ export namespace content_v2_1 { */ linkedAccountId?: string | null; /** - * Type of the link between the two accounts. Acceptable values are: - "`channelPartner`" - "`eCommercePlatform`" + * Type of the link between the two accounts. Acceptable values are: - "`channelPartner`" - "`eCommercePlatform`" - "`paymentServiceProvider`" */ linkType?: string | null; /** - * Provided services. Acceptable values are: - "`shoppingAdsProductManagement`" - "`shoppingActionsProductManagement`" - "`shoppingActionsOrderManagement`" + * Provided services. Acceptable values are: - "`shoppingAdsProductManagement`" - "`shoppingActionsProductManagement`" - "`shoppingActionsOrderManagement`" - "`paymentProcessing`" */ services?: string[] | null; } diff --git a/src/apis/dataproc/v1.ts b/src/apis/dataproc/v1.ts index 39c74fddf3a..a4b13315a27 100644 --- a/src/apis/dataproc/v1.ts +++ b/src/apis/dataproc/v1.ts @@ -178,7 +178,7 @@ export namespace dataproc_v1 { */ cooldownPeriod?: string | null; /** - * Required. YARN autoscaling configuration. + * Optional. YARN autoscaling configuration. */ yarnConfig?: Schema$BasicYarnAutoscalingConfig; } @@ -7002,7 +7002,7 @@ export namespace dataproc_v1 { } /** - * Updates a cluster in a project. The returned Operation.metadata will be ClusterOperationMetadata (https://cloud.google.com/dataproc/docs/reference/rpc/google.cloud.dataproc.v1#clusteroperationmetadata). + * Updates a cluster in a project. The returned Operation.metadata will be ClusterOperationMetadata (https://cloud.google.com/dataproc/docs/reference/rpc/google.cloud.dataproc.v1#clusteroperationmetadata). The cluster must be in a RUNNING state or an error is returned. * @example * ```js * // Before running the sample: diff --git a/src/apis/dataproc/v1beta2.ts b/src/apis/dataproc/v1beta2.ts index 98552df1027..76402fe5b66 100644 --- a/src/apis/dataproc/v1beta2.ts +++ b/src/apis/dataproc/v1beta2.ts @@ -178,7 +178,7 @@ export namespace dataproc_v1beta2 { */ cooldownPeriod?: string | null; /** - * Required. YARN autoscaling configuration. + * Optional. YARN autoscaling configuration. */ yarnConfig?: Schema$BasicYarnAutoscalingConfig; } @@ -6929,7 +6929,7 @@ export namespace dataproc_v1beta2 { } /** - * Updates a cluster in a project. The returned Operation.metadata will be ClusterOperationMetadata (https://cloud.google.com/dataproc/docs/reference/rpc/google.cloud.dataproc.v1beta2#clusteroperationmetadata). + * Updates a cluster in a project. The returned Operation.metadata will be ClusterOperationMetadata (https://cloud.google.com/dataproc/docs/reference/rpc/google.cloud.dataproc.v1beta2#clusteroperationmetadata). The cluster must be in a RUNNING state or an error is returned. * @example * ```js * // Before running the sample: diff --git a/src/apis/dialogflow/v2.ts b/src/apis/dialogflow/v2.ts index eca514f8eb2..d92fd044325 100644 --- a/src/apis/dialogflow/v2.ts +++ b/src/apis/dialogflow/v2.ts @@ -4612,7 +4612,7 @@ export namespace dialogflow_v2 { */ export interface Schema$GoogleCloudDialogflowV2Environment { /** - * Required. The agent version loaded into this environment. Supported formats: - `projects//agent/versions/` - `projects//locations//agent/versions/` + * Optional. The agent version loaded into this environment. Supported formats: - `projects//agent/versions/` - `projects//locations//agent/versions/` */ agentVersion?: string | null; /** diff --git a/src/apis/dialogflow/v2beta1.ts b/src/apis/dialogflow/v2beta1.ts index e8881d7c8b1..e1996fb7198 100644 --- a/src/apis/dialogflow/v2beta1.ts +++ b/src/apis/dialogflow/v2beta1.ts @@ -3325,7 +3325,7 @@ export namespace dialogflow_v2beta1 { */ export interface Schema$GoogleCloudDialogflowV2beta1Environment { /** - * Required. The agent version loaded into this environment. Supported formats: - `projects//agent/versions/` - `projects//locations//agent/versions/` + * Optional. The agent version loaded into this environment. Supported formats: - `projects//agent/versions/` - `projects//locations//agent/versions/` */ agentVersion?: string | null; /** diff --git a/src/apis/firebaseappcheck/v1beta.ts b/src/apis/firebaseappcheck/v1beta.ts index b68d73fface..22e74b7a057 100644 --- a/src/apis/firebaseappcheck/v1beta.ts +++ b/src/apis/firebaseappcheck/v1beta.ts @@ -211,7 +211,7 @@ export namespace firebaseappcheck_v1beta { token?: string | null; } /** - * An app's DeviceCheck configuration object. This configuration is used by ExchangeDeviceCheckToken to validate device tokens issued to apps by DeviceCheck. + * An app's DeviceCheck configuration object. This configuration is used by ExchangeDeviceCheckToken to validate device tokens issued to apps by DeviceCheck. It also controls certain properties of the returned App Check token, such as its ttl. Note that the Team ID registered with your app is used as part of the validation process. Please register it via the Firebase Console or programmatically via the [Firebase Management Service](https://firebase.google.com/docs/projects/api/reference/rest/v1beta1/projects.iosApps/patch). */ export interface Schema$GoogleFirebaseAppcheckV1betaDeviceCheckConfig { /** @@ -266,7 +266,7 @@ export namespace firebaseappcheck_v1beta { keyId?: string | null; } /** - * Response message for ExchangeAppAttestAttestation + * Response message for ExchangeAppAttestAttestation and ExchangeAppAttestDebugAttestation */ export interface Schema$GoogleFirebaseAppcheckV1betaExchangeAppAttestAttestationResponse { /** @@ -392,7 +392,7 @@ export namespace firebaseappcheck_v1beta { keys?: Schema$GoogleFirebaseAppcheckV1betaPublicJwk[]; } /** - * An app's reCAPTCHA v3 configuration object. This configuration is used by ExchangeRecaptchaToken to validate reCAPTCHA tokens issued to apps by reCAPTCHA v3. + * An app's reCAPTCHA v3 configuration object. This configuration is used by ExchangeRecaptchaToken to validate reCAPTCHA tokens issued to apps by reCAPTCHA v3. It also controls certain properties of the returned App Check token, such as its ttl. */ export interface Schema$GoogleFirebaseAppcheckV1betaRecaptchaConfig { /** diff --git a/src/apis/gkehub/v1.ts b/src/apis/gkehub/v1.ts index 9a23568bb27..1c89d7575bb 100644 --- a/src/apis/gkehub/v1.ts +++ b/src/apis/gkehub/v1.ts @@ -604,7 +604,7 @@ export namespace gkehub_v1 { */ importToken?: string | null; /** - * Timestamp of when ACM last successfully synced the repo The time format is specified in https://golang.org/pkg/time/#Time.String This field is being deprecated. Use last_sync_time instead. (b/154053616) + * Deprecated: use last_sync_time instead. Timestamp of when ACM last successfully synced the repo The time format is specified in https://golang.org/pkg/time/#Time.String */ lastSync?: string | null; /** diff --git a/src/apis/gkehub/v1alpha.ts b/src/apis/gkehub/v1alpha.ts index 3326500c01e..786faa863bf 100644 --- a/src/apis/gkehub/v1alpha.ts +++ b/src/apis/gkehub/v1alpha.ts @@ -647,7 +647,7 @@ export namespace gkehub_v1alpha { */ importToken?: string | null; /** - * Timestamp of when ACM last successfully synced the repo The time format is specified in https://golang.org/pkg/time/#Time.String This field is being deprecated. Use last_sync_time instead. (b/154053616) + * Deprecated: use last_sync_time instead. Timestamp of when ACM last successfully synced the repo The time format is specified in https://golang.org/pkg/time/#Time.String */ lastSync?: string | null; /** diff --git a/src/apis/gkehub/v1beta.ts b/src/apis/gkehub/v1beta.ts index b65ab8fda21..9ade9b18098 100644 --- a/src/apis/gkehub/v1beta.ts +++ b/src/apis/gkehub/v1beta.ts @@ -622,7 +622,7 @@ export namespace gkehub_v1beta { */ importToken?: string | null; /** - * Timestamp of when ACM last successfully synced the repo The time format is specified in https://golang.org/pkg/time/#Time.String This field is being deprecated. Use last_sync_time instead. (b/154053616) + * Deprecated: use last_sync_time instead. Timestamp of when ACM last successfully synced the repo The time format is specified in https://golang.org/pkg/time/#Time.String */ lastSync?: string | null; /** diff --git a/src/apis/groupssettings/v1.ts b/src/apis/groupssettings/v1.ts index 4e34cf4f62b..c648ebb1c82 100644 --- a/src/apis/groupssettings/v1.ts +++ b/src/apis/groupssettings/v1.ts @@ -160,6 +160,10 @@ export namespace groupssettings_v1 { * When a message is rejected, this is text for the rejection notification sent to the message's author. By default, this property is empty and has no value in the API's response body. The maximum notification text size is 10,000 characters. Note: Requires sendMessageDenyNotification property to be true. */ defaultMessageDenyNotificationText?: string | null; + /** + * Default sender for members who can post messages as the group. Possible values are: - `DEFAULT_SELF`: By default messages will be sent from the user - `GROUP`: By default messages will be sent from the group + */ + default_sender?: string | null; /** * Description of the group. This property value may be an empty string if no group description has been entered. If entered, the maximum group description is no more than 300 characters. */ @@ -609,6 +613,7 @@ export namespace groupssettings_v1 { * // "customReplyTo": "my_customReplyTo", * // "customRolesEnabledForSettingsToBeMerged": "my_customRolesEnabledForSettingsToBeMerged", * // "defaultMessageDenyNotificationText": "my_defaultMessageDenyNotificationText", + * // "default_sender": "my_default_sender", * // "description": "my_description", * // "email": "my_email", * // "enableCollaborativeInbox": "my_enableCollaborativeInbox", @@ -797,6 +802,7 @@ export namespace groupssettings_v1 { * // "customReplyTo": "my_customReplyTo", * // "customRolesEnabledForSettingsToBeMerged": "my_customRolesEnabledForSettingsToBeMerged", * // "defaultMessageDenyNotificationText": "my_defaultMessageDenyNotificationText", + * // "default_sender": "my_default_sender", * // "description": "my_description", * // "email": "my_email", * // "enableCollaborativeInbox": "my_enableCollaborativeInbox", @@ -865,6 +871,7 @@ export namespace groupssettings_v1 { * // "customReplyTo": "my_customReplyTo", * // "customRolesEnabledForSettingsToBeMerged": "my_customRolesEnabledForSettingsToBeMerged", * // "defaultMessageDenyNotificationText": "my_defaultMessageDenyNotificationText", + * // "default_sender": "my_default_sender", * // "description": "my_description", * // "email": "my_email", * // "enableCollaborativeInbox": "my_enableCollaborativeInbox", @@ -1053,6 +1060,7 @@ export namespace groupssettings_v1 { * // "customReplyTo": "my_customReplyTo", * // "customRolesEnabledForSettingsToBeMerged": "my_customRolesEnabledForSettingsToBeMerged", * // "defaultMessageDenyNotificationText": "my_defaultMessageDenyNotificationText", + * // "default_sender": "my_default_sender", * // "description": "my_description", * // "email": "my_email", * // "enableCollaborativeInbox": "my_enableCollaborativeInbox", @@ -1121,6 +1129,7 @@ export namespace groupssettings_v1 { * // "customReplyTo": "my_customReplyTo", * // "customRolesEnabledForSettingsToBeMerged": "my_customRolesEnabledForSettingsToBeMerged", * // "defaultMessageDenyNotificationText": "my_defaultMessageDenyNotificationText", + * // "default_sender": "my_default_sender", * // "description": "my_description", * // "email": "my_email", * // "enableCollaborativeInbox": "my_enableCollaborativeInbox", diff --git a/src/apis/healthcare/v1.ts b/src/apis/healthcare/v1.ts index 8a834c99870..abcbc220c5c 100644 --- a/src/apis/healthcare/v1.ts +++ b/src/apis/healthcare/v1.ts @@ -631,7 +631,7 @@ export namespace healthcare_v1 { */ export interface Schema$ExportResourcesRequest { /** - * The BigQuery output destination. The Cloud Healthcare Service Agent requires two IAM roles on the BigQuery location: `roles/bigquery.dataEditor` and `roles/bigquery.jobUser`. The output is one BigQuery table per resource type. + * The BigQuery output destination. The Cloud Healthcare Service Agent requires two IAM roles on the BigQuery location: `roles/bigquery.dataEditor` and `roles/bigquery.jobUser`. The output is one BigQuery table per resource type. Note that unlike in FhirStore.StreamConfig.BigQueryDestination, BigQuery views will not be created by ExportResources. */ bigqueryDestination?: Schema$GoogleCloudHealthcareV1FhirBigQueryDestination; /** diff --git a/src/apis/healthcare/v1beta1.ts b/src/apis/healthcare/v1beta1.ts index 25f4984399e..2b06c1379cd 100644 --- a/src/apis/healthcare/v1beta1.ts +++ b/src/apis/healthcare/v1beta1.ts @@ -407,6 +407,19 @@ export namespace healthcare_v1beta1 { */ name?: string | null; } + /** + * Request to configure the search parameters for the specified FHIR store. + */ + export interface Schema$ConfigureSearchRequest { + /** + * The canonical URLs of the search parameters that are intended to be used for the FHIR store. See https://www.hl7.org/fhir/references.html#canonical for explanation on FHIR canonical urls + */ + canonicalUrls?: string[] | null; + /** + * If `validate_only` is set to true, the method will compile all the search parameters without actually setting the search config for the store and triggering the reindex. + */ + validateOnly?: boolean | null; + } /** * Represents a user's consent. */ @@ -905,7 +918,7 @@ export namespace healthcare_v1beta1 { */ export interface Schema$ExportResourcesRequest { /** - * The BigQuery output destination. The Cloud Healthcare Service Agent requires two IAM roles on the BigQuery location: `roles/bigquery.dataEditor` and `roles/bigquery.jobUser`. The output is one BigQuery table per resource type. + * The BigQuery output destination. The Cloud Healthcare Service Agent requires two IAM roles on the BigQuery location: `roles/bigquery.dataEditor` and `roles/bigquery.jobUser`. The output is one BigQuery table per resource type. Note that unlike in FhirStore.StreamConfig.BigQueryDestination, BigQuery views will not be created by ExportResources. */ bigqueryDestination?: Schema$GoogleCloudHealthcareV1beta1FhirBigQueryDestination; /** @@ -1005,6 +1018,10 @@ export namespace healthcare_v1beta1 { * If non-empty, publish all resource modifications of this FHIR store to this destination. The Pub/Sub message attributes contain a map with a string describing the action that has triggered the notification. For example, "action":"CreateResource". */ notificationConfig?: Schema$NotificationConfig; + /** + * Configuration for how FHIR resource can be searched. + */ + searchConfig?: Schema$SearchConfig; /** * A list of streaming configs that configure the destinations of streaming export for every resource mutation in this FHIR store. Each store is allowed to have up to 10 streaming configs. After a new config is added, the next resource mutation is streamed to the new location in addition to the existing ones. When a location is removed from the list, the server stops streaming to that location. Before adding a new config, you must add the required [`bigquery.dataEditor`](https://cloud.google.com/bigquery/docs/access-control#bigquery.dataEditor) role to your project's **Cloud Healthcare Service Agent** [service account](https://cloud.google.com/iam/docs/service-accounts). Some lag (typically on the order of dozens of seconds) is expected before the results show up in the streaming destination. */ @@ -2085,6 +2102,28 @@ export namespace healthcare_v1beta1 { */ error?: string | null; } + /** + * Contains the configuration for FHIR search. + */ + export interface Schema$SearchConfig { + /** + * A list of search parameters in this FHIR store that are used to configure this FHIR store. + */ + searchParameters?: Schema$SearchParameter[]; + } + /** + * Contains the versioned name and the URL for one SearchParameter. + */ + export interface Schema$SearchParameter { + /** + * The canonical url of the search parameter resource. + */ + canonicalUrl?: string | null; + /** + * The versioned name of the search parameter resource. The format is projects/{project-id\}/locations/{location\}/datasets/{dataset-id\}/fhirStores/{fhirStore-id\}/fhir/SearchParameter/{resource-id\}/_history/{version-id\} For fhir stores with disable_resource_versioning=true, the format is projects/{project-id\}/locations/{location\}/datasets/{dataset-id\}/fhirStores/{fhirStore-id\}/fhir/SearchParameter/{resource-id\}/ + */ + parameter?: string | null; + } /** * Request to search the resources in the specified FHIR store. */ @@ -16918,6 +16957,150 @@ export namespace healthcare_v1beta1 { ); } + /** + * Configure the search parameters for the FHIR store and reindex resources in the FHIR store according to the defined search parameters. The search parameters provided in this request will replace any previous search configuration. The target SearchParameter resources need to exist in the store before calling ConfigureSearch, otherwise an error will occur. This method returns an Operation that can be used to track the progress of the reindexing by calling GetOperation. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/healthcare.googleapis.com + * // - Login into gcloud by running: + * // `$ gcloud auth application-default login` + * // - Install the npm module by running: + * // `$ npm install googleapis` + * + * const {google} = require('googleapis'); + * const healthcare = google.healthcare('v1beta1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await healthcare.projects.locations.datasets.fhirStores.configureSearch({ + * // The name of the FHIR store to configure, in the format `projects/{project_id\}/locations/{location_id\}/datasets/{dataset_id\}/fhirStores/{fhir_store_id\}`. + * name: 'projects/my-project/locations/my-location/datasets/my-dataset/fhirStores/my-fhirStore', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "canonicalUrls": [], + * // "validateOnly": false + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + configureSearch( + params: Params$Resource$Projects$Locations$Datasets$Fhirstores$Configuresearch, + options: StreamMethodOptions + ): GaxiosPromise; + configureSearch( + params?: Params$Resource$Projects$Locations$Datasets$Fhirstores$Configuresearch, + options?: MethodOptions + ): GaxiosPromise; + configureSearch( + params: Params$Resource$Projects$Locations$Datasets$Fhirstores$Configuresearch, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + configureSearch( + params: Params$Resource$Projects$Locations$Datasets$Fhirstores$Configuresearch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + configureSearch( + params: Params$Resource$Projects$Locations$Datasets$Fhirstores$Configuresearch, + callback: BodyResponseCallback + ): void; + configureSearch(callback: BodyResponseCallback): void; + configureSearch( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Datasets$Fhirstores$Configuresearch + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Datasets$Fhirstores$Configuresearch; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Datasets$Fhirstores$Configuresearch; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = options.rootUrl || 'https://healthcare.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+name}:configureSearch').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + /** * Creates a new FHIR store within the parent dataset. * @example @@ -16961,6 +17144,7 @@ export namespace healthcare_v1beta1 { * // "labels": {}, * // "name": "my_name", * // "notificationConfig": {}, + * // "searchConfig": {}, * // "streamConfigs": [], * // "validationConfig": {}, * // "version": "my_version" @@ -16978,6 +17162,7 @@ export namespace healthcare_v1beta1 { * // "labels": {}, * // "name": "my_name", * // "notificationConfig": {}, + * // "searchConfig": {}, * // "streamConfigs": [], * // "validationConfig": {}, * // "version": "my_version" @@ -17533,6 +17718,7 @@ export namespace healthcare_v1beta1 { * // "labels": {}, * // "name": "my_name", * // "notificationConfig": {}, + * // "searchConfig": {}, * // "streamConfigs": [], * // "validationConfig": {}, * // "version": "my_version" @@ -18093,6 +18279,7 @@ export namespace healthcare_v1beta1 { * // "labels": {}, * // "name": "my_name", * // "notificationConfig": {}, + * // "searchConfig": {}, * // "streamConfigs": [], * // "validationConfig": {}, * // "version": "my_version" @@ -18110,6 +18297,7 @@ export namespace healthcare_v1beta1 { * // "labels": {}, * // "name": "my_name", * // "notificationConfig": {}, + * // "searchConfig": {}, * // "streamConfigs": [], * // "validationConfig": {}, * // "version": "my_version" @@ -18497,6 +18685,18 @@ export namespace healthcare_v1beta1 { } } + export interface Params$Resource$Projects$Locations$Datasets$Fhirstores$Configuresearch + extends StandardParameters { + /** + * The name of the FHIR store to configure, in the format `projects/{project_id\}/locations/{location_id\}/datasets/{dataset_id\}/fhirStores/{fhir_store_id\}`. + */ + name?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$ConfigureSearchRequest; + } export interface Params$Resource$Projects$Locations$Datasets$Fhirstores$Create extends StandardParameters { /** diff --git a/src/apis/index.ts b/src/apis/index.ts index c2ffef3d086..81e4a0f7c46 100644 --- a/src/apis/index.ts +++ b/src/apis/index.ts @@ -343,6 +343,10 @@ import { VERSIONS as networkmanagementVersions, networkmanagement, } from './networkmanagement'; +import { + VERSIONS as networksecurityVersions, + networksecurity, +} from './networksecurity'; import {VERSIONS as notebooksVersions, notebooks} from './notebooks'; import {VERSIONS as oauth2Versions, oauth2} from './oauth2'; import { @@ -669,6 +673,7 @@ export const APIS: APIList = { mybusinessplaceactions: mybusinessplaceactionsVersions, networkconnectivity: networkconnectivityVersions, networkmanagement: networkmanagementVersions, + networksecurity: networksecurityVersions, notebooks: notebooksVersions, oauth2: oauth2Versions, ondemandscanning: ondemandscanningVersions, @@ -892,6 +897,7 @@ export class GeneratedAPIs { mybusinessplaceactions = mybusinessplaceactions; networkconnectivity = networkconnectivity; networkmanagement = networkmanagement; + networksecurity = networksecurity; notebooks = notebooks; oauth2 = oauth2; ondemandscanning = ondemandscanning; diff --git a/src/apis/managedidentities/v1.ts b/src/apis/managedidentities/v1.ts index 4d18c02e806..3dc972afd4b 100644 --- a/src/apis/managedidentities/v1.ts +++ b/src/apis/managedidentities/v1.ts @@ -525,6 +525,10 @@ export namespace managedidentities_v1 { * The id of the node. This should be equal to SaasInstanceNode.node_id. */ nodeId?: string | null; + /** + * If present, this will override eligibility for the node coming from instance or exclusions for specified SLIs. + */ + perSliEligibility?: Schema$GoogleCloudSaasacceleratorManagementProvidersV1PerSliSloEligibility; } /** * PerSliSloEligibility is a mapping from an SLI name to eligibility. diff --git a/src/apis/managedidentities/v1alpha1.ts b/src/apis/managedidentities/v1alpha1.ts index df439b811a2..cb27408fc91 100644 --- a/src/apis/managedidentities/v1alpha1.ts +++ b/src/apis/managedidentities/v1alpha1.ts @@ -523,6 +523,10 @@ export namespace managedidentities_v1alpha1 { * The id of the node. This should be equal to SaasInstanceNode.node_id. */ nodeId?: string | null; + /** + * If present, this will override eligibility for the node coming from instance or exclusions for specified SLIs. + */ + perSliEligibility?: Schema$GoogleCloudSaasacceleratorManagementProvidersV1PerSliSloEligibility; } /** * PerSliSloEligibility is a mapping from an SLI name to eligibility. @@ -1432,9 +1436,13 @@ export namespace managedidentities_v1alpha1 { export class Resource$Projects$Locations$Global$Domains { context: APIRequestContext; + backups: Resource$Projects$Locations$Global$Domains$Backups; sqlIntegrations: Resource$Projects$Locations$Global$Domains$Sqlintegrations; constructor(context: APIRequestContext) { this.context = context; + this.backups = new Resource$Projects$Locations$Global$Domains$Backups( + this.context + ); this.sqlIntegrations = new Resource$Projects$Locations$Global$Domains$Sqlintegrations( this.context @@ -3794,6 +3802,483 @@ export namespace managedidentities_v1alpha1 { requestBody?: Schema$ValidateTrustRequest; } + export class Resource$Projects$Locations$Global$Domains$Backups { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Gets the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/managedidentities.googleapis.com + * // - Login into gcloud by running: + * // `$ gcloud auth application-default login` + * // - Install the npm module by running: + * // `$ npm install googleapis` + * + * const {google} = require('googleapis'); + * const managedidentities = google.managedidentities('v1alpha1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await managedidentities.projects.locations.global.domains.backups.getIamPolicy( + * { + * // Optional. The policy format version to be returned. Valid values are 0, 1, and 3. Requests specifying an invalid value will be rejected. Requests for policies with any conditional bindings must specify version 3. Policies without any conditional bindings may specify any valid value or leave the field unset. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies). + * 'options.requestedPolicyVersion': 'placeholder-value', + * // REQUIRED: The resource for which the policy is being requested. See the operation documentation for the appropriate value for this field. + * resource: + * 'projects/my-project/locations/global/domains/my-domain/backups/my-backup', + * } + * ); + * console.log(res.data); + * + * // Example response + * // { + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + getIamPolicy( + params: Params$Resource$Projects$Locations$Global$Domains$Backups$Getiampolicy, + options: StreamMethodOptions + ): GaxiosPromise; + getIamPolicy( + params?: Params$Resource$Projects$Locations$Global$Domains$Backups$Getiampolicy, + options?: MethodOptions + ): GaxiosPromise; + getIamPolicy( + params: Params$Resource$Projects$Locations$Global$Domains$Backups$Getiampolicy, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getIamPolicy( + params: Params$Resource$Projects$Locations$Global$Domains$Backups$Getiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getIamPolicy( + params: Params$Resource$Projects$Locations$Global$Domains$Backups$Getiampolicy, + callback: BodyResponseCallback + ): void; + getIamPolicy(callback: BodyResponseCallback): void; + getIamPolicy( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Global$Domains$Backups$Getiampolicy + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Global$Domains$Backups$Getiampolicy; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Global$Domains$Backups$Getiampolicy; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://managedidentities.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha1/{+resource}:getIamPolicy').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + }, + options + ), + params, + requiredParams: ['resource'], + pathParams: ['resource'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Sets the access control policy on the specified resource. Replaces any existing policy. Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED` errors. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/managedidentities.googleapis.com + * // - Login into gcloud by running: + * // `$ gcloud auth application-default login` + * // - Install the npm module by running: + * // `$ npm install googleapis` + * + * const {google} = require('googleapis'); + * const managedidentities = google.managedidentities('v1alpha1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await managedidentities.projects.locations.global.domains.backups.setIamPolicy( + * { + * // REQUIRED: The resource for which the policy is being specified. See the operation documentation for the appropriate value for this field. + * resource: + * 'projects/my-project/locations/global/domains/my-domain/backups/my-backup', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "policy": {} + * // } + * }, + * } + * ); + * console.log(res.data); + * + * // Example response + * // { + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + setIamPolicy( + params: Params$Resource$Projects$Locations$Global$Domains$Backups$Setiampolicy, + options: StreamMethodOptions + ): GaxiosPromise; + setIamPolicy( + params?: Params$Resource$Projects$Locations$Global$Domains$Backups$Setiampolicy, + options?: MethodOptions + ): GaxiosPromise; + setIamPolicy( + params: Params$Resource$Projects$Locations$Global$Domains$Backups$Setiampolicy, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setIamPolicy( + params: Params$Resource$Projects$Locations$Global$Domains$Backups$Setiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setIamPolicy( + params: Params$Resource$Projects$Locations$Global$Domains$Backups$Setiampolicy, + callback: BodyResponseCallback + ): void; + setIamPolicy(callback: BodyResponseCallback): void; + setIamPolicy( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Global$Domains$Backups$Setiampolicy + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Global$Domains$Backups$Setiampolicy; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Global$Domains$Backups$Setiampolicy; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://managedidentities.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha1/{+resource}:setIamPolicy').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + }, + options + ), + params, + requiredParams: ['resource'], + pathParams: ['resource'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Returns permissions that a caller has on the specified resource. If the resource does not exist, this will return an empty set of permissions, not a `NOT_FOUND` error. Note: This operation is designed to be used for building permission-aware UIs and command-line tools, not for authorization checking. This operation may "fail open" without warning. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/managedidentities.googleapis.com + * // - Login into gcloud by running: + * // `$ gcloud auth application-default login` + * // - Install the npm module by running: + * // `$ npm install googleapis` + * + * const {google} = require('googleapis'); + * const managedidentities = google.managedidentities('v1alpha1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await managedidentities.projects.locations.global.domains.backups.testIamPermissions( + * { + * // REQUIRED: The resource for which the policy detail is being requested. See the operation documentation for the appropriate value for this field. + * resource: + * 'projects/my-project/locations/global/domains/my-domain/backups/my-backup', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "permissions": [] + * // } + * }, + * } + * ); + * console.log(res.data); + * + * // Example response + * // { + * // "permissions": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + testIamPermissions( + params: Params$Resource$Projects$Locations$Global$Domains$Backups$Testiampermissions, + options: StreamMethodOptions + ): GaxiosPromise; + testIamPermissions( + params?: Params$Resource$Projects$Locations$Global$Domains$Backups$Testiampermissions, + options?: MethodOptions + ): GaxiosPromise; + testIamPermissions( + params: Params$Resource$Projects$Locations$Global$Domains$Backups$Testiampermissions, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + testIamPermissions( + params: Params$Resource$Projects$Locations$Global$Domains$Backups$Testiampermissions, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + testIamPermissions( + params: Params$Resource$Projects$Locations$Global$Domains$Backups$Testiampermissions, + callback: BodyResponseCallback + ): void; + testIamPermissions( + callback: BodyResponseCallback + ): void; + testIamPermissions( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Global$Domains$Backups$Testiampermissions + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | GaxiosPromise + | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Global$Domains$Backups$Testiampermissions; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Global$Domains$Backups$Testiampermissions; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://managedidentities.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1alpha1/{+resource}:testIamPermissions').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + }, + options + ), + params, + requiredParams: ['resource'], + pathParams: ['resource'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + } + + export interface Params$Resource$Projects$Locations$Global$Domains$Backups$Getiampolicy + extends StandardParameters { + /** + * Optional. The policy format version to be returned. Valid values are 0, 1, and 3. Requests specifying an invalid value will be rejected. Requests for policies with any conditional bindings must specify version 3. Policies without any conditional bindings may specify any valid value or leave the field unset. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies). + */ + 'options.requestedPolicyVersion'?: number; + /** + * REQUIRED: The resource for which the policy is being requested. See the operation documentation for the appropriate value for this field. + */ + resource?: string; + } + export interface Params$Resource$Projects$Locations$Global$Domains$Backups$Setiampolicy + extends StandardParameters { + /** + * REQUIRED: The resource for which the policy is being specified. See the operation documentation for the appropriate value for this field. + */ + resource?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$SetIamPolicyRequest; + } + export interface Params$Resource$Projects$Locations$Global$Domains$Backups$Testiampermissions + extends StandardParameters { + /** + * REQUIRED: The resource for which the policy detail is being requested. See the operation documentation for the appropriate value for this field. + */ + resource?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$TestIamPermissionsRequest; + } + export class Resource$Projects$Locations$Global$Domains$Sqlintegrations { context: APIRequestContext; constructor(context: APIRequestContext) { diff --git a/src/apis/networksecurity/README.md b/src/apis/networksecurity/README.md new file mode 100644 index 00000000000..980ea4ffd09 --- /dev/null +++ b/src/apis/networksecurity/README.md @@ -0,0 +1,28 @@ +Google Inc. logo + +# networksecurity + +> + +## Installation + +```sh +$ npm install @googleapis/networksecurity +``` + +## Usage +All documentation and usage information can be found on [GitHub](https://github.com/googleapis/google-api-nodejs-client). +Information on classes can be found in [Googleapis Documentation](https://googleapis.dev/nodejs/googleapis/latest/networksecurity/classes/Networksecurity.html). + +## License +This library is licensed under Apache 2.0. Full license text is available in [LICENSE](https://github.com/googleapis/google-api-nodejs-client/blob/master/LICENSE). + +## Contributing +We love contributions! Before submitting a Pull Request, it's always good to start with a new issue first. To learn more, see [CONTRIBUTING](https://github.com/google/google-api-nodejs-client/blob/master/.github/CONTRIBUTING.md). + +## Questions/problems? +* Ask your development related questions on [StackOverflow](http://stackoverflow.com/questions/tagged/google-api-nodejs-client). +* If you've found an bug/issue, please [file it on GitHub](https://github.com/googleapis/google-api-nodejs-client/issues). + + +*Crafted with ❤️ by the Google Node.js team* diff --git a/src/apis/networksecurity/index.ts b/src/apis/networksecurity/index.ts new file mode 100644 index 00000000000..ede4725079c --- /dev/null +++ b/src/apis/networksecurity/index.ts @@ -0,0 +1,48 @@ +// Copyright 2020 Google LLC +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +/*! THIS FILE IS AUTO-GENERATED */ + +import {AuthPlus, getAPI, GoogleConfigurable} from 'googleapis-common'; +import {networksecurity_v1beta1} from './v1beta1'; + +export const VERSIONS = { + v1beta1: networksecurity_v1beta1.Networksecurity, +}; + +export function networksecurity( + version: 'v1beta1' +): networksecurity_v1beta1.Networksecurity; +export function networksecurity( + options: networksecurity_v1beta1.Options +): networksecurity_v1beta1.Networksecurity; +export function networksecurity( + this: GoogleConfigurable, + versionOrOptions: 'v1beta1' | networksecurity_v1beta1.Options +) { + return getAPI('networksecurity', versionOrOptions, VERSIONS, this); +} + +const auth = new AuthPlus(); +export {auth}; +export {networksecurity_v1beta1}; +export { + AuthPlus, + GlobalOptions, + APIRequestContext, + GoogleConfigurable, + StreamMethodOptions, + GaxiosPromise, + MethodOptions, + BodyResponseCallback, +} from 'googleapis-common'; diff --git a/src/apis/networksecurity/package.json b/src/apis/networksecurity/package.json new file mode 100644 index 00000000000..cd1e095e842 --- /dev/null +++ b/src/apis/networksecurity/package.json @@ -0,0 +1,43 @@ +{ + "name": "@googleapis/networksecurity", + "version": "0.1.0", + "description": "networksecurity", + "main": "build/index.js", + "types": "build/index.d.ts", + "keywords": [ + "google" + ], + "author": "Google LLC", + "license": "Apache-2.0", + "homepage": "https://github.com/googleapis/google-api-nodejs-client", + "bugs": { + "url": "https://github.com/googleapis/google-api-nodejs-client/issues" + }, + "repository": { + "type": "git", + "url": "https://github.com/googleapis/google-api-nodejs-client.git" + }, + "engines": { + "node": ">=10.0.0" + }, + "scripts": { + "fix": "gts fix", + "lint": "gts check", + "compile": "tsc -p .", + "prepare": "npm run compile", + "webpack": "webpack" + }, + "dependencies": { + "googleapis-common": "^5.0.1" + }, + "devDependencies": { + "@microsoft/api-documenter": "^7.8.10", + "@microsoft/api-extractor": "^7.8.10", + "gts": "^2.0.0", + "null-loader": "^4.0.0", + "ts-loader": "^8.0.0", + "typescript": "~3.7.0", + "webpack": "^5.0.0", + "webpack-cli": "^4.0.0" + } +} diff --git a/src/apis/networksecurity/tsconfig.json b/src/apis/networksecurity/tsconfig.json new file mode 100644 index 00000000000..e0810904968 --- /dev/null +++ b/src/apis/networksecurity/tsconfig.json @@ -0,0 +1,10 @@ +{ + "extends": "./node_modules/gts/tsconfig-google.json", + "compilerOptions": { + "rootDir": ".", + "outDir": "build" + }, + "include": [ + "*.ts", + ] +} diff --git a/src/apis/networksecurity/v1beta1.ts b/src/apis/networksecurity/v1beta1.ts new file mode 100644 index 00000000000..14643761a44 --- /dev/null +++ b/src/apis/networksecurity/v1beta1.ts @@ -0,0 +1,5352 @@ +// Copyright 2020 Google LLC +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +/* eslint-disable @typescript-eslint/no-explicit-any */ +/* eslint-disable @typescript-eslint/class-name-casing */ +/* eslint-disable @typescript-eslint/no-unused-vars */ +/* eslint-disable @typescript-eslint/no-empty-interface */ +/* eslint-disable @typescript-eslint/no-namespace */ +/* eslint-disable no-irregular-whitespace */ + +import { + OAuth2Client, + JWT, + Compute, + UserRefreshClient, + BaseExternalAccountClient, + GaxiosPromise, + GoogleConfigurable, + createAPIRequest, + MethodOptions, + StreamMethodOptions, + GlobalOptions, + GoogleAuth, + BodyResponseCallback, + APIRequestContext, +} from 'googleapis-common'; +import {Readable} from 'stream'; + +export namespace networksecurity_v1beta1 { + export interface Options extends GlobalOptions { + version: 'v1beta1'; + } + + interface StandardParameters { + /** + * Auth client or API Key for the request + */ + auth?: + | string + | OAuth2Client + | JWT + | Compute + | UserRefreshClient + | BaseExternalAccountClient + | GoogleAuth; + + /** + * V1 error format. + */ + '$.xgafv'?: string; + /** + * OAuth access token. + */ + access_token?: string; + /** + * Data format for response. + */ + alt?: string; + /** + * JSONP + */ + callback?: string; + /** + * Selector specifying which fields to include in a partial response. + */ + fields?: string; + /** + * API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. + */ + key?: string; + /** + * OAuth 2.0 token for the current user. + */ + oauth_token?: string; + /** + * Returns response with indentations and line breaks. + */ + prettyPrint?: boolean; + /** + * Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. + */ + quotaUser?: string; + /** + * Legacy upload protocol for media (e.g. "media", "multipart"). + */ + uploadType?: string; + /** + * Upload protocol for media (e.g. "raw", "multipart"). + */ + upload_protocol?: string; + } + + /** + * Network Security API + * + * + * + * @example + * ```js + * const {google} = require('googleapis'); + * const networksecurity = google.networksecurity('v1beta1'); + * ``` + */ + export class Networksecurity { + context: APIRequestContext; + projects: Resource$Projects; + + constructor(options: GlobalOptions, google?: GoogleConfigurable) { + this.context = { + _options: options || {}, + google, + }; + + this.projects = new Resource$Projects(this.context); + } + } + + /** + * AuthorizationPolicy is a resource that specifies how a server should authorize incoming connections. This resource in itself does not change the configuration unless it's attached to a target https proxy or endpoint config selector resource. + */ + export interface Schema$AuthorizationPolicy { + /** + * Required. The action to take when a rule match is found. Possible values are "ALLOW" or "DENY". + */ + action?: string | null; + /** + * Output only. The timestamp when the resource was created. + */ + createTime?: string | null; + /** + * Optional. Free-text description of the resource. + */ + description?: string | null; + /** + * Optional. Set of label tags associated with the AuthorizationPolicy resource. + */ + labels?: {[key: string]: string} | null; + /** + * Required. Name of the AuthorizationPolicy resource. It matches pattern `projects/{project\}/locations/{location\}/authorizationPolicies/`. + */ + name?: string | null; + /** + * Optional. List of rules to match. Note that at least one of the rules must match in order for the action specified in the 'action' field to be taken. A rule is a match if there is a matching source and destination. If left blank, the action specified in the `action` field will be applied on every request. + */ + rules?: Schema$Rule[]; + /** + * Output only. The timestamp when the resource was updated. + */ + updateTime?: string | null; + } + /** + * The request message for Operations.CancelOperation. + */ + export interface Schema$CancelOperationRequest {} + /** + * Specification of a TLS certificate provider instance. Workloads may have one or more CertificateProvider instances (plugins) and one of them is enabled and configured by specifying this message. Workloads use the values from this message to locate and load the CertificateProvider instance configuration. + */ + export interface Schema$CertificateProviderInstance { + /** + * Required. Plugin instance name, used to locate and load CertificateProvider instance configuration. Set to "google_cloud_private_spiffe" to use Certificate Authority Service certificate provider instance. + */ + pluginInstance?: string | null; + } + /** + * ClientTlsPolicy is a resource that specifies how a client should authenticate connections to backends of a service. This resource itself does not affect configuration unless it is attached to a backend service resource. + */ + export interface Schema$ClientTlsPolicy { + /** + * Optional. Defines a mechanism to provision client identity (public and private keys) for peer to peer authentication. The presence of this dictates mTLS. + */ + clientCertificate?: Schema$GoogleCloudNetworksecurityV1beta1CertificateProvider; + /** + * Output only. The timestamp when the resource was created. + */ + createTime?: string | null; + /** + * Optional. Free-text description of the resource. + */ + description?: string | null; + /** + * Optional. Set of label tags associated with the resource. + */ + labels?: {[key: string]: string} | null; + /** + * Required. Name of the ClientTlsPolicy resource. It matches the pattern `projects/x/locations/{location\}/clientTlsPolicies/{client_tls_policy\}` + */ + name?: string | null; + /** + * Optional. Defines the mechanism to obtain the Certificate Authority certificate to validate the server certificate. If empty, client does not validate the server certificate. + */ + serverValidationCa?: Schema$ValidationCA[]; + /** + * Optional. Server Name Indication string to present to the server during TLS handshake. E.g: "secure.example.com". + */ + sni?: string | null; + /** + * Output only. The timestamp when the resource was updated. + */ + updateTime?: string | null; + } + /** + * Specification of traffic destination attributes. + */ + export interface Schema$Destination { + /** + * Required. List of host names to match. Matched against HOST header in http requests. At least one host should match. Each host can be an exact match, or a prefix match (example "mydomain.*") or a suffix match (example // *.myorg.com") or a presence(any) match "*". + */ + hosts?: string[] | null; + /** + * Optional. Match against key:value pair in http header. Provides a flexible match based on HTTP headers, for potentially advanced use cases. At least one header should match. + */ + httpHeaderMatch?: Schema$HttpHeaderMatch; + /** + * Optional. A list of HTTP methods to match. At least one method should match. Should not be set for gRPC services. + */ + methods?: string[] | null; + /** + * Required. List of destination ports to match. At least one port should match. + */ + ports?: number[] | null; + } + /** + * A generic empty message that you can re-use to avoid defining duplicated empty messages in your APIs. A typical example is to use it as the request or the response type of an API method. For instance: service Foo { rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty); \} The JSON representation for `Empty` is empty JSON object `{\}`. + */ + export interface Schema$Empty {} + /** + * Represents a textual expression in the Common Expression Language (CEL) syntax. CEL is a C-like expression language. The syntax and semantics of CEL are documented at https://github.com/google/cel-spec. Example (Comparison): title: "Summary size limit" description: "Determines if a summary is less than 100 chars" expression: "document.summary.size() < 100" Example (Equality): title: "Requestor is owner" description: "Determines if requestor is the document owner" expression: "document.owner == request.auth.claims.email" Example (Logic): title: "Public documents" description: "Determine whether the document should be publicly visible" expression: "document.type != 'private' && document.type != 'internal'" Example (Data Manipulation): title: "Notification string" description: "Create a notification string with a timestamp." expression: "'New message received at ' + string(document.create_time)" The exact variables and functions that may be referenced within an expression are determined by the service that evaluates it. See the service documentation for additional information. + */ + export interface Schema$Expr { + /** + * Optional. Description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI. + */ + description?: string | null; + /** + * Textual representation of an expression in Common Expression Language syntax. + */ + expression?: string | null; + /** + * Optional. String indicating the location of the expression for error reporting, e.g. a file name and a position in the file. + */ + location?: string | null; + /** + * Optional. Title for the expression, i.e. a short string describing its purpose. This can be used e.g. in UIs which allow to enter the expression. + */ + title?: string | null; + } + /** + * Specification of certificate provider. Defines the mechanism to obtain the certificate and private key for peer to peer authentication. + */ + export interface Schema$GoogleCloudNetworksecurityV1beta1CertificateProvider { + /** + * The certificate provider instance specification that will be passed to the data plane, which will be used to load necessary credential information. + */ + certificateProviderInstance?: Schema$CertificateProviderInstance; + /** + * gRPC specific configuration to access the gRPC server to obtain the cert and private key. + */ + grpcEndpoint?: Schema$GoogleCloudNetworksecurityV1beta1GrpcEndpoint; + } + /** + * Specification of the GRPC Endpoint. + */ + export interface Schema$GoogleCloudNetworksecurityV1beta1GrpcEndpoint { + /** + * Required. The target URI of the gRPC endpoint. Only UDS path is supported, and should start with “unix:”. + */ + targetUri?: string | null; + } + /** + * Specifies the audit configuration for a service. The configuration determines which permission types are logged, and what identities, if any, are exempted from logging. An AuditConfig must have one or more AuditLogConfigs. If there are AuditConfigs for both `allServices` and a specific service, the union of the two AuditConfigs is used for that service: the log_types specified in each AuditConfig are enabled, and the exempted_members in each AuditLogConfig are exempted. Example Policy with multiple AuditConfigs: { "audit_configs": [ { "service": "allServices", "audit_log_configs": [ { "log_type": "DATA_READ", "exempted_members": [ "user:jose@example.com" ] \}, { "log_type": "DATA_WRITE" \}, { "log_type": "ADMIN_READ" \} ] \}, { "service": "sampleservice.googleapis.com", "audit_log_configs": [ { "log_type": "DATA_READ" \}, { "log_type": "DATA_WRITE", "exempted_members": [ "user:aliya@example.com" ] \} ] \} ] \} For sampleservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ logging. It also exempts jose@example.com from DATA_READ logging, and aliya@example.com from DATA_WRITE logging. + */ + export interface Schema$GoogleIamV1AuditConfig { + /** + * The configuration for logging of each type of permission. + */ + auditLogConfigs?: Schema$GoogleIamV1AuditLogConfig[]; + /** + * Specifies a service that will be enabled for audit logging. For example, `storage.googleapis.com`, `cloudsql.googleapis.com`. `allServices` is a special value that covers all services. + */ + service?: string | null; + } + /** + * Provides the configuration for logging a type of permissions. Example: { "audit_log_configs": [ { "log_type": "DATA_READ", "exempted_members": [ "user:jose@example.com" ] \}, { "log_type": "DATA_WRITE" \} ] \} This enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting jose@example.com from DATA_READ logging. + */ + export interface Schema$GoogleIamV1AuditLogConfig { + /** + * Specifies the identities that do not cause logging for this type of permission. Follows the same format of Binding.members. + */ + exemptedMembers?: string[] | null; + /** + * The log type that this config enables. + */ + logType?: string | null; + } + /** + * Associates `members` with a `role`. + */ + export interface Schema$GoogleIamV1Binding { + /** + * The condition that is associated with this binding. If the condition evaluates to `true`, then this binding applies to the current request. If the condition evaluates to `false`, then this binding does not apply to the current request. However, a different role binding might grant the same role to one or more of the members in this binding. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies). + */ + condition?: Schema$Expr; + /** + * Specifies the identities requesting access for a Cloud Platform resource. `members` can have the following values: * `allUsers`: A special identifier that represents anyone who is on the internet; with or without a Google account. * `allAuthenticatedUsers`: A special identifier that represents anyone who is authenticated with a Google account or a service account. * `user:{emailid\}`: An email address that represents a specific Google account. For example, `alice@example.com` . * `serviceAccount:{emailid\}`: An email address that represents a service account. For example, `my-other-app@appspot.gserviceaccount.com`. * `group:{emailid\}`: An email address that represents a Google group. For example, `admins@example.com`. * `deleted:user:{emailid\}?uid={uniqueid\}`: An email address (plus unique identifier) representing a user that has been recently deleted. For example, `alice@example.com?uid=123456789012345678901`. If the user is recovered, this value reverts to `user:{emailid\}` and the recovered user retains the role in the binding. * `deleted:serviceAccount:{emailid\}?uid={uniqueid\}`: An email address (plus unique identifier) representing a service account that has been recently deleted. For example, `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`. If the service account is undeleted, this value reverts to `serviceAccount:{emailid\}` and the undeleted service account retains the role in the binding. * `deleted:group:{emailid\}?uid={uniqueid\}`: An email address (plus unique identifier) representing a Google group that has been recently deleted. For example, `admins@example.com?uid=123456789012345678901`. If the group is recovered, this value reverts to `group:{emailid\}` and the recovered group retains the role in the binding. * `domain:{domain\}`: The G Suite domain (primary) that represents all the users of that domain. For example, `google.com` or `example.com`. + */ + members?: string[] | null; + /** + * Role that is assigned to `members`. For example, `roles/viewer`, `roles/editor`, or `roles/owner`. + */ + role?: string | null; + } + /** + * 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` to a single `role`. Members 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 < 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 < 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/). + */ + export interface Schema$GoogleIamV1Policy { + /** + * Specifies cloud audit logging configuration for this policy. + */ + auditConfigs?: Schema$GoogleIamV1AuditConfig[]; + /** + * Associates a list of `members` to a `role`. Optionally, may specify a `condition` that determines how and when the `bindings` are applied. Each of the `bindings` must contain at least one member. + */ + bindings?: Schema$GoogleIamV1Binding[]; + /** + * `etag` is used for optimistic concurrency control as a way to help prevent simultaneous updates of a policy from overwriting each other. It is strongly suggested that systems make use of the `etag` in the read-modify-write cycle to perform policy updates in order to avoid race conditions: An `etag` is returned in the response to `getIamPolicy`, and systems are expected to put that etag in the request to `setIamPolicy` to ensure that their change will be applied to the same version of the policy. **Important:** If you use IAM Conditions, you must include the `etag` field whenever you call `setIamPolicy`. If you omit this field, then IAM allows you to overwrite a version `3` policy with a version `1` policy, and all of the conditions in the version `3` policy are lost. + */ + etag?: string | null; + /** + * Specifies the format of the policy. Valid values are `0`, `1`, and `3`. Requests that specify an invalid value are rejected. Any operation that affects conditional role bindings must specify version `3`. This requirement applies to the following operations: * Getting a policy that includes a conditional role binding * Adding a conditional role binding to a policy * Changing a conditional role binding in a policy * Removing any role binding, with or without a condition, from a policy that includes conditions **Important:** If you use IAM Conditions, you must include the `etag` field whenever you call `setIamPolicy`. If you omit this field, then IAM allows you to overwrite a version `3` policy with a version `1` policy, and all of the conditions in the version `3` policy are lost. If a policy does not include any conditions, operations on that policy may specify any valid version or leave the field unset. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies). + */ + version?: number | null; + } + /** + * Request message for `SetIamPolicy` method. + */ + export interface Schema$GoogleIamV1SetIamPolicyRequest { + /** + * REQUIRED: The complete policy to be applied to the `resource`. The size of the policy is limited to a few 10s of KB. An empty policy is a valid policy but certain Cloud Platform services (such as Projects) might reject them. + */ + policy?: Schema$GoogleIamV1Policy; + /** + * OPTIONAL: A FieldMask specifying which fields of the policy to modify. Only the fields in the mask will be modified. If no mask is provided, the following default mask is used: `paths: "bindings, etag"` + */ + updateMask?: string | null; + } + /** + * Request message for `TestIamPermissions` method. + */ + export interface Schema$GoogleIamV1TestIamPermissionsRequest { + /** + * The set of permissions to check for the `resource`. Permissions with wildcards (such as '*' or 'storage.*') are not allowed. For more information see [IAM Overview](https://cloud.google.com/iam/docs/overview#permissions). + */ + permissions?: string[] | null; + } + /** + * Response message for `TestIamPermissions` method. + */ + export interface Schema$GoogleIamV1TestIamPermissionsResponse { + /** + * A subset of `TestPermissionsRequest.permissions` that the caller is allowed. + */ + permissions?: string[] | null; + } + /** + * Specification of HTTP header match atrributes. + */ + export interface Schema$HttpHeaderMatch { + /** + * Required. The name of the HTTP header to match. For matching against the HTTP request's authority, use a headerMatch with the header name ":authority". For matching a request's method, use the headerName ":method". + */ + headerName?: string | null; + /** + * Required. The value of the header must match the regular expression specified in regexMatch. For regular expression grammar, please see: en.cppreference.com/w/cpp/regex/ecmascript For matching against a port specified in the HTTP request, use a headerMatch with headerName set to Host and a regular expression that satisfies the RFC2616 Host header's port specifier. + */ + regexMatch?: string | null; + } + /** + * Response returned by the ListAuthorizationPolicies method. + */ + export interface Schema$ListAuthorizationPoliciesResponse { + /** + * List of AuthorizationPolicies resources. + */ + authorizationPolicies?: Schema$AuthorizationPolicy[]; + /** + * If there might be more results than those appearing in this response, then `next_page_token` is included. To get the next set of results, call this method again using the value of `next_page_token` as `page_token`. + */ + nextPageToken?: string | null; + } + /** + * Response returned by the ListClientTlsPolicies method. + */ + export interface Schema$ListClientTlsPoliciesResponse { + /** + * List of ClientTlsPolicy resources. + */ + clientTlsPolicies?: Schema$ClientTlsPolicy[]; + /** + * If there might be more results than those appearing in this response, then `next_page_token` is included. To get the next set of results, call this method again using the value of `next_page_token` as `page_token`. + */ + nextPageToken?: string | null; + } + /** + * The response message for Locations.ListLocations. + */ + export interface Schema$ListLocationsResponse { + /** + * A list of locations that matches the specified filter in the request. + */ + locations?: Schema$Location[]; + /** + * The standard List next-page token. + */ + nextPageToken?: string | null; + } + /** + * The response message for Operations.ListOperations. + */ + export interface Schema$ListOperationsResponse { + /** + * The standard List next-page token. + */ + nextPageToken?: string | null; + /** + * A list of operations that matches the specified filter in the request. + */ + operations?: Schema$Operation[]; + } + /** + * Response returned by the ListServerTlsPolicies method. + */ + export interface Schema$ListServerTlsPoliciesResponse { + /** + * If there might be more results than those appearing in this response, then `next_page_token` is included. To get the next set of results, call this method again using the value of `next_page_token` as `page_token`. + */ + nextPageToken?: string | null; + /** + * List of ServerTlsPolicy resources. + */ + serverTlsPolicies?: Schema$ServerTlsPolicy[]; + } + /** + * A resource that represents Google Cloud Platform location. + */ + export interface Schema$Location { + /** + * The friendly name for this location, typically a nearby city name. For example, "Tokyo". + */ + displayName?: string | null; + /** + * Cross-service attributes for the location. For example {"cloud.googleapis.com/region": "us-east1"\} + */ + labels?: {[key: string]: string} | null; + /** + * The canonical id for this location. For example: `"us-east1"`. + */ + locationId?: string | null; + /** + * Service-specific metadata. For example the available capacity at the given location. + */ + metadata?: {[key: string]: any} | null; + /** + * Resource name for the location, which may vary between implementations. For example: `"projects/example-project/locations/us-east1"` + */ + name?: string | null; + } + /** + * Specification of the MTLSPolicy. + */ + export interface Schema$MTLSPolicy { + /** + * Required. Defines the mechanism to obtain the Certificate Authority certificate to validate the client certificate. + */ + clientValidationCa?: Schema$ValidationCA[]; + } + /** + * This resource represents a long-running operation that is the result of a network API call. + */ + export interface Schema$Operation { + /** + * If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available. + */ + done?: boolean | null; + /** + * The error result of the operation in case of failure or cancellation. + */ + error?: Schema$Status; + /** + * Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any. + */ + metadata?: {[key: string]: any} | null; + /** + * The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id\}`. + */ + name?: string | null; + /** + * The normal response of the operation in case of success. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`. + */ + response?: {[key: string]: any} | null; + } + /** + * Represents the metadata of the long-running operation. + */ + export interface Schema$OperationMetadata { + /** + * Output only. API version used to start the operation. + */ + apiVersion?: string | null; + /** + * Output only. The time the operation was created. + */ + createTime?: string | null; + /** + * Output only. The time the operation finished running. + */ + endTime?: string | null; + /** + * Output only. Identifies whether the user has requested cancellation of the operation. Operations that have successfully been cancelled have Operation.error value with a google.rpc.Status.code of 1, corresponding to `Code.CANCELLED`. + */ + requestedCancellation?: boolean | null; + /** + * Output only. Human-readable status of the operation, if any. + */ + statusMessage?: string | null; + /** + * Output only. Server-defined resource path for the target of the operation. + */ + target?: string | null; + /** + * Output only. Name of the verb executed by the operation. + */ + verb?: string | null; + } + /** + * Specification of rules. + */ + export interface Schema$Rule { + /** + * Optional. List of attributes for the traffic destination. All of the destinations must match. A destination is a match if a request matches all the specified hosts, ports, methods and headers. If not set, the action specified in the 'action' field will be applied without any rule checks for the destination. + */ + destinations?: Schema$Destination[]; + /** + * Optional. List of attributes for the traffic source. All of the sources must match. A source is a match if both principals and ip_blocks match. If not set, the action specified in the 'action' field will be applied without any rule checks for the source. + */ + sources?: Schema$Source[]; + } + /** + * ServerTlsPolicy is a resource that specifies how a server should authenticate incoming requests. This resource itself does not affect configuration unless it is attached to a target https proxy or endpoint config selector resource. + */ + export interface Schema$ServerTlsPolicy { + /** + * Optional. Determines if server allows plaintext connections. If set to true, server allows plain text connections. By default, it is set to false. This setting is not exclusive of other encryption modes. For example, if allow_open and mtls_policy are set, server allows both plain text and mTLS connections. See documentation of other encryption modes to confirm compatibility. + */ + allowOpen?: boolean | null; + /** + * Output only. The timestamp when the resource was created. + */ + createTime?: string | null; + /** + * Optional. Free-text description of the resource. + */ + description?: string | null; + /** + * Optional. Set of label tags associated with the resource. + */ + labels?: {[key: string]: string} | null; + /** + * Optional. Defines a mechanism to provision peer validation certificates for peer to peer authentication (Mutual TLS - mTLS). If not specified, client certificate will not be requested. The connection is treated as TLS and not mTLS. If allow_open and mtls_policy are set, server allows both plain text and mTLS connections. + */ + mtlsPolicy?: Schema$MTLSPolicy; + /** + * Required. Name of the ServerTlsPolicy resource. It matches the pattern `projects/x/locations/{location\}/serverTlsPolicies/{server_tls_policy\}` + */ + name?: string | null; + /** + * Optional. Defines a mechanism to provision server identity (public and private keys). Cannot be combined with allow_open as a permissive mode that allows both plain text and TLS is not supported. + */ + serverCertificate?: Schema$GoogleCloudNetworksecurityV1beta1CertificateProvider; + /** + * Output only. The timestamp when the resource was updated. + */ + updateTime?: string | null; + } + /** + * Specification of traffic source attributes. + */ + export interface Schema$Source { + /** + * Optional. List of CIDR ranges to match based on source IP address. At least one IP block should match. Single IP (e.g., "1.2.3.4") and CIDR (e.g., "1.2.3.0/24") are supported. + */ + ipBlocks?: string[] | null; + /** + * Optional. List of peer identities to match for authorization. At least one principal should match. Each peer can be an exact match, or a prefix match (example, "namespace/x") or a suffix match (example, // x/service-account") or a presence match "*". + */ + principals?: string[] | null; + } + /** + * The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors). + */ + export interface Schema$Status { + /** + * The status code, which should be an enum value of google.rpc.Code. + */ + code?: number | null; + /** + * A list of messages that carry the error details. There is a common set of message types for APIs to use. + */ + details?: Array<{[key: string]: any}> | null; + /** + * A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client. + */ + message?: string | null; + } + /** + * Specification of ValidationCA. Defines the mechanism to obtain the Certificate Authority certificate to validate the peer certificate. + */ + export interface Schema$ValidationCA { + /** + * The certificate provider instance specification that will be passed to the data plane, which will be used to load necessary credential information. + */ + certificateProviderInstance?: Schema$CertificateProviderInstance; + /** + * gRPC specific configuration to access the gRPC server to obtain the CA certificate. + */ + grpcEndpoint?: Schema$GoogleCloudNetworksecurityV1beta1GrpcEndpoint; + } + + export class Resource$Projects { + context: APIRequestContext; + locations: Resource$Projects$Locations; + constructor(context: APIRequestContext) { + this.context = context; + this.locations = new Resource$Projects$Locations(this.context); + } + } + + export class Resource$Projects$Locations { + context: APIRequestContext; + authorizationPolicies: Resource$Projects$Locations$Authorizationpolicies; + clientTlsPolicies: Resource$Projects$Locations$Clienttlspolicies; + operations: Resource$Projects$Locations$Operations; + serverTlsPolicies: Resource$Projects$Locations$Servertlspolicies; + constructor(context: APIRequestContext) { + this.context = context; + this.authorizationPolicies = + new Resource$Projects$Locations$Authorizationpolicies(this.context); + this.clientTlsPolicies = + new Resource$Projects$Locations$Clienttlspolicies(this.context); + this.operations = new Resource$Projects$Locations$Operations( + this.context + ); + this.serverTlsPolicies = + new Resource$Projects$Locations$Servertlspolicies(this.context); + } + + /** + * Gets information about a location. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/networksecurity.googleapis.com + * // - Login into gcloud by running: + * // `$ gcloud auth application-default login` + * // - Install the npm module by running: + * // `$ npm install googleapis` + * + * const {google} = require('googleapis'); + * const networksecurity = google.networksecurity('v1beta1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await networksecurity.projects.locations.get({ + * // Resource name for the location. + * name: 'projects/my-project/locations/my-location', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "displayName": "my_displayName", + * // "labels": {}, + * // "locationId": "my_locationId", + * // "metadata": {}, + * // "name": "my_name" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + get( + params: Params$Resource$Projects$Locations$Get, + options: StreamMethodOptions + ): GaxiosPromise; + get( + params?: Params$Resource$Projects$Locations$Get, + options?: MethodOptions + ): GaxiosPromise; + get( + params: Params$Resource$Projects$Locations$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://networksecurity.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Lists information about the supported locations for this service. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/networksecurity.googleapis.com + * // - Login into gcloud by running: + * // `$ gcloud auth application-default login` + * // - Install the npm module by running: + * // `$ npm install googleapis` + * + * const {google} = require('googleapis'); + * const networksecurity = google.networksecurity('v1beta1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await networksecurity.projects.locations.list({ + * // A filter to narrow down results to a preferred subset. The filtering language accepts strings like "displayName=tokyo", and is documented in more detail in [AIP-160](https://google.aip.dev/160). + * filter: 'placeholder-value', + * // The resource that owns the locations collection, if applicable. + * name: 'projects/my-project', + * // The maximum number of results to return. If not set, the service selects a default. + * pageSize: 'placeholder-value', + * // A page token received from the `next_page_token` field in the response. Send that page token to receive the subsequent page. + * pageToken: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "locations": [], + * // "nextPageToken": "my_nextPageToken" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + list( + params: Params$Resource$Projects$Locations$List, + options: StreamMethodOptions + ): GaxiosPromise; + list( + params?: Params$Resource$Projects$Locations$List, + options?: MethodOptions + ): GaxiosPromise; + list( + params: Params$Resource$Projects$Locations$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$List, + callback: BodyResponseCallback + ): void; + list(callback: BodyResponseCallback): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | GaxiosPromise + | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://networksecurity.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+name}/locations').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + } + + export interface Params$Resource$Projects$Locations$Get + extends StandardParameters { + /** + * Resource name for the location. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$List + extends StandardParameters { + /** + * A filter to narrow down results to a preferred subset. The filtering language accepts strings like "displayName=tokyo", and is documented in more detail in [AIP-160](https://google.aip.dev/160). + */ + filter?: string; + /** + * The resource that owns the locations collection, if applicable. + */ + name?: string; + /** + * The maximum number of results to return. If not set, the service selects a default. + */ + pageSize?: number; + /** + * A page token received from the `next_page_token` field in the response. Send that page token to receive the subsequent page. + */ + pageToken?: string; + } + + export class Resource$Projects$Locations$Authorizationpolicies { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Creates a new AuthorizationPolicy in a given project and location. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/networksecurity.googleapis.com + * // - Login into gcloud by running: + * // `$ gcloud auth application-default login` + * // - Install the npm module by running: + * // `$ npm install googleapis` + * + * const {google} = require('googleapis'); + * const networksecurity = google.networksecurity('v1beta1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await networksecurity.projects.locations.authorizationPolicies.create({ + * // Required. Short name of the AuthorizationPolicy resource to be created. This value should be 1-63 characters long, containing only letters, numbers, hyphens, and underscores, and should not start with a number. E.g. "authz_policy". + * authorizationPolicyId: 'placeholder-value', + * // Required. The parent resource of the AuthorizationPolicy. Must be in the format `projects/{project\}/locations/{location\}`. + * parent: 'projects/my-project/locations/my-location', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "action": "my_action", + * // "createTime": "my_createTime", + * // "description": "my_description", + * // "labels": {}, + * // "name": "my_name", + * // "rules": [], + * // "updateTime": "my_updateTime" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + create( + params: Params$Resource$Projects$Locations$Authorizationpolicies$Create, + options: StreamMethodOptions + ): GaxiosPromise; + create( + params?: Params$Resource$Projects$Locations$Authorizationpolicies$Create, + options?: MethodOptions + ): GaxiosPromise; + create( + params: Params$Resource$Projects$Locations$Authorizationpolicies$Create, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Authorizationpolicies$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Authorizationpolicies$Create, + callback: BodyResponseCallback + ): void; + create(callback: BodyResponseCallback): void; + create( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Authorizationpolicies$Create + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Authorizationpolicies$Create; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Authorizationpolicies$Create; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://networksecurity.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+parent}/authorizationPolicies').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Deletes a single AuthorizationPolicy. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/networksecurity.googleapis.com + * // - Login into gcloud by running: + * // `$ gcloud auth application-default login` + * // - Install the npm module by running: + * // `$ npm install googleapis` + * + * const {google} = require('googleapis'); + * const networksecurity = google.networksecurity('v1beta1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await networksecurity.projects.locations.authorizationPolicies.delete({ + * // Required. A name of the AuthorizationPolicy to delete. Must be in the format `projects/{project\}/locations/{location\}/authorizationPolicies/x`. + * name: 'projects/my-project/locations/my-location/authorizationPolicies/my-authorizationPolicie', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + delete( + params: Params$Resource$Projects$Locations$Authorizationpolicies$Delete, + options: StreamMethodOptions + ): GaxiosPromise; + delete( + params?: Params$Resource$Projects$Locations$Authorizationpolicies$Delete, + options?: MethodOptions + ): GaxiosPromise; + delete( + params: Params$Resource$Projects$Locations$Authorizationpolicies$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Authorizationpolicies$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Authorizationpolicies$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Authorizationpolicies$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Authorizationpolicies$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Authorizationpolicies$Delete; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://networksecurity.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Gets details of a single AuthorizationPolicy. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/networksecurity.googleapis.com + * // - Login into gcloud by running: + * // `$ gcloud auth application-default login` + * // - Install the npm module by running: + * // `$ npm install googleapis` + * + * const {google} = require('googleapis'); + * const networksecurity = google.networksecurity('v1beta1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await networksecurity.projects.locations.authorizationPolicies.get({ + * // Required. A name of the AuthorizationPolicy to get. Must be in the format `projects/{project\}/locations/{location\}/authorizationPolicies/x`. + * name: 'projects/my-project/locations/my-location/authorizationPolicies/my-authorizationPolicie', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "action": "my_action", + * // "createTime": "my_createTime", + * // "description": "my_description", + * // "labels": {}, + * // "name": "my_name", + * // "rules": [], + * // "updateTime": "my_updateTime" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + get( + params: Params$Resource$Projects$Locations$Authorizationpolicies$Get, + options: StreamMethodOptions + ): GaxiosPromise; + get( + params?: Params$Resource$Projects$Locations$Authorizationpolicies$Get, + options?: MethodOptions + ): GaxiosPromise; + get( + params: Params$Resource$Projects$Locations$Authorizationpolicies$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Authorizationpolicies$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Authorizationpolicies$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Authorizationpolicies$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | GaxiosPromise + | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Authorizationpolicies$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Authorizationpolicies$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://networksecurity.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Gets the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/networksecurity.googleapis.com + * // - Login into gcloud by running: + * // `$ gcloud auth application-default login` + * // - Install the npm module by running: + * // `$ npm install googleapis` + * + * const {google} = require('googleapis'); + * const networksecurity = google.networksecurity('v1beta1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await networksecurity.projects.locations.authorizationPolicies.getIamPolicy( + * { + * // Optional. The policy format version to be returned. Valid values are 0, 1, and 3. Requests specifying an invalid value will be rejected. Requests for policies with any conditional bindings must specify version 3. Policies without any conditional bindings may specify any valid value or leave the field unset. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies). + * 'options.requestedPolicyVersion': 'placeholder-value', + * // REQUIRED: The resource for which the policy is being requested. See the operation documentation for the appropriate value for this field. + * resource: + * 'projects/my-project/locations/my-location/authorizationPolicies/my-authorizationPolicie', + * } + * ); + * console.log(res.data); + * + * // Example response + * // { + * // "auditConfigs": [], + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + getIamPolicy( + params: Params$Resource$Projects$Locations$Authorizationpolicies$Getiampolicy, + options: StreamMethodOptions + ): GaxiosPromise; + getIamPolicy( + params?: Params$Resource$Projects$Locations$Authorizationpolicies$Getiampolicy, + options?: MethodOptions + ): GaxiosPromise; + getIamPolicy( + params: Params$Resource$Projects$Locations$Authorizationpolicies$Getiampolicy, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getIamPolicy( + params: Params$Resource$Projects$Locations$Authorizationpolicies$Getiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getIamPolicy( + params: Params$Resource$Projects$Locations$Authorizationpolicies$Getiampolicy, + callback: BodyResponseCallback + ): void; + getIamPolicy( + callback: BodyResponseCallback + ): void; + getIamPolicy( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Authorizationpolicies$Getiampolicy + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | GaxiosPromise + | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Authorizationpolicies$Getiampolicy; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Authorizationpolicies$Getiampolicy; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://networksecurity.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+resource}:getIamPolicy').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + }, + options + ), + params, + requiredParams: ['resource'], + pathParams: ['resource'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Lists AuthorizationPolicies in a given project and location. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/networksecurity.googleapis.com + * // - Login into gcloud by running: + * // `$ gcloud auth application-default login` + * // - Install the npm module by running: + * // `$ npm install googleapis` + * + * const {google} = require('googleapis'); + * const networksecurity = google.networksecurity('v1beta1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await networksecurity.projects.locations.authorizationPolicies.list({ + * // Maximum number of AuthorizationPolicies to return per call. + * pageSize: 'placeholder-value', + * // The value returned by the last `ListAuthorizationPoliciesResponse` Indicates that this is a continuation of a prior `ListAuthorizationPolicies` call, and that the system should return the next page of data. + * pageToken: 'placeholder-value', + * // Required. The project and location from which the AuthorizationPolicies should be listed, specified in the format `projects/{project\}/locations/{location\}`. + * parent: 'projects/my-project/locations/my-location', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "authorizationPolicies": [], + * // "nextPageToken": "my_nextPageToken" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + list( + params: Params$Resource$Projects$Locations$Authorizationpolicies$List, + options: StreamMethodOptions + ): GaxiosPromise; + list( + params?: Params$Resource$Projects$Locations$Authorizationpolicies$List, + options?: MethodOptions + ): GaxiosPromise; + list( + params: Params$Resource$Projects$Locations$Authorizationpolicies$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Authorizationpolicies$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Authorizationpolicies$List, + callback: BodyResponseCallback + ): void; + list( + callback: BodyResponseCallback + ): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Authorizationpolicies$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | GaxiosPromise + | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Authorizationpolicies$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Authorizationpolicies$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://networksecurity.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+parent}/authorizationPolicies').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + + /** + * Updates the parameters of a single AuthorizationPolicy. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/networksecurity.googleapis.com + * // - Login into gcloud by running: + * // `$ gcloud auth application-default login` + * // - Install the npm module by running: + * // `$ npm install googleapis` + * + * const {google} = require('googleapis'); + * const networksecurity = google.networksecurity('v1beta1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await networksecurity.projects.locations.authorizationPolicies.patch({ + * // Required. Name of the AuthorizationPolicy resource. It matches pattern `projects/{project\}/locations/{location\}/authorizationPolicies/`. + * name: 'projects/my-project/locations/my-location/authorizationPolicies/my-authorizationPolicie', + * // Optional. Field mask is used to specify the fields to be overwritten in the AuthorizationPolicy resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field will be overwritten if it is in the mask. If the user does not provide a mask then all fields will be overwritten. + * updateMask: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "action": "my_action", + * // "createTime": "my_createTime", + * // "description": "my_description", + * // "labels": {}, + * // "name": "my_name", + * // "rules": [], + * // "updateTime": "my_updateTime" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + patch( + params: Params$Resource$Projects$Locations$Authorizationpolicies$Patch, + options: StreamMethodOptions + ): GaxiosPromise; + patch( + params?: Params$Resource$Projects$Locations$Authorizationpolicies$Patch, + options?: MethodOptions + ): GaxiosPromise; + patch( + params: Params$Resource$Projects$Locations$Authorizationpolicies$Patch, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Authorizationpolicies$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Authorizationpolicies$Patch, + callback: BodyResponseCallback + ): void; + patch(callback: BodyResponseCallback): void; + patch( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Authorizationpolicies$Patch + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Authorizationpolicies$Patch; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Authorizationpolicies$Patch; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://networksecurity.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Sets the access control policy on the specified resource. Replaces any existing policy. Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED` errors. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/networksecurity.googleapis.com + * // - Login into gcloud by running: + * // `$ gcloud auth application-default login` + * // - Install the npm module by running: + * // `$ npm install googleapis` + * + * const {google} = require('googleapis'); + * const networksecurity = google.networksecurity('v1beta1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await networksecurity.projects.locations.authorizationPolicies.setIamPolicy( + * { + * // REQUIRED: The resource for which the policy is being specified. See the operation documentation for the appropriate value for this field. + * resource: + * 'projects/my-project/locations/my-location/authorizationPolicies/my-authorizationPolicie', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "policy": {}, + * // "updateMask": "my_updateMask" + * // } + * }, + * } + * ); + * console.log(res.data); + * + * // Example response + * // { + * // "auditConfigs": [], + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + setIamPolicy( + params: Params$Resource$Projects$Locations$Authorizationpolicies$Setiampolicy, + options: StreamMethodOptions + ): GaxiosPromise; + setIamPolicy( + params?: Params$Resource$Projects$Locations$Authorizationpolicies$Setiampolicy, + options?: MethodOptions + ): GaxiosPromise; + setIamPolicy( + params: Params$Resource$Projects$Locations$Authorizationpolicies$Setiampolicy, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setIamPolicy( + params: Params$Resource$Projects$Locations$Authorizationpolicies$Setiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setIamPolicy( + params: Params$Resource$Projects$Locations$Authorizationpolicies$Setiampolicy, + callback: BodyResponseCallback + ): void; + setIamPolicy( + callback: BodyResponseCallback + ): void; + setIamPolicy( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Authorizationpolicies$Setiampolicy + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | GaxiosPromise + | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Authorizationpolicies$Setiampolicy; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Authorizationpolicies$Setiampolicy; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://networksecurity.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+resource}:setIamPolicy').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + }, + options + ), + params, + requiredParams: ['resource'], + pathParams: ['resource'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Returns permissions that a caller has on the specified resource. If the resource does not exist, this will return an empty set of permissions, not a `NOT_FOUND` error. Note: This operation is designed to be used for building permission-aware UIs and command-line tools, not for authorization checking. This operation may "fail open" without warning. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/networksecurity.googleapis.com + * // - Login into gcloud by running: + * // `$ gcloud auth application-default login` + * // - Install the npm module by running: + * // `$ npm install googleapis` + * + * const {google} = require('googleapis'); + * const networksecurity = google.networksecurity('v1beta1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await networksecurity.projects.locations.authorizationPolicies.testIamPermissions( + * { + * // REQUIRED: The resource for which the policy detail is being requested. See the operation documentation for the appropriate value for this field. + * resource: + * 'projects/my-project/locations/my-location/authorizationPolicies/my-authorizationPolicie', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "permissions": [] + * // } + * }, + * } + * ); + * console.log(res.data); + * + * // Example response + * // { + * // "permissions": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + testIamPermissions( + params: Params$Resource$Projects$Locations$Authorizationpolicies$Testiampermissions, + options: StreamMethodOptions + ): GaxiosPromise; + testIamPermissions( + params?: Params$Resource$Projects$Locations$Authorizationpolicies$Testiampermissions, + options?: MethodOptions + ): GaxiosPromise; + testIamPermissions( + params: Params$Resource$Projects$Locations$Authorizationpolicies$Testiampermissions, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + testIamPermissions( + params: Params$Resource$Projects$Locations$Authorizationpolicies$Testiampermissions, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + testIamPermissions( + params: Params$Resource$Projects$Locations$Authorizationpolicies$Testiampermissions, + callback: BodyResponseCallback + ): void; + testIamPermissions( + callback: BodyResponseCallback + ): void; + testIamPermissions( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Authorizationpolicies$Testiampermissions + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | GaxiosPromise + | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Authorizationpolicies$Testiampermissions; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Authorizationpolicies$Testiampermissions; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://networksecurity.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+resource}:testIamPermissions').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + }, + options + ), + params, + requiredParams: ['resource'], + pathParams: ['resource'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + } + + export interface Params$Resource$Projects$Locations$Authorizationpolicies$Create + extends StandardParameters { + /** + * Required. Short name of the AuthorizationPolicy resource to be created. This value should be 1-63 characters long, containing only letters, numbers, hyphens, and underscores, and should not start with a number. E.g. "authz_policy". + */ + authorizationPolicyId?: string; + /** + * Required. The parent resource of the AuthorizationPolicy. Must be in the format `projects/{project\}/locations/{location\}`. + */ + parent?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$AuthorizationPolicy; + } + export interface Params$Resource$Projects$Locations$Authorizationpolicies$Delete + extends StandardParameters { + /** + * Required. A name of the AuthorizationPolicy to delete. Must be in the format `projects/{project\}/locations/{location\}/authorizationPolicies/x`. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Authorizationpolicies$Get + extends StandardParameters { + /** + * Required. A name of the AuthorizationPolicy to get. Must be in the format `projects/{project\}/locations/{location\}/authorizationPolicies/x`. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Authorizationpolicies$Getiampolicy + extends StandardParameters { + /** + * Optional. The policy format version to be returned. Valid values are 0, 1, and 3. Requests specifying an invalid value will be rejected. Requests for policies with any conditional bindings must specify version 3. Policies without any conditional bindings may specify any valid value or leave the field unset. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies). + */ + 'options.requestedPolicyVersion'?: number; + /** + * REQUIRED: The resource for which the policy is being requested. See the operation documentation for the appropriate value for this field. + */ + resource?: string; + } + export interface Params$Resource$Projects$Locations$Authorizationpolicies$List + extends StandardParameters { + /** + * Maximum number of AuthorizationPolicies to return per call. + */ + pageSize?: number; + /** + * The value returned by the last `ListAuthorizationPoliciesResponse` Indicates that this is a continuation of a prior `ListAuthorizationPolicies` call, and that the system should return the next page of data. + */ + pageToken?: string; + /** + * Required. The project and location from which the AuthorizationPolicies should be listed, specified in the format `projects/{project\}/locations/{location\}`. + */ + parent?: string; + } + export interface Params$Resource$Projects$Locations$Authorizationpolicies$Patch + extends StandardParameters { + /** + * Required. Name of the AuthorizationPolicy resource. It matches pattern `projects/{project\}/locations/{location\}/authorizationPolicies/`. + */ + name?: string; + /** + * Optional. Field mask is used to specify the fields to be overwritten in the AuthorizationPolicy resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field will be overwritten if it is in the mask. If the user does not provide a mask then all fields will be overwritten. + */ + updateMask?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$AuthorizationPolicy; + } + export interface Params$Resource$Projects$Locations$Authorizationpolicies$Setiampolicy + extends StandardParameters { + /** + * REQUIRED: The resource for which the policy is being specified. See the operation documentation for the appropriate value for this field. + */ + resource?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoogleIamV1SetIamPolicyRequest; + } + export interface Params$Resource$Projects$Locations$Authorizationpolicies$Testiampermissions + extends StandardParameters { + /** + * REQUIRED: The resource for which the policy detail is being requested. See the operation documentation for the appropriate value for this field. + */ + resource?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoogleIamV1TestIamPermissionsRequest; + } + + export class Resource$Projects$Locations$Clienttlspolicies { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Creates a new ClientTlsPolicy in a given project and location. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/networksecurity.googleapis.com + * // - Login into gcloud by running: + * // `$ gcloud auth application-default login` + * // - Install the npm module by running: + * // `$ npm install googleapis` + * + * const {google} = require('googleapis'); + * const networksecurity = google.networksecurity('v1beta1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await networksecurity.projects.locations.clientTlsPolicies.create( + * { + * // Required. Short name of the ClientTlsPolicy resource to be created. This value should be 1-63 characters long, containing only letters, numbers, hyphens, and underscores, and should not start with a number. E.g. "client_mtls_policy". + * clientTlsPolicyId: 'placeholder-value', + * // Required. The parent resource of the ClientTlsPolicy. Must be in the format `projects/x/locations/{location\}`. + * parent: 'projects/my-project/locations/my-location', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "clientCertificate": {}, + * // "createTime": "my_createTime", + * // "description": "my_description", + * // "labels": {}, + * // "name": "my_name", + * // "serverValidationCa": [], + * // "sni": "my_sni", + * // "updateTime": "my_updateTime" + * // } + * }, + * } + * ); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + create( + params: Params$Resource$Projects$Locations$Clienttlspolicies$Create, + options: StreamMethodOptions + ): GaxiosPromise; + create( + params?: Params$Resource$Projects$Locations$Clienttlspolicies$Create, + options?: MethodOptions + ): GaxiosPromise; + create( + params: Params$Resource$Projects$Locations$Clienttlspolicies$Create, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Clienttlspolicies$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Clienttlspolicies$Create, + callback: BodyResponseCallback + ): void; + create(callback: BodyResponseCallback): void; + create( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Clienttlspolicies$Create + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Clienttlspolicies$Create; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Clienttlspolicies$Create; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://networksecurity.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+parent}/clientTlsPolicies').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Deletes a single ClientTlsPolicy. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/networksecurity.googleapis.com + * // - Login into gcloud by running: + * // `$ gcloud auth application-default login` + * // - Install the npm module by running: + * // `$ npm install googleapis` + * + * const {google} = require('googleapis'); + * const networksecurity = google.networksecurity('v1beta1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await networksecurity.projects.locations.clientTlsPolicies.delete( + * { + * // Required. A name of the ClientTlsPolicy to delete. Must be in the format `projects/x/locations/{location\}/clientTlsPolicies/x`. + * name: 'projects/my-project/locations/my-location/clientTlsPolicies/my-clientTlsPolicie', + * } + * ); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + delete( + params: Params$Resource$Projects$Locations$Clienttlspolicies$Delete, + options: StreamMethodOptions + ): GaxiosPromise; + delete( + params?: Params$Resource$Projects$Locations$Clienttlspolicies$Delete, + options?: MethodOptions + ): GaxiosPromise; + delete( + params: Params$Resource$Projects$Locations$Clienttlspolicies$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Clienttlspolicies$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Clienttlspolicies$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Clienttlspolicies$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Clienttlspolicies$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Clienttlspolicies$Delete; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://networksecurity.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Gets details of a single ClientTlsPolicy. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/networksecurity.googleapis.com + * // - Login into gcloud by running: + * // `$ gcloud auth application-default login` + * // - Install the npm module by running: + * // `$ npm install googleapis` + * + * const {google} = require('googleapis'); + * const networksecurity = google.networksecurity('v1beta1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await networksecurity.projects.locations.clientTlsPolicies.get({ + * // Required. A name of the ClientTlsPolicy to get. Must be in the format `projects/x/locations/{location\}/clientTlsPolicies/x`. + * name: 'projects/my-project/locations/my-location/clientTlsPolicies/my-clientTlsPolicie', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientCertificate": {}, + * // "createTime": "my_createTime", + * // "description": "my_description", + * // "labels": {}, + * // "name": "my_name", + * // "serverValidationCa": [], + * // "sni": "my_sni", + * // "updateTime": "my_updateTime" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + get( + params: Params$Resource$Projects$Locations$Clienttlspolicies$Get, + options: StreamMethodOptions + ): GaxiosPromise; + get( + params?: Params$Resource$Projects$Locations$Clienttlspolicies$Get, + options?: MethodOptions + ): GaxiosPromise; + get( + params: Params$Resource$Projects$Locations$Clienttlspolicies$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Clienttlspolicies$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Clienttlspolicies$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Clienttlspolicies$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Clienttlspolicies$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Clienttlspolicies$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://networksecurity.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Gets the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/networksecurity.googleapis.com + * // - Login into gcloud by running: + * // `$ gcloud auth application-default login` + * // - Install the npm module by running: + * // `$ npm install googleapis` + * + * const {google} = require('googleapis'); + * const networksecurity = google.networksecurity('v1beta1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await networksecurity.projects.locations.clientTlsPolicies.getIamPolicy({ + * // Optional. The policy format version to be returned. Valid values are 0, 1, and 3. Requests specifying an invalid value will be rejected. Requests for policies with any conditional bindings must specify version 3. Policies without any conditional bindings may specify any valid value or leave the field unset. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies). + * 'options.requestedPolicyVersion': 'placeholder-value', + * // REQUIRED: The resource for which the policy is being requested. See the operation documentation for the appropriate value for this field. + * resource: + * 'projects/my-project/locations/my-location/clientTlsPolicies/my-clientTlsPolicie', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "auditConfigs": [], + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + getIamPolicy( + params: Params$Resource$Projects$Locations$Clienttlspolicies$Getiampolicy, + options: StreamMethodOptions + ): GaxiosPromise; + getIamPolicy( + params?: Params$Resource$Projects$Locations$Clienttlspolicies$Getiampolicy, + options?: MethodOptions + ): GaxiosPromise; + getIamPolicy( + params: Params$Resource$Projects$Locations$Clienttlspolicies$Getiampolicy, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getIamPolicy( + params: Params$Resource$Projects$Locations$Clienttlspolicies$Getiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getIamPolicy( + params: Params$Resource$Projects$Locations$Clienttlspolicies$Getiampolicy, + callback: BodyResponseCallback + ): void; + getIamPolicy( + callback: BodyResponseCallback + ): void; + getIamPolicy( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Clienttlspolicies$Getiampolicy + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | GaxiosPromise + | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Clienttlspolicies$Getiampolicy; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Clienttlspolicies$Getiampolicy; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://networksecurity.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+resource}:getIamPolicy').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + }, + options + ), + params, + requiredParams: ['resource'], + pathParams: ['resource'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Lists ClientTlsPolicies in a given project and location. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/networksecurity.googleapis.com + * // - Login into gcloud by running: + * // `$ gcloud auth application-default login` + * // - Install the npm module by running: + * // `$ npm install googleapis` + * + * const {google} = require('googleapis'); + * const networksecurity = google.networksecurity('v1beta1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await networksecurity.projects.locations.clientTlsPolicies.list({ + * // Maximum number of ClientTlsPolicies to return per call. + * pageSize: 'placeholder-value', + * // The value returned by the last `ListClientTlsPoliciesResponse` Indicates that this is a continuation of a prior `ListClientTlsPolicies` call, and that the system should return the next page of data. + * pageToken: 'placeholder-value', + * // Required. The project and location from which the ClientTlsPolicies should be listed, specified in the format `projects/x/locations/{location\}`. + * parent: 'projects/my-project/locations/my-location', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "clientTlsPolicies": [], + * // "nextPageToken": "my_nextPageToken" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + list( + params: Params$Resource$Projects$Locations$Clienttlspolicies$List, + options: StreamMethodOptions + ): GaxiosPromise; + list( + params?: Params$Resource$Projects$Locations$Clienttlspolicies$List, + options?: MethodOptions + ): GaxiosPromise; + list( + params: Params$Resource$Projects$Locations$Clienttlspolicies$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Clienttlspolicies$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Clienttlspolicies$List, + callback: BodyResponseCallback + ): void; + list( + callback: BodyResponseCallback + ): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Clienttlspolicies$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | GaxiosPromise + | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Clienttlspolicies$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Clienttlspolicies$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://networksecurity.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+parent}/clientTlsPolicies').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + + /** + * Updates the parameters of a single ClientTlsPolicy. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/networksecurity.googleapis.com + * // - Login into gcloud by running: + * // `$ gcloud auth application-default login` + * // - Install the npm module by running: + * // `$ npm install googleapis` + * + * const {google} = require('googleapis'); + * const networksecurity = google.networksecurity('v1beta1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await networksecurity.projects.locations.clientTlsPolicies.patch({ + * // Required. Name of the ClientTlsPolicy resource. It matches the pattern `projects/x/locations/{location\}/clientTlsPolicies/{client_tls_policy\}` + * name: 'projects/my-project/locations/my-location/clientTlsPolicies/my-clientTlsPolicie', + * // Optional. Field mask is used to specify the fields to be overwritten in the ClientTlsPolicy resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field will be overwritten if it is in the mask. If the user does not provide a mask then all fields will be overwritten. + * updateMask: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "clientCertificate": {}, + * // "createTime": "my_createTime", + * // "description": "my_description", + * // "labels": {}, + * // "name": "my_name", + * // "serverValidationCa": [], + * // "sni": "my_sni", + * // "updateTime": "my_updateTime" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + patch( + params: Params$Resource$Projects$Locations$Clienttlspolicies$Patch, + options: StreamMethodOptions + ): GaxiosPromise; + patch( + params?: Params$Resource$Projects$Locations$Clienttlspolicies$Patch, + options?: MethodOptions + ): GaxiosPromise; + patch( + params: Params$Resource$Projects$Locations$Clienttlspolicies$Patch, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Clienttlspolicies$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Clienttlspolicies$Patch, + callback: BodyResponseCallback + ): void; + patch(callback: BodyResponseCallback): void; + patch( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Clienttlspolicies$Patch + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Clienttlspolicies$Patch; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Clienttlspolicies$Patch; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://networksecurity.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Sets the access control policy on the specified resource. Replaces any existing policy. Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED` errors. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/networksecurity.googleapis.com + * // - Login into gcloud by running: + * // `$ gcloud auth application-default login` + * // - Install the npm module by running: + * // `$ npm install googleapis` + * + * const {google} = require('googleapis'); + * const networksecurity = google.networksecurity('v1beta1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await networksecurity.projects.locations.clientTlsPolicies.setIamPolicy({ + * // REQUIRED: The resource for which the policy is being specified. See the operation documentation for the appropriate value for this field. + * resource: + * 'projects/my-project/locations/my-location/clientTlsPolicies/my-clientTlsPolicie', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "policy": {}, + * // "updateMask": "my_updateMask" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "auditConfigs": [], + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + setIamPolicy( + params: Params$Resource$Projects$Locations$Clienttlspolicies$Setiampolicy, + options: StreamMethodOptions + ): GaxiosPromise; + setIamPolicy( + params?: Params$Resource$Projects$Locations$Clienttlspolicies$Setiampolicy, + options?: MethodOptions + ): GaxiosPromise; + setIamPolicy( + params: Params$Resource$Projects$Locations$Clienttlspolicies$Setiampolicy, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setIamPolicy( + params: Params$Resource$Projects$Locations$Clienttlspolicies$Setiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setIamPolicy( + params: Params$Resource$Projects$Locations$Clienttlspolicies$Setiampolicy, + callback: BodyResponseCallback + ): void; + setIamPolicy( + callback: BodyResponseCallback + ): void; + setIamPolicy( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Clienttlspolicies$Setiampolicy + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | GaxiosPromise + | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Clienttlspolicies$Setiampolicy; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Clienttlspolicies$Setiampolicy; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://networksecurity.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+resource}:setIamPolicy').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + }, + options + ), + params, + requiredParams: ['resource'], + pathParams: ['resource'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Returns permissions that a caller has on the specified resource. If the resource does not exist, this will return an empty set of permissions, not a `NOT_FOUND` error. Note: This operation is designed to be used for building permission-aware UIs and command-line tools, not for authorization checking. This operation may "fail open" without warning. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/networksecurity.googleapis.com + * // - Login into gcloud by running: + * // `$ gcloud auth application-default login` + * // - Install the npm module by running: + * // `$ npm install googleapis` + * + * const {google} = require('googleapis'); + * const networksecurity = google.networksecurity('v1beta1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await networksecurity.projects.locations.clientTlsPolicies.testIamPermissions( + * { + * // REQUIRED: The resource for which the policy detail is being requested. See the operation documentation for the appropriate value for this field. + * resource: + * 'projects/my-project/locations/my-location/clientTlsPolicies/my-clientTlsPolicie', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "permissions": [] + * // } + * }, + * } + * ); + * console.log(res.data); + * + * // Example response + * // { + * // "permissions": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + testIamPermissions( + params: Params$Resource$Projects$Locations$Clienttlspolicies$Testiampermissions, + options: StreamMethodOptions + ): GaxiosPromise; + testIamPermissions( + params?: Params$Resource$Projects$Locations$Clienttlspolicies$Testiampermissions, + options?: MethodOptions + ): GaxiosPromise; + testIamPermissions( + params: Params$Resource$Projects$Locations$Clienttlspolicies$Testiampermissions, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + testIamPermissions( + params: Params$Resource$Projects$Locations$Clienttlspolicies$Testiampermissions, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + testIamPermissions( + params: Params$Resource$Projects$Locations$Clienttlspolicies$Testiampermissions, + callback: BodyResponseCallback + ): void; + testIamPermissions( + callback: BodyResponseCallback + ): void; + testIamPermissions( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Clienttlspolicies$Testiampermissions + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | GaxiosPromise + | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Clienttlspolicies$Testiampermissions; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Clienttlspolicies$Testiampermissions; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://networksecurity.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+resource}:testIamPermissions').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + }, + options + ), + params, + requiredParams: ['resource'], + pathParams: ['resource'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + } + + export interface Params$Resource$Projects$Locations$Clienttlspolicies$Create + extends StandardParameters { + /** + * Required. Short name of the ClientTlsPolicy resource to be created. This value should be 1-63 characters long, containing only letters, numbers, hyphens, and underscores, and should not start with a number. E.g. "client_mtls_policy". + */ + clientTlsPolicyId?: string; + /** + * Required. The parent resource of the ClientTlsPolicy. Must be in the format `projects/x/locations/{location\}`. + */ + parent?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$ClientTlsPolicy; + } + export interface Params$Resource$Projects$Locations$Clienttlspolicies$Delete + extends StandardParameters { + /** + * Required. A name of the ClientTlsPolicy to delete. Must be in the format `projects/x/locations/{location\}/clientTlsPolicies/x`. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Clienttlspolicies$Get + extends StandardParameters { + /** + * Required. A name of the ClientTlsPolicy to get. Must be in the format `projects/x/locations/{location\}/clientTlsPolicies/x`. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Clienttlspolicies$Getiampolicy + extends StandardParameters { + /** + * Optional. The policy format version to be returned. Valid values are 0, 1, and 3. Requests specifying an invalid value will be rejected. Requests for policies with any conditional bindings must specify version 3. Policies without any conditional bindings may specify any valid value or leave the field unset. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies). + */ + 'options.requestedPolicyVersion'?: number; + /** + * REQUIRED: The resource for which the policy is being requested. See the operation documentation for the appropriate value for this field. + */ + resource?: string; + } + export interface Params$Resource$Projects$Locations$Clienttlspolicies$List + extends StandardParameters { + /** + * Maximum number of ClientTlsPolicies to return per call. + */ + pageSize?: number; + /** + * The value returned by the last `ListClientTlsPoliciesResponse` Indicates that this is a continuation of a prior `ListClientTlsPolicies` call, and that the system should return the next page of data. + */ + pageToken?: string; + /** + * Required. The project and location from which the ClientTlsPolicies should be listed, specified in the format `projects/x/locations/{location\}`. + */ + parent?: string; + } + export interface Params$Resource$Projects$Locations$Clienttlspolicies$Patch + extends StandardParameters { + /** + * Required. Name of the ClientTlsPolicy resource. It matches the pattern `projects/x/locations/{location\}/clientTlsPolicies/{client_tls_policy\}` + */ + name?: string; + /** + * Optional. Field mask is used to specify the fields to be overwritten in the ClientTlsPolicy resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field will be overwritten if it is in the mask. If the user does not provide a mask then all fields will be overwritten. + */ + updateMask?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$ClientTlsPolicy; + } + export interface Params$Resource$Projects$Locations$Clienttlspolicies$Setiampolicy + extends StandardParameters { + /** + * REQUIRED: The resource for which the policy is being specified. See the operation documentation for the appropriate value for this field. + */ + resource?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoogleIamV1SetIamPolicyRequest; + } + export interface Params$Resource$Projects$Locations$Clienttlspolicies$Testiampermissions + extends StandardParameters { + /** + * REQUIRED: The resource for which the policy detail is being requested. See the operation documentation for the appropriate value for this field. + */ + resource?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoogleIamV1TestIamPermissionsRequest; + } + + export class Resource$Projects$Locations$Operations { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Starts asynchronous cancellation on a long-running operation. The server makes a best effort to cancel the operation, but success is not guaranteed. If the server doesn't support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Clients can use Operations.GetOperation or other methods to check whether the cancellation succeeded or whether the operation completed despite cancellation. On successful cancellation, the operation is not deleted; instead, it becomes an operation with an Operation.error value with a google.rpc.Status.code of 1, corresponding to `Code.CANCELLED`. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/networksecurity.googleapis.com + * // - Login into gcloud by running: + * // `$ gcloud auth application-default login` + * // - Install the npm module by running: + * // `$ npm install googleapis` + * + * const {google} = require('googleapis'); + * const networksecurity = google.networksecurity('v1beta1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await networksecurity.projects.locations.operations.cancel({ + * // The name of the operation resource to be cancelled. + * name: 'projects/my-project/locations/my-location/operations/my-operation', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // {} + * }, + * }); + * console.log(res.data); + * + * // Example response + * // {} + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + cancel( + params: Params$Resource$Projects$Locations$Operations$Cancel, + options: StreamMethodOptions + ): GaxiosPromise; + cancel( + params?: Params$Resource$Projects$Locations$Operations$Cancel, + options?: MethodOptions + ): GaxiosPromise; + cancel( + params: Params$Resource$Projects$Locations$Operations$Cancel, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + cancel( + params: Params$Resource$Projects$Locations$Operations$Cancel, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + cancel( + params: Params$Resource$Projects$Locations$Operations$Cancel, + callback: BodyResponseCallback + ): void; + cancel(callback: BodyResponseCallback): void; + cancel( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Operations$Cancel + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Operations$Cancel; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Operations$Cancel; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://networksecurity.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+name}:cancel').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Deletes a long-running operation. This method indicates that the client is no longer interested in the operation result. It does not cancel the operation. If the server doesn't support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/networksecurity.googleapis.com + * // - Login into gcloud by running: + * // `$ gcloud auth application-default login` + * // - Install the npm module by running: + * // `$ npm install googleapis` + * + * const {google} = require('googleapis'); + * const networksecurity = google.networksecurity('v1beta1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await networksecurity.projects.locations.operations.delete({ + * // The name of the operation resource to be deleted. + * name: 'projects/my-project/locations/my-location/operations/my-operation', + * }); + * console.log(res.data); + * + * // Example response + * // {} + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + delete( + params: Params$Resource$Projects$Locations$Operations$Delete, + options: StreamMethodOptions + ): GaxiosPromise; + delete( + params?: Params$Resource$Projects$Locations$Operations$Delete, + options?: MethodOptions + ): GaxiosPromise; + delete( + params: Params$Resource$Projects$Locations$Operations$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Operations$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Operations$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Operations$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Operations$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Operations$Delete; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://networksecurity.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/networksecurity.googleapis.com + * // - Login into gcloud by running: + * // `$ gcloud auth application-default login` + * // - Install the npm module by running: + * // `$ npm install googleapis` + * + * const {google} = require('googleapis'); + * const networksecurity = google.networksecurity('v1beta1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await networksecurity.projects.locations.operations.get({ + * // The name of the operation resource. + * name: 'projects/my-project/locations/my-location/operations/my-operation', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + get( + params: Params$Resource$Projects$Locations$Operations$Get, + options: StreamMethodOptions + ): GaxiosPromise; + get( + params?: Params$Resource$Projects$Locations$Operations$Get, + options?: MethodOptions + ): GaxiosPromise; + get( + params: Params$Resource$Projects$Locations$Operations$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Operations$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Operations$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Operations$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Operations$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Operations$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://networksecurity.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns `UNIMPLEMENTED`. NOTE: the `name` binding allows API services to override the binding to use different resource name schemes, such as `users/x/operations`. To override the binding, API services can add a binding such as `"/v1/{name=users/x\}/operations"` to their service configuration. For backwards compatibility, the default name includes the operations collection id, however overriding users must ensure the name binding is the parent resource, without the operations collection id. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/networksecurity.googleapis.com + * // - Login into gcloud by running: + * // `$ gcloud auth application-default login` + * // - Install the npm module by running: + * // `$ npm install googleapis` + * + * const {google} = require('googleapis'); + * const networksecurity = google.networksecurity('v1beta1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await networksecurity.projects.locations.operations.list({ + * // The standard list filter. + * filter: 'placeholder-value', + * // The name of the operation's parent resource. + * name: 'projects/my-project/locations/my-location', + * // The standard list page size. + * pageSize: 'placeholder-value', + * // The standard list page token. + * pageToken: 'placeholder-value', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "nextPageToken": "my_nextPageToken", + * // "operations": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + list( + params: Params$Resource$Projects$Locations$Operations$List, + options: StreamMethodOptions + ): GaxiosPromise; + list( + params?: Params$Resource$Projects$Locations$Operations$List, + options?: MethodOptions + ): GaxiosPromise; + list( + params: Params$Resource$Projects$Locations$Operations$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Operations$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Operations$List, + callback: BodyResponseCallback + ): void; + list(callback: BodyResponseCallback): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Operations$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | GaxiosPromise + | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Operations$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Operations$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://networksecurity.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+name}/operations').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + } + + export interface Params$Resource$Projects$Locations$Operations$Cancel + extends StandardParameters { + /** + * The name of the operation resource to be cancelled. + */ + name?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$CancelOperationRequest; + } + export interface Params$Resource$Projects$Locations$Operations$Delete + extends StandardParameters { + /** + * The name of the operation resource to be deleted. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Operations$Get + extends StandardParameters { + /** + * The name of the operation resource. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Operations$List + extends StandardParameters { + /** + * The standard list filter. + */ + filter?: string; + /** + * The name of the operation's parent resource. + */ + name?: string; + /** + * The standard list page size. + */ + pageSize?: number; + /** + * The standard list page token. + */ + pageToken?: string; + } + + export class Resource$Projects$Locations$Servertlspolicies { + context: APIRequestContext; + constructor(context: APIRequestContext) { + this.context = context; + } + + /** + * Creates a new ServerTlsPolicy in a given project and location. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/networksecurity.googleapis.com + * // - Login into gcloud by running: + * // `$ gcloud auth application-default login` + * // - Install the npm module by running: + * // `$ npm install googleapis` + * + * const {google} = require('googleapis'); + * const networksecurity = google.networksecurity('v1beta1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await networksecurity.projects.locations.serverTlsPolicies.create( + * { + * // Required. The parent resource of the ServerTlsPolicy. Must be in the format `projects/x/locations/{location\}`. + * parent: 'projects/my-project/locations/my-location', + * // Required. Short name of the ServerTlsPolicy resource to be created. This value should be 1-63 characters long, containing only letters, numbers, hyphens, and underscores, and should not start with a number. E.g. "server_mtls_policy". + * serverTlsPolicyId: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "allowOpen": false, + * // "createTime": "my_createTime", + * // "description": "my_description", + * // "labels": {}, + * // "mtlsPolicy": {}, + * // "name": "my_name", + * // "serverCertificate": {}, + * // "updateTime": "my_updateTime" + * // } + * }, + * } + * ); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + create( + params: Params$Resource$Projects$Locations$Servertlspolicies$Create, + options: StreamMethodOptions + ): GaxiosPromise; + create( + params?: Params$Resource$Projects$Locations$Servertlspolicies$Create, + options?: MethodOptions + ): GaxiosPromise; + create( + params: Params$Resource$Projects$Locations$Servertlspolicies$Create, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Servertlspolicies$Create, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + create( + params: Params$Resource$Projects$Locations$Servertlspolicies$Create, + callback: BodyResponseCallback + ): void; + create(callback: BodyResponseCallback): void; + create( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Servertlspolicies$Create + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Servertlspolicies$Create; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Servertlspolicies$Create; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://networksecurity.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+parent}/serverTlsPolicies').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Deletes a single ServerTlsPolicy. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/networksecurity.googleapis.com + * // - Login into gcloud by running: + * // `$ gcloud auth application-default login` + * // - Install the npm module by running: + * // `$ npm install googleapis` + * + * const {google} = require('googleapis'); + * const networksecurity = google.networksecurity('v1beta1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await networksecurity.projects.locations.serverTlsPolicies.delete( + * { + * // Required. A name of the ServerTlsPolicy to delete. Must be in the format `projects/x/locations/{location\}/serverTlsPolicies/x`. + * name: 'projects/my-project/locations/my-location/serverTlsPolicies/my-serverTlsPolicie', + * } + * ); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + delete( + params: Params$Resource$Projects$Locations$Servertlspolicies$Delete, + options: StreamMethodOptions + ): GaxiosPromise; + delete( + params?: Params$Resource$Projects$Locations$Servertlspolicies$Delete, + options?: MethodOptions + ): GaxiosPromise; + delete( + params: Params$Resource$Projects$Locations$Servertlspolicies$Delete, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Servertlspolicies$Delete, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + delete( + params: Params$Resource$Projects$Locations$Servertlspolicies$Delete, + callback: BodyResponseCallback + ): void; + delete(callback: BodyResponseCallback): void; + delete( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Servertlspolicies$Delete + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Servertlspolicies$Delete; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Servertlspolicies$Delete; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://networksecurity.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'DELETE', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Gets details of a single ServerTlsPolicy. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/networksecurity.googleapis.com + * // - Login into gcloud by running: + * // `$ gcloud auth application-default login` + * // - Install the npm module by running: + * // `$ npm install googleapis` + * + * const {google} = require('googleapis'); + * const networksecurity = google.networksecurity('v1beta1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await networksecurity.projects.locations.serverTlsPolicies.get({ + * // Required. A name of the ServerTlsPolicy to get. Must be in the format `projects/x/locations/{location\}/serverTlsPolicies/x`. + * name: 'projects/my-project/locations/my-location/serverTlsPolicies/my-serverTlsPolicie', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "allowOpen": false, + * // "createTime": "my_createTime", + * // "description": "my_description", + * // "labels": {}, + * // "mtlsPolicy": {}, + * // "name": "my_name", + * // "serverCertificate": {}, + * // "updateTime": "my_updateTime" + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + get( + params: Params$Resource$Projects$Locations$Servertlspolicies$Get, + options: StreamMethodOptions + ): GaxiosPromise; + get( + params?: Params$Resource$Projects$Locations$Servertlspolicies$Get, + options?: MethodOptions + ): GaxiosPromise; + get( + params: Params$Resource$Projects$Locations$Servertlspolicies$Get, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Servertlspolicies$Get, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + get( + params: Params$Resource$Projects$Locations$Servertlspolicies$Get, + callback: BodyResponseCallback + ): void; + get(callback: BodyResponseCallback): void; + get( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Servertlspolicies$Get + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Servertlspolicies$Get; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = {} as Params$Resource$Projects$Locations$Servertlspolicies$Get; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://networksecurity.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'GET', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Gets the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/networksecurity.googleapis.com + * // - Login into gcloud by running: + * // `$ gcloud auth application-default login` + * // - Install the npm module by running: + * // `$ npm install googleapis` + * + * const {google} = require('googleapis'); + * const networksecurity = google.networksecurity('v1beta1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await networksecurity.projects.locations.serverTlsPolicies.getIamPolicy({ + * // Optional. The policy format version to be returned. Valid values are 0, 1, and 3. Requests specifying an invalid value will be rejected. Requests for policies with any conditional bindings must specify version 3. Policies without any conditional bindings may specify any valid value or leave the field unset. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies). + * 'options.requestedPolicyVersion': 'placeholder-value', + * // REQUIRED: The resource for which the policy is being requested. See the operation documentation for the appropriate value for this field. + * resource: + * 'projects/my-project/locations/my-location/serverTlsPolicies/my-serverTlsPolicie', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "auditConfigs": [], + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + getIamPolicy( + params: Params$Resource$Projects$Locations$Servertlspolicies$Getiampolicy, + options: StreamMethodOptions + ): GaxiosPromise; + getIamPolicy( + params?: Params$Resource$Projects$Locations$Servertlspolicies$Getiampolicy, + options?: MethodOptions + ): GaxiosPromise; + getIamPolicy( + params: Params$Resource$Projects$Locations$Servertlspolicies$Getiampolicy, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getIamPolicy( + params: Params$Resource$Projects$Locations$Servertlspolicies$Getiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + getIamPolicy( + params: Params$Resource$Projects$Locations$Servertlspolicies$Getiampolicy, + callback: BodyResponseCallback + ): void; + getIamPolicy( + callback: BodyResponseCallback + ): void; + getIamPolicy( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Servertlspolicies$Getiampolicy + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | GaxiosPromise + | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Servertlspolicies$Getiampolicy; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Servertlspolicies$Getiampolicy; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://networksecurity.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+resource}:getIamPolicy').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + }, + options + ), + params, + requiredParams: ['resource'], + pathParams: ['resource'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Lists ServerTlsPolicies in a given project and location. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/networksecurity.googleapis.com + * // - Login into gcloud by running: + * // `$ gcloud auth application-default login` + * // - Install the npm module by running: + * // `$ npm install googleapis` + * + * const {google} = require('googleapis'); + * const networksecurity = google.networksecurity('v1beta1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await networksecurity.projects.locations.serverTlsPolicies.list({ + * // Maximum number of ServerTlsPolicies to return per call. + * pageSize: 'placeholder-value', + * // The value returned by the last `ListServerTlsPoliciesResponse` Indicates that this is a continuation of a prior `ListServerTlsPolicies` call, and that the system should return the next page of data. + * pageToken: 'placeholder-value', + * // Required. The project and location from which the ServerTlsPolicies should be listed, specified in the format `projects/x/locations/{location\}`. + * parent: 'projects/my-project/locations/my-location', + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "nextPageToken": "my_nextPageToken", + * // "serverTlsPolicies": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + list( + params: Params$Resource$Projects$Locations$Servertlspolicies$List, + options: StreamMethodOptions + ): GaxiosPromise; + list( + params?: Params$Resource$Projects$Locations$Servertlspolicies$List, + options?: MethodOptions + ): GaxiosPromise; + list( + params: Params$Resource$Projects$Locations$Servertlspolicies$List, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Servertlspolicies$List, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + list( + params: Params$Resource$Projects$Locations$Servertlspolicies$List, + callback: BodyResponseCallback + ): void; + list( + callback: BodyResponseCallback + ): void; + list( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Servertlspolicies$List + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | GaxiosPromise + | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Servertlspolicies$List; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Servertlspolicies$List; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://networksecurity.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+parent}/serverTlsPolicies').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'GET', + }, + options + ), + params, + requiredParams: ['parent'], + pathParams: ['parent'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + + /** + * Updates the parameters of a single ServerTlsPolicy. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/networksecurity.googleapis.com + * // - Login into gcloud by running: + * // `$ gcloud auth application-default login` + * // - Install the npm module by running: + * // `$ npm install googleapis` + * + * const {google} = require('googleapis'); + * const networksecurity = google.networksecurity('v1beta1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = await networksecurity.projects.locations.serverTlsPolicies.patch({ + * // Required. Name of the ServerTlsPolicy resource. It matches the pattern `projects/x/locations/{location\}/serverTlsPolicies/{server_tls_policy\}` + * name: 'projects/my-project/locations/my-location/serverTlsPolicies/my-serverTlsPolicie', + * // Optional. Field mask is used to specify the fields to be overwritten in the ServerTlsPolicy resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field will be overwritten if it is in the mask. If the user does not provide a mask then all fields will be overwritten. + * updateMask: 'placeholder-value', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "allowOpen": false, + * // "createTime": "my_createTime", + * // "description": "my_description", + * // "labels": {}, + * // "mtlsPolicy": {}, + * // "name": "my_name", + * // "serverCertificate": {}, + * // "updateTime": "my_updateTime" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "done": false, + * // "error": {}, + * // "metadata": {}, + * // "name": "my_name", + * // "response": {} + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + patch( + params: Params$Resource$Projects$Locations$Servertlspolicies$Patch, + options: StreamMethodOptions + ): GaxiosPromise; + patch( + params?: Params$Resource$Projects$Locations$Servertlspolicies$Patch, + options?: MethodOptions + ): GaxiosPromise; + patch( + params: Params$Resource$Projects$Locations$Servertlspolicies$Patch, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Servertlspolicies$Patch, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + patch( + params: Params$Resource$Projects$Locations$Servertlspolicies$Patch, + callback: BodyResponseCallback + ): void; + patch(callback: BodyResponseCallback): void; + patch( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Servertlspolicies$Patch + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): void | GaxiosPromise | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Servertlspolicies$Patch; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Servertlspolicies$Patch; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://networksecurity.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+name}').replace(/([^:]\/)\/+/g, '$1'), + method: 'PATCH', + }, + options + ), + params, + requiredParams: ['name'], + pathParams: ['name'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Sets the access control policy on the specified resource. Replaces any existing policy. Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED` errors. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/networksecurity.googleapis.com + * // - Login into gcloud by running: + * // `$ gcloud auth application-default login` + * // - Install the npm module by running: + * // `$ npm install googleapis` + * + * const {google} = require('googleapis'); + * const networksecurity = google.networksecurity('v1beta1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await networksecurity.projects.locations.serverTlsPolicies.setIamPolicy({ + * // REQUIRED: The resource for which the policy is being specified. See the operation documentation for the appropriate value for this field. + * resource: + * 'projects/my-project/locations/my-location/serverTlsPolicies/my-serverTlsPolicie', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "policy": {}, + * // "updateMask": "my_updateMask" + * // } + * }, + * }); + * console.log(res.data); + * + * // Example response + * // { + * // "auditConfigs": [], + * // "bindings": [], + * // "etag": "my_etag", + * // "version": 0 + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + setIamPolicy( + params: Params$Resource$Projects$Locations$Servertlspolicies$Setiampolicy, + options: StreamMethodOptions + ): GaxiosPromise; + setIamPolicy( + params?: Params$Resource$Projects$Locations$Servertlspolicies$Setiampolicy, + options?: MethodOptions + ): GaxiosPromise; + setIamPolicy( + params: Params$Resource$Projects$Locations$Servertlspolicies$Setiampolicy, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setIamPolicy( + params: Params$Resource$Projects$Locations$Servertlspolicies$Setiampolicy, + options: MethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + setIamPolicy( + params: Params$Resource$Projects$Locations$Servertlspolicies$Setiampolicy, + callback: BodyResponseCallback + ): void; + setIamPolicy( + callback: BodyResponseCallback + ): void; + setIamPolicy( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Servertlspolicies$Setiampolicy + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | GaxiosPromise + | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Servertlspolicies$Setiampolicy; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Servertlspolicies$Setiampolicy; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://networksecurity.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+resource}:setIamPolicy').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + }, + options + ), + params, + requiredParams: ['resource'], + pathParams: ['resource'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest(parameters); + } + } + + /** + * Returns permissions that a caller has on the specified resource. If the resource does not exist, this will return an empty set of permissions, not a `NOT_FOUND` error. Note: This operation is designed to be used for building permission-aware UIs and command-line tools, not for authorization checking. This operation may "fail open" without warning. + * @example + * ```js + * // Before running the sample: + * // - Enable the API at: + * // https://console.developers.google.com/apis/api/networksecurity.googleapis.com + * // - Login into gcloud by running: + * // `$ gcloud auth application-default login` + * // - Install the npm module by running: + * // `$ npm install googleapis` + * + * const {google} = require('googleapis'); + * const networksecurity = google.networksecurity('v1beta1'); + * + * async function main() { + * const auth = new google.auth.GoogleAuth({ + * // Scopes can be specified either as an array or as a single, space-delimited string. + * scopes: ['https://www.googleapis.com/auth/cloud-platform'], + * }); + * + * // Acquire an auth client, and bind it to all future calls + * const authClient = await auth.getClient(); + * google.options({auth: authClient}); + * + * // Do the magic + * const res = + * await networksecurity.projects.locations.serverTlsPolicies.testIamPermissions( + * { + * // REQUIRED: The resource for which the policy detail is being requested. See the operation documentation for the appropriate value for this field. + * resource: + * 'projects/my-project/locations/my-location/serverTlsPolicies/my-serverTlsPolicie', + * + * // Request body metadata + * requestBody: { + * // request body parameters + * // { + * // "permissions": [] + * // } + * }, + * } + * ); + * console.log(res.data); + * + * // Example response + * // { + * // "permissions": [] + * // } + * } + * + * main().catch(e => { + * console.error(e); + * throw e; + * }); + * + * ``` + * + * @param params - Parameters for request + * @param options - Optionally override request options, such as `url`, `method`, and `encoding`. + * @param callback - Optional callback that handles the response. + * @returns A promise if used with async/await, or void if used with a callback. + */ + testIamPermissions( + params: Params$Resource$Projects$Locations$Servertlspolicies$Testiampermissions, + options: StreamMethodOptions + ): GaxiosPromise; + testIamPermissions( + params?: Params$Resource$Projects$Locations$Servertlspolicies$Testiampermissions, + options?: MethodOptions + ): GaxiosPromise; + testIamPermissions( + params: Params$Resource$Projects$Locations$Servertlspolicies$Testiampermissions, + options: StreamMethodOptions | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + testIamPermissions( + params: Params$Resource$Projects$Locations$Servertlspolicies$Testiampermissions, + options: + | MethodOptions + | BodyResponseCallback, + callback: BodyResponseCallback + ): void; + testIamPermissions( + params: Params$Resource$Projects$Locations$Servertlspolicies$Testiampermissions, + callback: BodyResponseCallback + ): void; + testIamPermissions( + callback: BodyResponseCallback + ): void; + testIamPermissions( + paramsOrCallback?: + | Params$Resource$Projects$Locations$Servertlspolicies$Testiampermissions + | BodyResponseCallback + | BodyResponseCallback, + optionsOrCallback?: + | MethodOptions + | StreamMethodOptions + | BodyResponseCallback + | BodyResponseCallback, + callback?: + | BodyResponseCallback + | BodyResponseCallback + ): + | void + | GaxiosPromise + | GaxiosPromise { + let params = (paramsOrCallback || + {}) as Params$Resource$Projects$Locations$Servertlspolicies$Testiampermissions; + let options = (optionsOrCallback || {}) as MethodOptions; + + if (typeof paramsOrCallback === 'function') { + callback = paramsOrCallback; + params = + {} as Params$Resource$Projects$Locations$Servertlspolicies$Testiampermissions; + options = {}; + } + + if (typeof optionsOrCallback === 'function') { + callback = optionsOrCallback; + options = {}; + } + + const rootUrl = + options.rootUrl || 'https://networksecurity.googleapis.com/'; + const parameters = { + options: Object.assign( + { + url: (rootUrl + '/v1beta1/{+resource}:testIamPermissions').replace( + /([^:]\/)\/+/g, + '$1' + ), + method: 'POST', + }, + options + ), + params, + requiredParams: ['resource'], + pathParams: ['resource'], + context: this.context, + }; + if (callback) { + createAPIRequest( + parameters, + callback as BodyResponseCallback + ); + } else { + return createAPIRequest( + parameters + ); + } + } + } + + export interface Params$Resource$Projects$Locations$Servertlspolicies$Create + extends StandardParameters { + /** + * Required. The parent resource of the ServerTlsPolicy. Must be in the format `projects/x/locations/{location\}`. + */ + parent?: string; + /** + * Required. Short name of the ServerTlsPolicy resource to be created. This value should be 1-63 characters long, containing only letters, numbers, hyphens, and underscores, and should not start with a number. E.g. "server_mtls_policy". + */ + serverTlsPolicyId?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$ServerTlsPolicy; + } + export interface Params$Resource$Projects$Locations$Servertlspolicies$Delete + extends StandardParameters { + /** + * Required. A name of the ServerTlsPolicy to delete. Must be in the format `projects/x/locations/{location\}/serverTlsPolicies/x`. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Servertlspolicies$Get + extends StandardParameters { + /** + * Required. A name of the ServerTlsPolicy to get. Must be in the format `projects/x/locations/{location\}/serverTlsPolicies/x`. + */ + name?: string; + } + export interface Params$Resource$Projects$Locations$Servertlspolicies$Getiampolicy + extends StandardParameters { + /** + * Optional. The policy format version to be returned. Valid values are 0, 1, and 3. Requests specifying an invalid value will be rejected. Requests for policies with any conditional bindings must specify version 3. Policies without any conditional bindings may specify any valid value or leave the field unset. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies). + */ + 'options.requestedPolicyVersion'?: number; + /** + * REQUIRED: The resource for which the policy is being requested. See the operation documentation for the appropriate value for this field. + */ + resource?: string; + } + export interface Params$Resource$Projects$Locations$Servertlspolicies$List + extends StandardParameters { + /** + * Maximum number of ServerTlsPolicies to return per call. + */ + pageSize?: number; + /** + * The value returned by the last `ListServerTlsPoliciesResponse` Indicates that this is a continuation of a prior `ListServerTlsPolicies` call, and that the system should return the next page of data. + */ + pageToken?: string; + /** + * Required. The project and location from which the ServerTlsPolicies should be listed, specified in the format `projects/x/locations/{location\}`. + */ + parent?: string; + } + export interface Params$Resource$Projects$Locations$Servertlspolicies$Patch + extends StandardParameters { + /** + * Required. Name of the ServerTlsPolicy resource. It matches the pattern `projects/x/locations/{location\}/serverTlsPolicies/{server_tls_policy\}` + */ + name?: string; + /** + * Optional. Field mask is used to specify the fields to be overwritten in the ServerTlsPolicy resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field will be overwritten if it is in the mask. If the user does not provide a mask then all fields will be overwritten. + */ + updateMask?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$ServerTlsPolicy; + } + export interface Params$Resource$Projects$Locations$Servertlspolicies$Setiampolicy + extends StandardParameters { + /** + * REQUIRED: The resource for which the policy is being specified. See the operation documentation for the appropriate value for this field. + */ + resource?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoogleIamV1SetIamPolicyRequest; + } + export interface Params$Resource$Projects$Locations$Servertlspolicies$Testiampermissions + extends StandardParameters { + /** + * REQUIRED: The resource for which the policy detail is being requested. See the operation documentation for the appropriate value for this field. + */ + resource?: string; + + /** + * Request body metadata + */ + requestBody?: Schema$GoogleIamV1TestIamPermissionsRequest; + } +} diff --git a/src/apis/networksecurity/webpack.config.js b/src/apis/networksecurity/webpack.config.js new file mode 100644 index 00000000000..7a5666731e2 --- /dev/null +++ b/src/apis/networksecurity/webpack.config.js @@ -0,0 +1,79 @@ +// Copyright 2019 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +// Use `npm run webpack` to produce Webpack bundle for this library. + +const path = require('path'); + +module.exports = { + entry: './index.ts', + resolve: { + extensions: ['.ts', '.js', '.json'], + fallback: { + crypto: false, + child_process: false, + fs: false, + http2: false, + buffer: 'browserify', + process: false, + os: false, + querystring: false, + path: false, + stream: 'stream-browserify', + url: false, + util: false, + zlib: false, + }, + }, + output: { + library: 'Networksecurity', + filename: 'networksecurity.min.js', + path: path.resolve(__dirname, 'dist'), + }, + module: { + rules: [ + { + test: /node_modules[\\/]google-auth-library[\\/]src[\\/]crypto[\\/]node[\\/]crypto/, + use: 'null-loader', + }, + { + test: /node_modules[\\/]https-proxy-agent[\\/]/, + use: 'null-loader', + }, + { + test: /node_modules[\\/]gcp-metadata[\\/]/, + use: 'null-loader', + }, + { + test: /node_modules[\\/]gtoken[\\/]/, + use: 'null-loader', + }, + { + test: /node_modules[\\/]pkginfo[\\/]/, + use: 'null-loader', + }, + { + test: /node_modules[\\/]semver[\\/]/, + use: 'null-loader', + }, + { + test: /\.ts$/, + use: 'ts-loader', + exclude: /node_modules/, + }, + ], + }, + mode: 'production', + plugins: [], +}; diff --git a/src/apis/notebooks/README.md b/src/apis/notebooks/README.md index 8850d27cb8a..6654820d1bb 100644 --- a/src/apis/notebooks/README.md +++ b/src/apis/notebooks/README.md @@ -2,7 +2,7 @@ # notebooks -> AI Platform Notebooks API is used to manage notebook resources in Google Cloud. +> Notebooks API is used to manage notebook resources in Google Cloud. ## Support status **Note**: Google provides multiple libraries for this service. This library is in diff --git a/src/apis/retail/v2.ts b/src/apis/retail/v2.ts index 694dde87f72..f3607dab1a5 100644 --- a/src/apis/retail/v2.ts +++ b/src/apis/retail/v2.ts @@ -747,7 +747,7 @@ export namespace retail_v2 { */ pageToken?: string | null; /** - * Additional domain specific parameters for the predictions. Allowed values: * `returnProduct`: Boolean. If set to true, the associated product object will be returned in the `results.metadata` field in the prediction response. * `returnScore`: Boolean. If set to true, the prediction 'score' corresponding to each returned product will be set in the `results.metadata` field in the prediction response. The given 'score' indicates the probability of an product being clicked/purchased given the user's context and history. * `strictFiltering`: Boolean. True by default. If set to false, the service will return generic (unfiltered) popular products instead of empty if your filter blocks all prediction results. * `priceRerankLevel`: String. Default empty. If set to be non-empty, then it needs to be one of {'no-price-reranking', 'low-price-reranking', 'medium-price-reranking', 'high-price-reranking'\}. This gives request level control and adjust prediction results based on product price. * `diversityLevel`: String. Default empty. If set to be non-empty, then it needs to be one of {'no-diversity', 'low-diversity', 'medium-diversity', 'high-diversity', 'auto-diversity'\}. This gives request level control and adjust prediction results based on product category. + * Additional domain specific parameters for the predictions. Allowed values: * `returnProduct`: Boolean. If set to true, the associated product object will be returned in the `results.metadata` field in the prediction response. * `returnScore`: Boolean. If set to true, the prediction 'score' corresponding to each returned product will be set in the `results.metadata` field in the prediction response. The given 'score' indicates the probability of an product being clicked/purchased given the user's context and history. * `strictFiltering`: Boolean. True by default. If set to false, the service will return generic (unfiltered) popular products instead of empty if your filter blocks all prediction results. * `priceRerankLevel`: String. Default empty. If set to be non-empty, then it needs to be one of {'no-price-reranking', 'low-price-reranking', 'medium-price-reranking', 'high-price-reranking'\}. This gives request-level control and adjusts prediction results based on product price. * `diversityLevel`: String. Default empty. If set to be non-empty, then it needs to be one of {'no-diversity', 'low-diversity', 'medium-diversity', 'high-diversity', 'auto-diversity'\}. This gives request-level control and adjusts prediction results based on product category. */ params?: {[key: string]: any} | null; /** @@ -1121,11 +1121,11 @@ export namespace retail_v2 { */ directUserRequest?: boolean | null; /** - * The end user's IP address. This field is used to extract location information for personalization. This field must be either an IPv4 address (e.g. "104.133.9.80") or an IPv6 address (e.g. "2001:0db8:85a3:0000:0000:8a2e:0370:7334"). Otherwise, an INVALID_ARGUMENT error is returned. This should not be set when using the JavaScript tag in UserEventService.CollectUserEvent or if direct_user_request is set. + * The end user's IP address. Required for getting SearchRespons.sponsored_results. This field is used to extract location information for personalization. This field must be either an IPv4 address (e.g. "104.133.9.80") or an IPv6 address (e.g. "2001:0db8:85a3:0000:0000:8a2e:0370:7334"). Otherwise, an INVALID_ARGUMENT error is returned. This should not be set when using the JavaScript tag in UserEventService.CollectUserEvent or if direct_user_request is set. */ ipAddress?: string | null; /** - * User agent as included in the HTTP header. The field must be a UTF-8 encoded string with a length limit of 1,000 characters. Otherwise, an INVALID_ARGUMENT error is returned. This should not be set when using the client side event reporting with GTM or JavaScript tag in UserEventService.CollectUserEvent or if direct_user_request is set. + * User agent as included in the HTTP header. Required for getting SearchRespons.sponsored_results. The field must be a UTF-8 encoded string with a length limit of 1,000 characters. Otherwise, an INVALID_ARGUMENT error is returned. This should not be set when using the client side event reporting with GTM or JavaScript tag in UserEventService.CollectUserEvent or if direct_user_request is set. */ userAgent?: string | null; /** diff --git a/src/apis/retail/v2alpha.ts b/src/apis/retail/v2alpha.ts index 04fe6ff8513..c97f468785e 100644 --- a/src/apis/retail/v2alpha.ts +++ b/src/apis/retail/v2alpha.ts @@ -501,7 +501,7 @@ export namespace retail_v2alpha { */ pageToken?: string | null; /** - * Additional domain specific parameters for the predictions. Allowed values: * `returnProduct`: Boolean. If set to true, the associated product object will be returned in the `results.metadata` field in the prediction response. * `returnScore`: Boolean. If set to true, the prediction 'score' corresponding to each returned product will be set in the `results.metadata` field in the prediction response. The given 'score' indicates the probability of an product being clicked/purchased given the user's context and history. * `strictFiltering`: Boolean. True by default. If set to false, the service will return generic (unfiltered) popular products instead of empty if your filter blocks all prediction results. * `priceRerankLevel`: String. Default empty. If set to be non-empty, then it needs to be one of {'no-price-reranking', 'low-price-reranking', 'medium-price-reranking', 'high-price-reranking'\}. This gives request level control and adjust prediction results based on product price. * `diversityLevel`: String. Default empty. If set to be non-empty, then it needs to be one of {'no-diversity', 'low-diversity', 'medium-diversity', 'high-diversity', 'auto-diversity'\}. This gives request level control and adjust prediction results based on product category. + * Additional domain specific parameters for the predictions. Allowed values: * `returnProduct`: Boolean. If set to true, the associated product object will be returned in the `results.metadata` field in the prediction response. * `returnScore`: Boolean. If set to true, the prediction 'score' corresponding to each returned product will be set in the `results.metadata` field in the prediction response. The given 'score' indicates the probability of an product being clicked/purchased given the user's context and history. * `strictFiltering`: Boolean. True by default. If set to false, the service will return generic (unfiltered) popular products instead of empty if your filter blocks all prediction results. * `priceRerankLevel`: String. Default empty. If set to be non-empty, then it needs to be one of {'no-price-reranking', 'low-price-reranking', 'medium-price-reranking', 'high-price-reranking'\}. This gives request-level control and adjusts prediction results based on product price. * `diversityLevel`: String. Default empty. If set to be non-empty, then it needs to be one of {'no-diversity', 'low-diversity', 'medium-diversity', 'high-diversity', 'auto-diversity'\}. This gives request-level control and adjusts prediction results based on product category. */ params?: {[key: string]: any} | null; /** @@ -875,11 +875,11 @@ export namespace retail_v2alpha { */ directUserRequest?: boolean | null; /** - * The end user's IP address. This field is used to extract location information for personalization. This field must be either an IPv4 address (e.g. "104.133.9.80") or an IPv6 address (e.g. "2001:0db8:85a3:0000:0000:8a2e:0370:7334"). Otherwise, an INVALID_ARGUMENT error is returned. This should not be set when using the JavaScript tag in UserEventService.CollectUserEvent or if direct_user_request is set. + * The end user's IP address. Required for getting SearchRespons.sponsored_results. This field is used to extract location information for personalization. This field must be either an IPv4 address (e.g. "104.133.9.80") or an IPv6 address (e.g. "2001:0db8:85a3:0000:0000:8a2e:0370:7334"). Otherwise, an INVALID_ARGUMENT error is returned. This should not be set when using the JavaScript tag in UserEventService.CollectUserEvent or if direct_user_request is set. */ ipAddress?: string | null; /** - * User agent as included in the HTTP header. The field must be a UTF-8 encoded string with a length limit of 1,000 characters. Otherwise, an INVALID_ARGUMENT error is returned. This should not be set when using the client side event reporting with GTM or JavaScript tag in UserEventService.CollectUserEvent or if direct_user_request is set. + * User agent as included in the HTTP header. Required for getting SearchRespons.sponsored_results. The field must be a UTF-8 encoded string with a length limit of 1,000 characters. Otherwise, an INVALID_ARGUMENT error is returned. This should not be set when using the client side event reporting with GTM or JavaScript tag in UserEventService.CollectUserEvent or if direct_user_request is set. */ userAgent?: string | null; /** diff --git a/src/apis/retail/v2beta.ts b/src/apis/retail/v2beta.ts index 246ba33d2c2..f1fb17a6a91 100644 --- a/src/apis/retail/v2beta.ts +++ b/src/apis/retail/v2beta.ts @@ -648,7 +648,7 @@ export namespace retail_v2beta { */ pageToken?: string | null; /** - * Additional domain specific parameters for the predictions. Allowed values: * `returnProduct`: Boolean. If set to true, the associated product object will be returned in the `results.metadata` field in the prediction response. * `returnScore`: Boolean. If set to true, the prediction 'score' corresponding to each returned product will be set in the `results.metadata` field in the prediction response. The given 'score' indicates the probability of an product being clicked/purchased given the user's context and history. * `strictFiltering`: Boolean. True by default. If set to false, the service will return generic (unfiltered) popular products instead of empty if your filter blocks all prediction results. * `priceRerankLevel`: String. Default empty. If set to be non-empty, then it needs to be one of {'no-price-reranking', 'low-price-reranking', 'medium-price-reranking', 'high-price-reranking'\}. This gives request level control and adjust prediction results based on product price. * `diversityLevel`: String. Default empty. If set to be non-empty, then it needs to be one of {'no-diversity', 'low-diversity', 'medium-diversity', 'high-diversity', 'auto-diversity'\}. This gives request level control and adjust prediction results based on product category. + * Additional domain specific parameters for the predictions. Allowed values: * `returnProduct`: Boolean. If set to true, the associated product object will be returned in the `results.metadata` field in the prediction response. * `returnScore`: Boolean. If set to true, the prediction 'score' corresponding to each returned product will be set in the `results.metadata` field in the prediction response. The given 'score' indicates the probability of an product being clicked/purchased given the user's context and history. * `strictFiltering`: Boolean. True by default. If set to false, the service will return generic (unfiltered) popular products instead of empty if your filter blocks all prediction results. * `priceRerankLevel`: String. Default empty. If set to be non-empty, then it needs to be one of {'no-price-reranking', 'low-price-reranking', 'medium-price-reranking', 'high-price-reranking'\}. This gives request-level control and adjusts prediction results based on product price. * `diversityLevel`: String. Default empty. If set to be non-empty, then it needs to be one of {'no-diversity', 'low-diversity', 'medium-diversity', 'high-diversity', 'auto-diversity'\}. This gives request-level control and adjusts prediction results based on product category. */ params?: {[key: string]: any} | null; /** @@ -1022,11 +1022,11 @@ export namespace retail_v2beta { */ directUserRequest?: boolean | null; /** - * The end user's IP address. This field is used to extract location information for personalization. This field must be either an IPv4 address (e.g. "104.133.9.80") or an IPv6 address (e.g. "2001:0db8:85a3:0000:0000:8a2e:0370:7334"). Otherwise, an INVALID_ARGUMENT error is returned. This should not be set when using the JavaScript tag in UserEventService.CollectUserEvent or if direct_user_request is set. + * The end user's IP address. Required for getting SearchRespons.sponsored_results. This field is used to extract location information for personalization. This field must be either an IPv4 address (e.g. "104.133.9.80") or an IPv6 address (e.g. "2001:0db8:85a3:0000:0000:8a2e:0370:7334"). Otherwise, an INVALID_ARGUMENT error is returned. This should not be set when using the JavaScript tag in UserEventService.CollectUserEvent or if direct_user_request is set. */ ipAddress?: string | null; /** - * User agent as included in the HTTP header. The field must be a UTF-8 encoded string with a length limit of 1,000 characters. Otherwise, an INVALID_ARGUMENT error is returned. This should not be set when using the client side event reporting with GTM or JavaScript tag in UserEventService.CollectUserEvent or if direct_user_request is set. + * User agent as included in the HTTP header. Required for getting SearchRespons.sponsored_results. The field must be a UTF-8 encoded string with a length limit of 1,000 characters. Otherwise, an INVALID_ARGUMENT error is returned. This should not be set when using the client side event reporting with GTM or JavaScript tag in UserEventService.CollectUserEvent or if direct_user_request is set. */ userAgent?: string | null; /** diff --git a/src/apis/run/v1.ts b/src/apis/run/v1.ts index b8f8121350f..e5631abf4f5 100644 --- a/src/apis/run/v1.ts +++ b/src/apis/run/v1.ts @@ -103,7 +103,7 @@ export namespace run_v1 { /** * Cloud Run Admin API * - * Deploy and manage user provided container images that scale automatically based on incoming requets. The Cloud Run Admin API follows the Knative Serving API specification. + * Deploy and manage user provided container images that scale automatically based on incoming requests. The Cloud Run Admin API follows the Knative Serving API specification. * * @example * ```js diff --git a/src/apis/run/v1alpha1.ts b/src/apis/run/v1alpha1.ts index 92b6f5671a4..4ce4bd57963 100644 --- a/src/apis/run/v1alpha1.ts +++ b/src/apis/run/v1alpha1.ts @@ -103,7 +103,7 @@ export namespace run_v1alpha1 { /** * Cloud Run Admin API * - * Deploy and manage user provided container images that scale automatically based on incoming requets. The Cloud Run Admin API follows the Knative Serving API specification. + * Deploy and manage user provided container images that scale automatically based on incoming requests. The Cloud Run Admin API follows the Knative Serving API specification. * * @example * ```js @@ -126,20 +126,7 @@ export namespace run_v1alpha1 { } /** - * Adds and removes POSIX capabilities from running containers. - */ - export interface Schema$Capabilities { - /** - * Added capabilities +optional - */ - add?: string[] | null; - /** - * Removed capabilities +optional - */ - drop?: string[] | null; - } - /** - * ConfigMapEnvSource selects a ConfigMap to populate the environment variables with. The contents of the target ConfigMap's Data field will represent the key-value pairs as environment variables. + * Not supported by Cloud Run ConfigMapEnvSource selects a ConfigMap to populate the environment variables with. The contents of the target ConfigMap's Data field will represent the key-value pairs as environment variables. */ export interface Schema$ConfigMapEnvSource { /** @@ -147,20 +134,20 @@ export namespace run_v1alpha1 { */ localObjectReference?: Schema$LocalObjectReference; /** - * Cloud Run fully managed: not supported Cloud Run for Anthos: supported The ConfigMap to select from. + * The ConfigMap to select from. */ name?: string | null; /** - * Cloud Run fully managed: not supported Cloud Run for Anthos: supported Specify whether the ConfigMap must be defined +optional + * (Optional) Specify whether the ConfigMap must be defined */ optional?: boolean | null; } /** - * Cloud Run fully managed: not supported Cloud Run on GKE: supported Selects a key from a ConfigMap. + * Not supported by Cloud Run Selects a key from a ConfigMap. */ export interface Schema$ConfigMapKeySelector { /** - * Cloud Run fully managed: not supported Cloud Run on GKE: supported The key to select. + * The key to select. */ key?: string | null; /** @@ -168,24 +155,24 @@ export namespace run_v1alpha1 { */ localObjectReference?: Schema$LocalObjectReference; /** - * Cloud Run fully managed: not supported Cloud Run on GKE: supported The ConfigMap to select from. + * The ConfigMap to select from. */ name?: string | null; /** - * Cloud Run fully managed: not supported Cloud Run on GKE: supported Specify whether the ConfigMap or its key must be defined +optional + * (Optional) Specify whether the ConfigMap or its key must be defined */ optional?: boolean | null; } /** - * Adapts a ConfigMap into a volume. The contents of the target ConfigMap's Data field will be presented in a volume as files using the keys in the Data field as the file names, unless the items element is populated with specific mappings of keys to paths. + * Not supported by Cloud Run Adapts a ConfigMap into a volume. The contents of the target ConfigMap's Data field will be presented in a volume as files using the keys in the Data field as the file names, unless the items element is populated with specific mappings of keys to paths. */ export interface Schema$ConfigMapVolumeSource { /** - * Mode bits to use on created files by default. Must be a value between 0 and 0777. Defaults to 0644. Directories within the path are not affected by this setting. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set. + * (Optional) Mode bits to use on created files by default. Must be a value between 0 and 0777. Defaults to 0644. Directories within the path are not affected by this setting. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set. */ defaultMode?: number | null; /** - * If unspecified, each key-value pair in the Data field of the referenced Secret will be projected into the volume as a file whose name is the key and content is the value. If specified, the listed keys will be projected into the specified paths, and unlisted keys will not be present. If a key is specified which is not present in the Secret, the volume setup will error unless it is marked optional. + * (Optional) If unspecified, each key-value pair in the Data field of the referenced Secret will be projected into the volume as a file whose name is the key and content is the value. If specified, the listed keys will be projected into the specified paths, and unlisted keys will not be present. If a key is specified that is not present in the Secret, the volume setup will error unless it is marked optional. */ items?: Schema$KeyToPath[]; /** @@ -193,7 +180,7 @@ export namespace run_v1alpha1 { */ name?: string | null; /** - * Specify whether the Secret or its keys must be defined. + * (Optional) Specify whether the Secret or its keys must be defined. */ optional?: boolean | null; } @@ -202,87 +189,68 @@ export namespace run_v1alpha1 { */ export interface Schema$Container { /** - * Arguments to the entrypoint. The docker image's CMD is used if this is not provided. Variable references $(VAR_NAME) are expanded using the container's environment. If a variable cannot be resolved, the reference in the input string will be unchanged. The $(VAR_NAME) syntax can be escaped with a double $$, ie: $$(VAR_NAME). Escaped references will never be expanded, regardless of whether the variable exists or not. Cannot be updated. More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell +optional + * (Optional) Arguments to the entrypoint. The docker image's CMD is used if this is not provided. Variable references $(VAR_NAME) are expanded using the container's environment. If a variable cannot be resolved, the reference in the input string will be unchanged. The $(VAR_NAME) syntax can be escaped with a double $$, ie: $$(VAR_NAME). Escaped references will never be expanded, regardless of whether the variable exists or not. More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell */ args?: string[] | null; - /** - * Entrypoint array. Not executed within a shell. The docker image's ENTRYPOINT is used if this is not provided. Variable references $(VAR_NAME) are expanded using the container's environment. If a variable cannot be resolved, the reference in the input string will be unchanged. The $(VAR_NAME) syntax can be escaped with a double $$, ie: $$(VAR_NAME). Escaped references will never be expanded, regardless of whether the variable exists or not. Cannot be updated. More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell +optional - */ command?: string[] | null; /** - * List of environment variables to set in the container. Cannot be updated. +optional + * (Optional) List of environment variables to set in the container. */ env?: Schema$EnvVar[]; /** - * List of sources to populate environment variables in the container. The keys defined within a source must be a C_IDENTIFIER. All invalid keys will be reported as an event when the container is starting. When a key exists in multiple sources, the value associated with the last source will take precedence. Values defined by an Env with a duplicate key will take precedence. Cannot be updated. +optional + * (Optional) List of sources to populate environment variables in the container. The keys defined within a source must be a C_IDENTIFIER. All invalid keys will be reported as an event when the container is starting. When a key exists in multiple sources, the value associated with the last source will take precedence. Values defined by an Env with a duplicate key will take precedence. Cannot be updated. */ envFrom?: Schema$EnvFromSource[]; /** - * Docker image name. More info: https://kubernetes.io/docs/concepts/containers/images + * Only supports containers from Google Container Registry or Artifact Registry URL of the Container image. More info: https://kubernetes.io/docs/concepts/containers/images */ image?: string | null; /** - * Image pull policy. One of Always, Never, IfNotPresent. Defaults to Always if :latest tag is specified, or IfNotPresent otherwise. Cannot be updated. More info: https://kubernetes.io/docs/concepts/containers/images#updating-images +optional + * (Optional) Image pull policy. One of Always, Never, IfNotPresent. Defaults to Always if :latest tag is specified, or IfNotPresent otherwise. More info: https://kubernetes.io/docs/concepts/containers/images#updating-images */ imagePullPolicy?: string | null; /** - * Actions that the management system should take in response to container lifecycle events. Cannot be updated. +optional - */ - lifecycle?: Schema$Lifecycle; - /** - * Periodic probe of container liveness. Container will be restarted if the probe fails. Cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes +optional + * (Optional) Periodic probe of container liveness. Container will be restarted if the probe fails. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes */ livenessProbe?: Schema$Probe; /** - * Name of the container specified as a DNS_LABEL. Each container must have a unique name (DNS_LABEL). Cannot be updated. + * (Optional) Name of the container specified as a DNS_LABEL. Currently unused in Cloud Run. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#dns-label-names */ name?: string | null; /** - * List of ports to expose from the container. Exposing a port here gives the system additional information about the network connections a container uses, but is primarily informational. Not specifying a port here DOES NOT prevent that port from being exposed. Any port which is listening on the default "0.0.0.0" address inside a container will be accessible from the network. Cannot be updated. +optional + * (Optional) List of ports to expose from the container. Only a single port can be specified. The specified ports must be listening on all interfaces (0.0.0.0) within the container to be accessible. If omitted, a port number will be chosen and passed to the container through the PORT environment variable for the container to listen on. */ ports?: Schema$ContainerPort[]; /** - * Periodic probe of container service readiness. Container will be removed from service endpoints if the probe fails. Cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes +optional + * (Optional) Periodic probe of container service readiness. Container will be removed from service endpoints if the probe fails. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes */ readinessProbe?: Schema$Probe; /** - * Compute Resources required by this container. Cannot be updated. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources +optional + * (Optional) Compute Resources required by this container. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources */ resources?: Schema$ResourceRequirements; /** - * Security options the pod should run with. More info: https://kubernetes.io/docs/concepts/policy/security-context/ More info: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/ +optional + * (Optional) Security options the pod should run with. More info: https://kubernetes.io/docs/concepts/policy/security-context/ More info: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/ */ securityContext?: Schema$SecurityContext; /** - * Whether this container should allocate a buffer for stdin in the container runtime. If this is not set, reads from stdin in the container will always result in EOF. Default is false. +optional - */ - stdin?: boolean | null; - /** - * Whether the container runtime should close the stdin channel after it has been opened by a single attach. When stdin is true the stdin stream will remain open across multiple attach sessions. If stdinOnce is set to true, stdin is opened on container start, is empty until the first client attaches to stdin, and then remains open and accepts data until the client disconnects, at which time stdin is closed and remains closed until the container is restarted. If this flag is false, a container processes that reads from stdin will never receive an EOF. Default is false +optional + * (Optional) Startup probe of application within the container. All other probes are disabled if a startup probe is provided, until it succeeds. Container will not be added to service endpoints if the probe fails. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes */ - stdinOnce?: boolean | null; + startupProbe?: Schema$Probe; /** - * Optional: Path at which the file to which the container's termination message will be written is mounted into the container's filesystem. Message written is intended to be brief final status, such as an assertion failure message. Will be truncated by the node if greater than 4096 bytes. The total message length across all containers will be limited to 12kb. Defaults to /dev/termination-log. Cannot be updated. +optional + * (Optional) Path at which the file to which the container's termination message will be written is mounted into the container's filesystem. Message written is intended to be brief final status, such as an assertion failure message. Will be truncated by the node if greater than 4096 bytes. The total message length across all containers will be limited to 12kb. Defaults to /dev/termination-log. */ terminationMessagePath?: string | null; /** - * Indicate how the termination message should be populated. File will use the contents of terminationMessagePath to populate the container status message on both success and failure. FallbackToLogsOnError will use the last chunk of container log output if the termination message file is empty and the container exited with an error. The log output is limited to 2048 bytes or 80 lines, whichever is smaller. Defaults to File. Cannot be updated. +optional + * (Optional) Indicate how the termination message should be populated. File will use the contents of terminationMessagePath to populate the container status message on both success and failure. FallbackToLogsOnError will use the last chunk of container log output if the termination message file is empty and the container exited with an error. The log output is limited to 2048 bytes or 80 lines, whichever is smaller. Defaults to File. Cannot be updated. */ terminationMessagePolicy?: string | null; /** - * Whether this container should allocate a TTY for itself, also requires 'stdin' to be true. Default is false. +optional - */ - tty?: boolean | null; - /** - * volumeDevices is the list of block devices to be used by the container. This is an alpha feature and may change in the future. +optional - */ - volumeDevices?: Schema$VolumeDevice[]; - /** - * Pod volumes to mount into the container's filesystem. Cannot be updated. +optional + * (Optional) Volume to mount into the container's filesystem. Only supports SecretVolumeSources. Pod volumes to mount into the container's filesystem. */ volumeMounts?: Schema$VolumeMount[]; /** - * Container's working directory. If not specified, the container runtime's default will be used, which might be configured in the container image. Cannot be updated. +optional + * (Optional) Container's working directory. If not specified, the container runtime's default will be used, which might be configured in the container image. */ workingDir?: string | null; } @@ -291,23 +259,15 @@ export namespace run_v1alpha1 { */ export interface Schema$ContainerPort { /** - * Number of port to expose on the pod's IP address. This must be a valid port number, 0 < x < 65536. + * (Optional) Port number the container listens on. This must be a valid port number, 0 < x < 65536. */ containerPort?: number | null; /** - * What host IP to bind the external port to. +optional - */ - hostIP?: string | null; - /** - * Number of port to expose on the host. If specified, this must be a valid port number, 0 < x < 65536. If HostNetwork is specified, this must match ContainerPort. Most containers do not need this. +optional - */ - hostPort?: number | null; - /** - * If specified, this must be an IANA_SVC_NAME and unique within the pod. Each named port in a pod must have a unique name. Name for the port that can be referred to by services. +optional + * (Optional) If specified, used to specify which protocol to use. Allowed values are "http1" and "h2c". */ name?: string | null; /** - * Protocol for port. Must be UDP or TCP. Defaults to "TCP". +optional + * (Optional) Protocol for port. Must be "TCP". Defaults to "TCP". */ protocol?: string | null; } @@ -316,19 +276,19 @@ export namespace run_v1alpha1 { */ export interface Schema$Empty {} /** - * EnvFromSource represents the source of a set of ConfigMaps + * Not supported by Cloud Run EnvFromSource represents the source of a set of ConfigMaps */ export interface Schema$EnvFromSource { /** - * The ConfigMap to select from +optional + * (Optional) The ConfigMap to select from */ configMapRef?: Schema$ConfigMapEnvSource; /** - * An optional identifier to prepend to each key in the ConfigMap. Must be a C_IDENTIFIER. +optional + * (Optional) An optional identifier to prepend to each key in the ConfigMap. Must be a C_IDENTIFIER. */ prefix?: string | null; /** - * The Secret to select from +optional + * (Optional) The Secret to select from */ secretRef?: Schema$SecretEnvSource; } @@ -341,80 +301,59 @@ export namespace run_v1alpha1 { */ name?: string | null; /** - * Variable references $(VAR_NAME) are expanded using the previous defined environment variables in the container and any route environment variables. If a variable cannot be resolved, the reference in the input string will be unchanged. The $(VAR_NAME) syntax can be escaped with a double $$, ie: $$(VAR_NAME). Escaped references will never be expanded, regardless of whether the variable exists or not. Defaults to "". +optional + * (Optional) Variable references $(VAR_NAME) are expanded using the previous defined environment variables in the container and any route environment variables. If a variable cannot be resolved, the reference in the input string will be unchanged. The $(VAR_NAME) syntax can be escaped with a double $$, ie: $$(VAR_NAME). Escaped references will never be expanded, regardless of whether the variable exists or not. Defaults to "". */ value?: string | null; /** - * Cloud Run fully managed: supported Source for the environment variable's value. Only supports secret_key_ref. Cloud Run for Anthos: supported Source for the environment variable's value. Cannot be used if value is not empty. +optional + * (Optional) Source for the environment variable's value. Only supports secret_key_ref. Source for the environment variable's value. Cannot be used if value is not empty. */ valueFrom?: Schema$EnvVarSource; } /** - * Cloud Run fully managed: not supported Cloud Run on GKE: supported EnvVarSource represents a source for the value of an EnvVar. + * EnvVarSource represents a source for the value of an EnvVar. */ export interface Schema$EnvVarSource { /** - * Cloud Run fully managed: not supported Cloud Run on GKE: supported Selects a key of a ConfigMap. +optional + * (Optional) Not supported by Cloud Run Selects a key of a ConfigMap. */ configMapKeyRef?: Schema$ConfigMapKeySelector; /** - * Cloud Run fully managed: supported. Selects a key (version) of a secret in Secret Manager. Cloud Run for Anthos: supported. Selects a key of a secret in the pod's namespace. +optional + * (Optional) Selects a key (version) of a secret in Secret Manager. */ secretKeyRef?: Schema$SecretKeySelector; } /** - * ExecAction describes a "run in container" action. + * Not supported by Cloud Run ExecAction describes a "run in container" action. */ export interface Schema$ExecAction { /** - * Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy. +optional + * (Optional) Command is the command line to execute inside the container, the working directory for the command is root ('/') in the container's filesystem. The command is simply exec'd, it is not run inside a shell, so traditional shell instructions ('|', etc) won't work. To use a shell, you need to explicitly call out to that shell. Exit status of 0 is treated as live/healthy and non-zero is unhealthy. */ command?: string[] | null; } /** - * Handler defines a specific action that should be taken - */ - export interface Schema$Handler { - /** - * One and only one of the following should be specified. Exec specifies the action to take. +optional - */ - exec?: Schema$ExecAction; - /** - * HTTPGet specifies the http request to perform. +optional - */ - httpGet?: Schema$HTTPGetAction; - /** - * TCPSocket specifies an action involving a TCP port. TCP hooks not yet supported - */ - tcpSocket?: Schema$TCPSocketAction; - } - /** - * HTTPGetAction describes an action based on HTTP Get requests. + * Not supported by Cloud Run HTTPGetAction describes an action based on HTTP Get requests. */ export interface Schema$HTTPGetAction { /** - * Host name to connect to, defaults to the pod IP. You probably want to set "Host" in httpHeaders instead. +optional + * (Optional) Host name to connect to, defaults to the pod IP. You probably want to set "Host" in httpHeaders instead. */ host?: string | null; /** - * Custom headers to set in the request. HTTP allows repeated headers. +optional + * (Optional) Custom headers to set in the request. HTTP allows repeated headers. */ httpHeaders?: Schema$HTTPHeader[]; /** - * Path to access on the HTTP server. +optional + * (Optional) Path to access on the HTTP server. */ path?: string | null; /** - * Name or number of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. - */ - port?: Schema$IntOrString; - /** - * Scheme to use for connecting to the host. Defaults to HTTP. +optional + * (Optional) Scheme to use for connecting to the host. Defaults to HTTP. */ scheme?: string | null; } /** - * HTTPHeader describes a custom header to be used in HTTP probes + * Not supported by Cloud Run HTTPHeader describes a custom header to be used in HTTP probes */ export interface Schema$HTTPHeader { /** @@ -497,23 +436,6 @@ export namespace run_v1alpha1 { */ spec?: Schema$InstanceSpec; } - /** - * IntOrString is a type that can hold an int32 or a string. When used in JSON or YAML marshalling and unmarshalling, it produces or consumes the inner type. This allows you to have, for example, a JSON field that can accept a name or number. - */ - export interface Schema$IntOrString { - /** - * The int value. - */ - intVal?: number | null; - /** - * The string value. - */ - strVal?: string | null; - /** - * The type of the value. - */ - type?: number | null; - } /** * Job represents the configuration of a single job. A job an immutable resource that references a container image which is run to completion. */ @@ -643,31 +565,18 @@ export namespace run_v1alpha1 { */ export interface Schema$KeyToPath { /** - * Cloud Run fully managed: supported The Cloud Secret Manager secret version. Can be 'latest' for the latest value or an integer for a specific version. Cloud Run for Anthos: supported The key to project. + * The Cloud Secret Manager secret version. Can be 'latest' for the latest value or an integer for a specific version. The key to project. */ key?: string | null; /** - * Mode bits to use on this file, must be a value between 0 and 0777. If not specified, the volume defaultMode will be used. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set. +optional + * (Optional) Mode bits to use on this file, must be a value between 0000 and 0777. If not specified, the volume defaultMode will be used. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set. */ mode?: number | null; /** - * Cloud Run fully managed: supported Cloud Run for Anthos: supported The relative path of the file to map the key to. May not be an absolute path. May not contain the path element '..'. May not start with the string '..'. + * The relative path of the file to map the key to. May not be an absolute path. May not contain the path element '..'. May not start with the string '..'. */ path?: string | null; } - /** - * Lifecycle describes actions that the management system should take in response to container lifecycle events. For the PostStart and PreStop lifecycle handlers, management of the container blocks until the action is complete, unless the container process fails, in which case the handler is aborted. - */ - export interface Schema$Lifecycle { - /** - * PostStart is called immediately after a container is created. If the handler fails, the container is terminated and restarted according to its restart policy. Other management of the container blocks until the hook completes. More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks +optional - */ - postStart?: Schema$Handler; - /** - * PreStop is called immediately before a container is terminated. The container is terminated after the handler completes. The reason for termination is passed to the handler. Regardless of the outcome of the handler, the container is eventually terminated. Other management of the container blocks until the hook completes. More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks +optional - */ - preStop?: Schema$Handler; - } /** * ListJobsResponse is a list of Jobs resources. */ @@ -715,52 +624,52 @@ export namespace run_v1alpha1 { selfLink?: string | null; } /** - * LocalObjectReference contains enough information to let you locate the referenced object inside the same namespace. + * Not supported by Cloud Run LocalObjectReference contains enough information to let you locate the referenced object inside the same namespace. */ export interface Schema$LocalObjectReference { /** - * Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + * (Optional) Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names */ name?: string | null; } /** - * ObjectMeta is metadata that all persisted resources must have, which includes all objects users must create. + * k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta is metadata that all persisted resources must have, which includes all objects users must create. */ export interface Schema$ObjectMeta { /** - * Annotations is an unstructured key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: http://kubernetes.io/docs/user-guide/annotations +optional + * (Optional) Annotations is an unstructured key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: http://kubernetes.io/docs/user-guide/annotations */ annotations?: {[key: string]: string} | null; /** - * Not currently supported by Cloud Run. The name of the cluster which the object belongs to. This is used to distinguish resources with same name and namespace in different clusters. This field is not set anywhere right now and apiserver is going to ignore it if set in create or update request. +optional + * (Optional) Not supported by Cloud Run The name of the cluster which the object belongs to. This is used to distinguish resources with same name and namespace in different clusters. This field is not set anywhere right now and apiserver is going to ignore it if set in create or update request. */ clusterName?: string | null; /** - * CreationTimestamp is a timestamp representing the server time when this object was created. It is not guaranteed to be set in happens-before order across separate operations. Clients may not set this value. It is represented in RFC3339 form and is in UTC. Populated by the system. Read-only. Null for lists. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata +optional + * (Optional) CreationTimestamp is a timestamp representing the server time when this object was created. It is not guaranteed to be set in happens-before order across separate operations. Clients may not set this value. It is represented in RFC3339 form and is in UTC. Populated by the system. Read-only. Null for lists. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata */ creationTimestamp?: string | null; /** - * Not currently supported by Cloud Run. Number of seconds allowed for this object to gracefully terminate before it will be removed from the system. Only set when deletionTimestamp is also set. May only be shortened. Read-only. +optional + * (Optional) Not supported by Cloud Run Number of seconds allowed for this object to gracefully terminate before it will be removed from the system. Only set when deletionTimestamp is also set. May only be shortened. Read-only. */ deletionGracePeriodSeconds?: number | null; /** - * DeletionTimestamp is RFC 3339 date and time at which this resource will be deleted. This field is set by the server when a graceful deletion is requested by the user, and is not directly settable by a client. The resource is expected to be deleted (no longer visible from resource lists, and not reachable by name) after the time in this field, once the finalizers list is empty. As long as the finalizers list contains items, deletion is blocked. Once the deletionTimestamp is set, this value may not be unset or be set further into the future, although it may be shortened or the resource may be deleted prior to this time. For example, a user may request that a pod is deleted in 30 seconds. The Kubelet will react by sending a graceful termination signal to the containers in the pod. After that 30 seconds, the Kubelet will send a hard termination signal (SIGKILL) to the container and after cleanup, remove the pod from the API. In the presence of network partitions, this object may still exist after this timestamp, until an administrator or automated process can determine the resource is fully terminated. If not set, graceful deletion of the object has not been requested. Populated by the system when a graceful deletion is requested. Read-only. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata +optional + * (Optional) Not supported by Cloud Run DeletionTimestamp is RFC 3339 date and time at which this resource will be deleted. This field is set by the server when a graceful deletion is requested by the user, and is not directly settable by a client. The resource is expected to be deleted (no longer visible from resource lists, and not reachable by name) after the time in this field, once the finalizers list is empty. As long as the finalizers list contains items, deletion is blocked. Once the deletionTimestamp is set, this value may not be unset or be set further into the future, although it may be shortened or the resource may be deleted prior to this time. For example, a user may request that a pod is deleted in 30 seconds. The Kubelet will react by sending a graceful termination signal to the containers in the pod. After that 30 seconds, the Kubelet will send a hard termination signal (SIGKILL) to the container and after cleanup, remove the pod from the API. In the presence of network partitions, this object may still exist after this timestamp, until an administrator or automated process can determine the resource is fully terminated. If not set, graceful deletion of the object has not been requested. Populated by the system when a graceful deletion is requested. Read-only. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata */ deletionTimestamp?: string | null; /** - * Not currently supported by Cloud Run. Must be empty before the object is deleted from the registry. Each entry is an identifier for the responsible component that will remove the entry from the list. If the deletionTimestamp of the object is non-nil, entries in this list can only be removed. +optional +patchStrategy=merge + * (Optional) Not supported by Cloud Run Must be empty before the object is deleted from the registry. Each entry is an identifier for the responsible component that will remove the entry from the list. If the deletionTimestamp of the object is non-nil, entries in this list can only be removed. +patchStrategy=merge */ finalizers?: string[] | null; /** - * Not currently supported by Cloud Run. GenerateName is an optional prefix, used by the server, to generate a unique name ONLY IF the Name field has not been provided. If this field is used, the name returned to the client will be different than the name passed. This value will also be combined with a unique suffix. The provided value has the same validation rules as the Name field, and may be truncated by the length of the suffix required to make the value unique on the server. If this field is specified and the generated name exists, the server will NOT return a 409 - instead, it will either return 201 Created or 500 with Reason ServerTimeout indicating a unique name could not be found in the time allotted, and the client should retry (optionally after the time indicated in the Retry-After header). Applied only if Name is not specified. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#idempotency +optional string generateName = 2; + * (Optional) Not supported by Cloud Run GenerateName is an optional prefix, used by the server, to generate a unique name ONLY IF the Name field has not been provided. If this field is used, the name returned to the client will be different than the name passed. This value will also be combined with a unique suffix. The provided value has the same validation rules as the Name field, and may be truncated by the length of the suffix required to make the value unique on the server. If this field is specified and the generated name exists, the server will NOT return a 409 - instead, it will either return 201 Created or 500 with Reason ServerTimeout indicating a unique name could not be found in the time allotted, and the client should retry (optionally after the time indicated in the Retry-After header). Applied only if Name is not specified. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#idempotency string generateName = 2; */ generateName?: string | null; /** - * A sequence number representing a specific generation of the desired state. Populated by the system. Read-only. +optional + * (Optional) A sequence number representing a specific generation of the desired state. Populated by the system. Read-only. */ generation?: number | null; /** - * Map of string keys and values that can be used to organize and categorize (scope and select) objects. May match selectors of replication controllers and routes. More info: http://kubernetes.io/docs/user-guide/labels +optional + * (Optional) Map of string keys and values that can be used to organize and categorize (scope and select) objects. May match selectors of replication controllers and routes. More info: http://kubernetes.io/docs/user-guide/labels */ labels?: {[key: string]: string} | null; /** @@ -772,19 +681,19 @@ export namespace run_v1alpha1 { */ namespace?: string | null; /** - * List of objects that own this object. If ALL objects in the list have been deleted, this object will be garbage collected. +optional + * (Optional) Not supported by Cloud Run List of objects that own this object. If ALL objects in the list have been deleted, this object will be garbage collected. */ ownerReferences?: Schema$OwnerReference[]; /** - * An opaque value that represents the internal version of this object that can be used by clients to determine when objects have changed. May be used for optimistic concurrency, change detection, and the watch operation on a resource or set of resources. Clients must treat these values as opaque and passed unmodified back to the server. They may only be valid for a particular resource or set of resources. Populated by the system. Read-only. Value must be treated as opaque by clients and . More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#concurrency-control-and-consistency +optional + * Optional. An opaque value that represents the internal version of this object that can be used by clients to determine when objects have changed. May be used for optimistic concurrency, change detection, and the watch operation on a resource or set of resources. Clients must treat these values as opaque and passed unmodified back to the server or omit the value to disable conflict-detection. They may only be valid for a particular resource or set of resources. Populated by the system. Read-only. Value must be treated as opaque by clients or omitted. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency */ resourceVersion?: string | null; /** - * SelfLink is a URL representing this object. Populated by the system. Read-only. +optional string selfLink = 4; + * (Optional) SelfLink is a URL representing this object. Populated by the system. Read-only. string selfLink = 4; */ selfLink?: string | null; /** - * UID is the unique in time and space value for this object. It is typically generated by the server on successful creation of a resource and is not allowed to change on PUT operations. Populated by the system. Read-only. More info: http://kubernetes.io/docs/user-guide/identifiers#uids +optional + * (Optional) UID is the unique in time and space value for this object. It is typically generated by the server on successful creation of a resource and is not allowed to change on PUT operations. Populated by the system. Read-only. More info: http://kubernetes.io/docs/user-guide/identifiers#uids */ uid?: string | null; } @@ -818,66 +727,57 @@ export namespace run_v1alpha1 { uid?: string | null; } /** - * Probe describes a health check to be performed against a container to determine whether it is alive or ready to receive traffic. + * Not supported by Cloud Run Probe describes a health check to be performed against a container to determine whether it is alive or ready to receive traffic. */ export interface Schema$Probe { /** - * Minimum consecutive failures for the probe to be considered failed after having succeeded. Defaults to 3. Minimum value is 1. +optional + * (Optional) One and only one of the following should be specified. Exec specifies the action to take. A field inlined from the Handler message. + */ + exec?: Schema$ExecAction; + /** + * (Optional) Minimum consecutive failures for the probe to be considered failed after having succeeded. Defaults to 3. Minimum value is 1. */ failureThreshold?: number | null; /** - * The action taken to determine the health of a container + * (Optional) HTTPGet specifies the http request to perform. A field inlined from the Handler message. */ - handler?: Schema$Handler; + httpGet?: Schema$HTTPGetAction; /** - * Number of seconds after the container has started before liveness probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes +optional + * (Optional) Number of seconds after the container has started before liveness probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes */ initialDelaySeconds?: number | null; /** - * How often (in seconds) to perform the probe. Default to 10 seconds. Minimum value is 1. +optional + * (Optional) How often (in seconds) to perform the probe. Default to 10 seconds. Minimum value is 1. */ periodSeconds?: number | null; /** - * Minimum consecutive successes for the probe to be considered successful after having failed. Defaults to 1. Must be 1 for liveness. Minimum value is 1. +optional + * (Optional) Minimum consecutive successes for the probe to be considered successful after having failed. Defaults to 1. Must be 1 for liveness. Minimum value is 1. */ successThreshold?: number | null; /** - * Number of seconds after which the probe times out. Defaults to 1 second. Minimum value is 1. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes +optional + * (Optional) TCPSocket specifies an action involving a TCP port. TCP hooks not yet supported A field inlined from the Handler message. */ - timeoutSeconds?: number | null; - } - /** - * The view model of a single quantity, e.g. "800 MiB". Corresponds to https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/generated.proto - */ - export interface Schema$Quantity { + tcpSocket?: Schema$TCPSocketAction; /** - * Stringified version of the quantity, e.g., "800 MiB". + * (Optional) Number of seconds after which the probe times out. Defaults to 1 second. Minimum value is 1. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes */ - string?: string | null; + timeoutSeconds?: number | null; } /** * ResourceRequirements describes the compute resource requirements. */ export interface Schema$ResourceRequirements { /** - * Limits describes the maximum amount of compute resources allowed. The values of the map is string form of the 'quantity' k8s type: https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/quantity.go + * (Optional) Only memory and CPU are supported. Note: The only supported values for CPU are '1', '2', and '4'. Setting 4 CPU requires at least 2Gi of memory. Limits describes the maximum amount of compute resources allowed. The values of the map is string form of the 'quantity' k8s type: https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/quantity.go */ limits?: {[key: string]: string} | null; /** - * Limits describes the maximum amount of compute resources allowed. This is a temporary field created to migrate away from the map limits field. This is done to become compliant with k8s style API. This field is deprecated in favor of limits field. - */ - limitsInMap?: {[key: string]: Schema$Quantity} | null; - /** - * Requests describes the minimum amount of compute resources required. If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, otherwise to an implementation-defined value. The values of the map is string form of the 'quantity' k8s type: https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/quantity.go + * (Optional) Only memory and CPU are supported. Note: The only supported values for CPU are '1' and '2'. Requests describes the minimum amount of compute resources required. If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, otherwise to an implementation-defined value. The values of the map is string form of the 'quantity' k8s type: https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/quantity.go */ requests?: {[key: string]: string} | null; - /** - * Requests describes the minimum amount of compute resources required. If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, otherwise to an implementation-defined value. This is a temporary field created to migrate away from the map requests field. This is done to become compliant with k8s style API. This field is deprecated in favor of requests field. - */ - requestsInMap?: {[key: string]: Schema$Quantity} | null; } /** - * SecretEnvSource selects a Secret to populate the environment variables with. The contents of the target Secret's Data field will represent the key-value pairs as environment variables. + * Not supported by Cloud Run SecretEnvSource selects a Secret to populate the environment variables with. The contents of the target Secret's Data field will represent the key-value pairs as environment variables. */ export interface Schema$SecretEnvSource { /** @@ -885,20 +785,20 @@ export namespace run_v1alpha1 { */ localObjectReference?: Schema$LocalObjectReference; /** - * Cloud Run fully managed: not supported Cloud Run for Anthos: supported The Secret to select from. + * The Secret to select from. */ name?: string | null; /** - * Cloud Run fully managed: not supported Cloud Run for Anthos: supported Specify whether the Secret must be defined +optional + * (Optional) Specify whether the Secret must be defined */ optional?: boolean | null; } /** - * Cloud Run fully managed: supported Cloud Run on GKE: supported SecretKeySelector selects a key of a Secret. + * SecretKeySelector selects a key of a Secret. */ export interface Schema$SecretKeySelector { /** - * Cloud Run fully managed: supported A Cloud Secret Manager secret version. Must be 'latest' for the latest version or an integer for a specific version. Cloud Run for Anthos: supported The key of the secret to select from. Must be a valid secret key. + * A Cloud Secret Manager secret version. Must be 'latest' for the latest version or an integer for a specific version. The key of the secret to select from. Must be a valid secret key. */ key?: string | null; /** @@ -906,108 +806,59 @@ export namespace run_v1alpha1 { */ localObjectReference?: Schema$LocalObjectReference; /** - * Cloud Run fully managed: supported The name of the secret in Cloud Secret Manager. By default, the secret is assumed to be in the same project. If the secret is in another project, you must define an alias. An alias definition has the form: :projects//secrets/. If multiple alias definitions are needed, they must be separated by commas. The alias definitions must be set on the run.googleapis.com/secrets annotation. Cloud Run for Anthos: supported The name of the secret in the pod's namespace to select from. + * The name of the secret in Cloud Secret Manager. By default, the secret is assumed to be in the same project. If the secret is in another project, you must define an alias. An alias definition has the form: :projects//secrets/. If multiple alias definitions are needed, they must be separated by commas. The alias definitions must be set on the run.googleapis.com/secrets annotation. The name of the secret in the pod's namespace to select from. */ name?: string | null; /** - * Cloud Run fully managed: not supported Cloud Run on GKE: supported Specify whether the Secret or its key must be defined +optional + * (Optional) Specify whether the Secret or its key must be defined */ optional?: boolean | null; } /** - * The contents of the target Secret's Data field will be presented in a volume as files using the keys in the Data field as the file names. + * The secret's value will be presented as the content of a file whose name is defined in the item path. If no items are defined, the name of the file is the secret_name. The contents of the target Secret's Data field will be presented in a volume as files using the keys in the Data field as the file names. */ export interface Schema$SecretVolumeSource { /** - * Mode bits to use on created files by default. Must be a value between 0 and 0777. Defaults to 0644. Directories within the path are not affected by this setting. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set. + * (Optional) Mode bits to use on created files by default. Must be a value between 0000 and 0777. Defaults to 0644. Directories within the path are not affected by this setting. This might be in conflict with other options that affect the file mode, like fsGroup, and the result can be other mode bits set. NOTE: This is an integer representation of the mode bits. So, the integer value should look exactly as the chmod numeric notation, i.e. Unix chmod "777" (a=rwx) should have the integer value 777. */ defaultMode?: number | null; /** - * Cloud Run fully managed: supported If unspecified, the volume will expose a file whose name is the secret_name. If specified, the key will be used as the version to fetch from Cloud Secret Manager and the path will be the name of the file exposed in the volume. When items are defined, they must specify a key and a path. Cloud Run for Anthos: supported If unspecified, each key-value pair in the Data field of the referenced Secret will be projected into the volume as a file whose name is the key and content is the value. If specified, the listed keys will be projected into the specified paths, and unlisted keys will not be present. If a key is specified which is not present in the Secret, the volume setup will error unless it is marked optional. + * (Optional) If unspecified, the volume will expose a file whose name is the secret_name. If specified, the key will be used as the version to fetch from Cloud Secret Manager and the path will be the name of the file exposed in the volume. When items are defined, they must specify a key and a path. If unspecified, each key-value pair in the Data field of the referenced Secret will be projected into the volume as a file whose name is the key and content is the value. If specified, the listed keys will be projected into the specified paths, and unlisted keys will not be present. If a key is specified that is not present in the Secret, the volume setup will error unless it is marked optional. */ items?: Schema$KeyToPath[]; /** - * Specify whether the Secret or its keys must be defined. + * (Optional) Specify whether the Secret or its keys must be defined. */ optional?: boolean | null; /** - * Cloud Run fully managed: supported The name of the secret in Cloud Secret Manager. By default, the secret is assumed to be in the same project. If the secret is in another project, you must define an alias. An alias definition has the form: :projects//secrets/. If multiple alias definitions are needed, they must be separated by commas. The alias definitions must be set on the run.googleapis.com/secrets annotation. Cloud Run for Anthos: supported Name of the secret in the container's namespace to use. + * The name of the secret in Cloud Secret Manager. By default, the secret is assumed to be in the same project. If the secret is in another project, you must define an alias. An alias definition has the form: :projects//secrets/. If multiple alias definitions are needed, they must be separated by commas. The alias definitions must be set on the run.googleapis.com/secrets annotation. Name of the secret in the container's namespace to use. */ secretName?: string | null; } /** - * SecurityContext holds security configuration that will be applied to a container. Some fields are present in both SecurityContext and PodSecurityContext. When both are set, the values in SecurityContext take precedence. + * Not supported by Cloud Run SecurityContext holds security configuration that will be applied to a container. Some fields are present in both SecurityContext and PodSecurityContext. When both are set, the values in SecurityContext take precedence. */ export interface Schema$SecurityContext { /** - * AllowPrivilegeEscalation controls whether a process can gain more privileges than its parent process. This bool directly controls if the no_new_privs flag will be set on the container process. AllowPrivilegeEscalation is true always when the container is: 1) run as Privileged 2) has CAP_SYS_ADMIN +optional - */ - allowPrivilegeEscalation?: boolean | null; - /** - * The capabilities to add/drop when running containers. Defaults to the default set of capabilities granted by the container runtime. +optional - */ - capabilities?: Schema$Capabilities; - /** - * Run container in privileged mode. Processes in privileged containers are essentially equivalent to root on the host. Defaults to false. +optional - */ - privileged?: boolean | null; - /** - * Whether this container has a read-only root filesystem. Default is false. +optional - */ - readOnlyRootFilesystem?: boolean | null; - /** - * The GID to run the entrypoint of the container process. Uses runtime default if unset. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. +optional - */ - runAsGroup?: number | null; - /** - * Indicates that the container must run as a non-root user. If true, the Kubelet will validate the image at runtime to ensure that it does not run as UID 0 (root) and fail to start the container if it does. If unset or false, no such validation will be performed. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. +optional - */ - runAsNonRoot?: boolean | null; - /** - * The UID to run the entrypoint of the container process. Defaults to user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. +optional + * (Optional) The UID to run the entrypoint of the container process. Defaults to user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. */ runAsUser?: number | null; - /** - * The SELinux context to be applied to the container. If unspecified, the container runtime will allocate a random SELinux context for each container. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. +optional - */ - seLinuxOptions?: Schema$SELinuxOptions; } /** - * SELinuxOptions are the labels to be applied to the container - */ - export interface Schema$SELinuxOptions { - /** - * Level is SELinux level label that applies to the container. +optional - */ - level?: string | null; - /** - * Role is a SELinux role label that applies to the container. +optional - */ - role?: string | null; - /** - * Type is a SELinux type label that applies to the container. +optional - */ - type?: string | null; - /** - * User is a SELinux user label that applies to the container. +optional - */ - user?: string | null; - } - /** - * TCPSocketAction describes an action based on opening a socket + * Not supported by Cloud Run TCPSocketAction describes an action based on opening a socket */ export interface Schema$TCPSocketAction { /** - * Optional: Host name to connect to, defaults to the pod IP. +optional + * (Optional) Optional: Host name to connect to, defaults to the pod IP. */ host?: string | null; /** - * Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. + * Number or name of the port to access on the container. Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. This field is currently limited to integer types only because of proto's inability to properly support the IntOrString golang type. */ - port?: Schema$IntOrString; + port?: number | null; } /** - * Volume represents a named volume in a container. + * Not supported by Cloud Run Volume represents a named volume in a container. */ export interface Schema$Volume { configMap?: Schema$ConfigMapVolumeSource; @@ -1018,40 +869,23 @@ export namespace run_v1alpha1 { secret?: Schema$SecretVolumeSource; } /** - * volumeDevice describes a mapping of a raw block device within a container. - */ - export interface Schema$VolumeDevice { - /** - * devicePath is the path inside of the container that the device will be mapped to. - */ - devicePath?: string | null; - /** - * name must match the name of a persistentVolumeClaim in the pod - */ - name?: string | null; - } - /** - * VolumeMount describes a mounting of a Volume within a container. + * Not supported by Cloud Run VolumeMount describes a mounting of a Volume within a container. */ export interface Schema$VolumeMount { /** * Path within the container at which the volume should be mounted. Must not contain ':'. */ mountPath?: string | null; - /** - * mountPropagation determines how mounts are propagated from the host to container and the other way around. When not set, MountPropagationHostToContainer is used. This field is beta in 1.10. +optional - */ - mountPropagation?: string | null; /** * This must match the Name of a Volume. */ name?: string | null; /** - * Mounted read-only if true, read-write otherwise (false or unspecified). Defaults to false. +optional + * (Optional) Only true is accepted. Defaults to true. */ readOnly?: boolean | null; /** - * Path within the volume from which the container's volume should be mounted. Defaults to "" (volume's root). +optional + * (Optional) Path within the volume from which the container's volume should be mounted. Defaults to "" (volume's root). */ subPath?: string | null; } diff --git a/src/apis/sasportal/v1alpha1.ts b/src/apis/sasportal/v1alpha1.ts index 09c6cb36fd2..64606254cc6 100644 --- a/src/apis/sasportal/v1alpha1.ts +++ b/src/apis/sasportal/v1alpha1.ts @@ -362,7 +362,12 @@ export namespace sasportal_v1alpha1 { /** * Device data overridable by both SAS Portal and registration requests. */ - export interface Schema$SasPortalDeviceMetadata {} + export interface Schema$SasPortalDeviceMetadata { + /** + * If populated, the Antenna Model Pattern to use. Format is: RecordCreatorId:PatternId + */ + antennaModel?: string | null; + } /** * Information about the model of the device. */ diff --git a/src/apis/spanner/v1.ts b/src/apis/spanner/v1.ts index 8626b8f4893..a24ddeae4c4 100644 --- a/src/apis/spanner/v1.ts +++ b/src/apis/spanner/v1.ts @@ -1735,7 +1735,7 @@ export namespace spanner_v1 { readTimestamp?: string | null; } /** - * # Transactions Each session can have at most one active transaction at a time (note that standalone reads and queries use a transaction internally and do count towards the one transaction limit). After the active transaction is completed, the session can immediately be re-used for the next transaction. It is not necessary to create a new session for each transaction. # Transaction Modes Cloud Spanner supports three transaction modes: 1. Locking read-write. This type of transaction is the only way to write data into Cloud Spanner. These transactions rely on pessimistic locking and, if necessary, two-phase commit. Locking read-write transactions may abort, requiring the application to retry. 2. Snapshot read-only. This transaction type provides guaranteed consistency across several reads, but does not allow writes. Snapshot read-only transactions can be configured to read at timestamps in the past. Snapshot read-only transactions do not need to be committed. 3. Partitioned DML. This type of transaction is used to execute a single Partitioned DML statement. Partitioned DML partitions the key space and runs the DML statement over each partition in parallel using separate, internal transactions that commit independently. Partitioned DML transactions do not need to be committed. For transactions that only read, snapshot read-only transactions provide simpler semantics and are almost always faster. In particular, read-only transactions do not take locks, so they do not conflict with read-write transactions. As a consequence of not taking locks, they also do not abort, so retry loops are not needed. Transactions may only read/write data in a single database. They may, however, read/write data in different tables within that database. ## Locking Read-Write Transactions Locking transactions may be used to atomically read-modify-write data anywhere in a database. This type of transaction is externally consistent. Clients should attempt to minimize the amount of time a transaction is active. Faster transactions commit with higher probability and cause less contention. Cloud Spanner attempts to keep read locks active as long as the transaction continues to do reads, and the transaction has not been terminated by Commit or Rollback. Long periods of inactivity at the client may cause Cloud Spanner to release a transaction's locks and abort it. Conceptually, a read-write transaction consists of zero or more reads or SQL statements followed by Commit. At any time before Commit, the client can send a Rollback request to abort the transaction. ## Semantics Cloud Spanner can commit the transaction if all read locks it acquired are still valid at commit time, and it is able to acquire write locks for all writes. Cloud Spanner can abort the transaction for any reason. If a commit attempt returns `ABORTED`, Cloud Spanner guarantees that the transaction has not modified any user data in Cloud Spanner. Unless the transaction commits, Cloud Spanner makes no guarantees about how long the transaction's locks were held for. It is an error to use Cloud Spanner locks for any sort of mutual exclusion other than between Cloud Spanner transactions themselves. ## Retrying Aborted Transactions When a transaction aborts, the application can choose to retry the whole transaction again. To maximize the chances of successfully committing the retry, the client should execute the retry in the same session as the original attempt. The original session's lock priority increases with each consecutive abort, meaning that each attempt has a slightly better chance of success than the previous. Under some circumstances (e.g., many transactions attempting to modify the same row(s)), a transaction can abort many times in a short period before successfully committing. Thus, it is not a good idea to cap the number of retries a transaction can attempt; instead, it is better to limit the total amount of wall time spent retrying. ## Idle Transactions A transaction is considered idle if it has no outstanding reads or SQL queries and has not started a read or SQL query within the last 10 seconds. Idle transactions can be aborted by Cloud Spanner so that they don't hold on to locks indefinitely. In that case, the commit will fail with error `ABORTED`. If this behavior is undesirable, periodically executing a simple SQL query in the transaction (e.g., `SELECT 1`) prevents the transaction from becoming idle. ## Snapshot Read-Only Transactions Snapshot read-only transactions provides a simpler method than locking read-write transactions for doing several consistent reads. However, this type of transaction does not support writes. Snapshot transactions do not take locks. Instead, they work by choosing a Cloud Spanner timestamp, then executing all reads at that timestamp. Since they do not acquire locks, they do not block concurrent read-write transactions. Unlike locking read-write transactions, snapshot read-only transactions never abort. They can fail if the chosen read timestamp is garbage collected; however, the default garbage collection policy is generous enough that most applications do not need to worry about this in practice. Snapshot read-only transactions do not need to call Commit or Rollback (and in fact are not permitted to do so). To execute a snapshot transaction, the client specifies a timestamp bound, which tells Cloud Spanner how to choose a read timestamp. The types of timestamp bound are: - Strong (the default). - Bounded staleness. - Exact staleness. If the Cloud Spanner database to be read is geographically distributed, stale read-only transactions can execute more quickly than strong or read-write transaction, because they are able to execute far from the leader replica. Each type of timestamp bound is discussed in detail below. ## Strong Strong reads are guaranteed to see the effects of all transactions that have committed before the start of the read. Furthermore, all rows yielded by a single read are consistent with each other -- if any part of the read observes a transaction, all parts of the read see the transaction. Strong reads are not repeatable: two consecutive strong read-only transactions might return inconsistent results if there are concurrent writes. If consistency across reads is required, the reads should be executed within a transaction or at an exact read timestamp. See TransactionOptions.ReadOnly.strong. ## Exact Staleness These timestamp bounds execute reads at a user-specified timestamp. Reads at a timestamp are guaranteed to see a consistent prefix of the global transaction history: they observe modifications done by all transactions with a commit timestamp <= the read timestamp, and observe none of the modifications done by transactions with a larger commit timestamp. They will block until all conflicting transactions that may be assigned commit timestamps <= the read timestamp have finished. The timestamp can either be expressed as an absolute Cloud Spanner commit timestamp or a staleness relative to the current time. These modes do not require a "negotiation phase" to pick a timestamp. As a result, they execute slightly faster than the equivalent boundedly stale concurrency modes. On the other hand, boundedly stale reads usually return fresher results. See TransactionOptions.ReadOnly.read_timestamp and TransactionOptions.ReadOnly.exact_staleness. ## Bounded Staleness Bounded staleness modes allow Cloud Spanner to pick the read timestamp, subject to a user-provided staleness bound. Cloud Spanner chooses the newest timestamp within the staleness bound that allows execution of the reads at the closest available replica without blocking. All rows yielded are consistent with each other -- if any part of the read observes a transaction, all parts of the read see the transaction. Boundedly stale reads are not repeatable: two stale reads, even if they use the same staleness bound, can execute at different timestamps and thus return inconsistent results. Boundedly stale reads execute in two phases: the first phase negotiates a timestamp among all replicas needed to serve the read. In the second phase, reads are executed at the negotiated timestamp. As a result of the two phase execution, bounded staleness reads are usually a little slower than comparable exact staleness reads. However, they are typically able to return fresher results, and are more likely to execute at the closest replica. Because the timestamp negotiation requires up-front knowledge of which rows will be read, it can only be used with single-use read-only transactions. See TransactionOptions.ReadOnly.max_staleness and TransactionOptions.ReadOnly.min_read_timestamp. ## Old Read Timestamps and Garbage Collection Cloud Spanner continuously garbage collects deleted and overwritten data in the background to reclaim storage space. This process is known as "version GC". By default, version GC reclaims versions after they are one hour old. Because of this, Cloud Spanner cannot perform reads at read timestamps more than one hour in the past. This restriction also applies to in-progress reads and/or SQL queries whose timestamp become too old while executing. Reads and SQL queries with too-old read timestamps fail with the error `FAILED_PRECONDITION`. ## Partitioned DML Transactions Partitioned DML transactions are used to execute DML statements with a different execution strategy that provides different, and often better, scalability properties for large, table-wide operations than DML in a ReadWrite transaction. Smaller scoped statements, such as an OLTP workload, should prefer using ReadWrite transactions. Partitioned DML partitions the keyspace and runs the DML statement on each partition in separate, internal transactions. These transactions commit automatically when complete, and run independently from one another. To reduce lock contention, this execution strategy only acquires read locks on rows that match the WHERE clause of the statement. Additionally, the smaller per-partition transactions hold locks for less time. That said, Partitioned DML is not a drop-in replacement for standard DML used in ReadWrite transactions. - The DML statement must be fully-partitionable. Specifically, the statement must be expressible as the union of many statements which each access only a single row of the table. - The statement is not applied atomically to all rows of the table. Rather, the statement is applied atomically to partitions of the table, in independent transactions. Secondary index rows are updated atomically with the base table rows. - Partitioned DML does not guarantee exactly-once execution semantics against a partition. The statement will be applied at least once to each partition. It is strongly recommended that the DML statement should be idempotent to avoid unexpected results. For instance, it is potentially dangerous to run a statement such as `UPDATE table SET column = column + 1` as it could be run multiple times against some rows. - The partitions are committed automatically - there is no support for Commit or Rollback. If the call returns an error, or if the client issuing the ExecuteSql call dies, it is possible that some rows had the statement executed on them successfully. It is also possible that statement was never executed against other rows. - Partitioned DML transactions may only contain the execution of a single DML statement via ExecuteSql or ExecuteStreamingSql. - If any error is encountered during the execution of the partitioned DML operation (for instance, a UNIQUE INDEX violation, division by zero, or a value that cannot be stored due to schema constraints), then the operation is stopped at that point and an error is returned. It is possible that at this point, some partitions have been committed (or even committed multiple times), and other partitions have not been run at all. Given the above, Partitioned DML is good fit for large, database-wide, operations that are idempotent, such as deleting old rows from a very large table. + * Transactions: Each session can have at most one active transaction at a time (note that standalone reads and queries use a transaction internally and do count towards the one transaction limit). After the active transaction is completed, the session can immediately be re-used for the next transaction. It is not necessary to create a new session for each transaction. Transaction Modes: Cloud Spanner supports three transaction modes: 1. Locking read-write. This type of transaction is the only way to write data into Cloud Spanner. These transactions rely on pessimistic locking and, if necessary, two-phase commit. Locking read-write transactions may abort, requiring the application to retry. 2. Snapshot read-only. This transaction type provides guaranteed consistency across several reads, but does not allow writes. Snapshot read-only transactions can be configured to read at timestamps in the past. Snapshot read-only transactions do not need to be committed. 3. Partitioned DML. This type of transaction is used to execute a single Partitioned DML statement. Partitioned DML partitions the key space and runs the DML statement over each partition in parallel using separate, internal transactions that commit independently. Partitioned DML transactions do not need to be committed. For transactions that only read, snapshot read-only transactions provide simpler semantics and are almost always faster. In particular, read-only transactions do not take locks, so they do not conflict with read-write transactions. As a consequence of not taking locks, they also do not abort, so retry loops are not needed. Transactions may only read/write data in a single database. They may, however, read/write data in different tables within that database. Locking Read-Write Transactions: Locking transactions may be used to atomically read-modify-write data anywhere in a database. This type of transaction is externally consistent. Clients should attempt to minimize the amount of time a transaction is active. Faster transactions commit with higher probability and cause less contention. Cloud Spanner attempts to keep read locks active as long as the transaction continues to do reads, and the transaction has not been terminated by Commit or Rollback. Long periods of inactivity at the client may cause Cloud Spanner to release a transaction's locks and abort it. Conceptually, a read-write transaction consists of zero or more reads or SQL statements followed by Commit. At any time before Commit, the client can send a Rollback request to abort the transaction. Semantics: Cloud Spanner can commit the transaction if all read locks it acquired are still valid at commit time, and it is able to acquire write locks for all writes. Cloud Spanner can abort the transaction for any reason. If a commit attempt returns `ABORTED`, Cloud Spanner guarantees that the transaction has not modified any user data in Cloud Spanner. Unless the transaction commits, Cloud Spanner makes no guarantees about how long the transaction's locks were held for. It is an error to use Cloud Spanner locks for any sort of mutual exclusion other than between Cloud Spanner transactions themselves. Retrying Aborted Transactions: When a transaction aborts, the application can choose to retry the whole transaction again. To maximize the chances of successfully committing the retry, the client should execute the retry in the same session as the original attempt. The original session's lock priority increases with each consecutive abort, meaning that each attempt has a slightly better chance of success than the previous. Under some circumstances (e.g., many transactions attempting to modify the same row(s)), a transaction can abort many times in a short period before successfully committing. Thus, it is not a good idea to cap the number of retries a transaction can attempt; instead, it is better to limit the total amount of wall time spent retrying. Idle Transactions: A transaction is considered idle if it has no outstanding reads or SQL queries and has not started a read or SQL query within the last 10 seconds. Idle transactions can be aborted by Cloud Spanner so that they don't hold on to locks indefinitely. In that case, the commit will fail with error `ABORTED`. If this behavior is undesirable, periodically executing a simple SQL query in the transaction (e.g., `SELECT 1`) prevents the transaction from becoming idle. Snapshot Read-Only Transactions: Snapshot read-only transactions provides a simpler method than locking read-write transactions for doing several consistent reads. However, this type of transaction does not support writes. Snapshot transactions do not take locks. Instead, they work by choosing a Cloud Spanner timestamp, then executing all reads at that timestamp. Since they do not acquire locks, they do not block concurrent read-write transactions. Unlike locking read-write transactions, snapshot read-only transactions never abort. They can fail if the chosen read timestamp is garbage collected; however, the default garbage collection policy is generous enough that most applications do not need to worry about this in practice. Snapshot read-only transactions do not need to call Commit or Rollback (and in fact are not permitted to do so). To execute a snapshot transaction, the client specifies a timestamp bound, which tells Cloud Spanner how to choose a read timestamp. The types of timestamp bound are: - Strong (the default). - Bounded staleness. - Exact staleness. If the Cloud Spanner database to be read is geographically distributed, stale read-only transactions can execute more quickly than strong or read-write transaction, because they are able to execute far from the leader replica. Each type of timestamp bound is discussed in detail below. Strong: Strong reads are guaranteed to see the effects of all transactions that have committed before the start of the read. Furthermore, all rows yielded by a single read are consistent with each other -- if any part of the read observes a transaction, all parts of the read see the transaction. Strong reads are not repeatable: two consecutive strong read-only transactions might return inconsistent results if there are concurrent writes. If consistency across reads is required, the reads should be executed within a transaction or at an exact read timestamp. See TransactionOptions.ReadOnly.strong. Exact Staleness: These timestamp bounds execute reads at a user-specified timestamp. Reads at a timestamp are guaranteed to see a consistent prefix of the global transaction history: they observe modifications done by all transactions with a commit timestamp <= the read timestamp, and observe none of the modifications done by transactions with a larger commit timestamp. They will block until all conflicting transactions that may be assigned commit timestamps <= the read timestamp have finished. The timestamp can either be expressed as an absolute Cloud Spanner commit timestamp or a staleness relative to the current time. These modes do not require a "negotiation phase" to pick a timestamp. As a result, they execute slightly faster than the equivalent boundedly stale concurrency modes. On the other hand, boundedly stale reads usually return fresher results. See TransactionOptions.ReadOnly.read_timestamp and TransactionOptions.ReadOnly.exact_staleness. Bounded Staleness: Bounded staleness modes allow Cloud Spanner to pick the read timestamp, subject to a user-provided staleness bound. Cloud Spanner chooses the newest timestamp within the staleness bound that allows execution of the reads at the closest available replica without blocking. All rows yielded are consistent with each other -- if any part of the read observes a transaction, all parts of the read see the transaction. Boundedly stale reads are not repeatable: two stale reads, even if they use the same staleness bound, can execute at different timestamps and thus return inconsistent results. Boundedly stale reads execute in two phases: the first phase negotiates a timestamp among all replicas needed to serve the read. In the second phase, reads are executed at the negotiated timestamp. As a result of the two phase execution, bounded staleness reads are usually a little slower than comparable exact staleness reads. However, they are typically able to return fresher results, and are more likely to execute at the closest replica. Because the timestamp negotiation requires up-front knowledge of which rows will be read, it can only be used with single-use read-only transactions. See TransactionOptions.ReadOnly.max_staleness and TransactionOptions.ReadOnly.min_read_timestamp. Old Read Timestamps and Garbage Collection: Cloud Spanner continuously garbage collects deleted and overwritten data in the background to reclaim storage space. This process is known as "version GC". By default, version GC reclaims versions after they are one hour old. Because of this, Cloud Spanner cannot perform reads at read timestamps more than one hour in the past. This restriction also applies to in-progress reads and/or SQL queries whose timestamp become too old while executing. Reads and SQL queries with too-old read timestamps fail with the error `FAILED_PRECONDITION`. Partitioned DML Transactions: Partitioned DML transactions are used to execute DML statements with a different execution strategy that provides different, and often better, scalability properties for large, table-wide operations than DML in a ReadWrite transaction. Smaller scoped statements, such as an OLTP workload, should prefer using ReadWrite transactions. Partitioned DML partitions the keyspace and runs the DML statement on each partition in separate, internal transactions. These transactions commit automatically when complete, and run independently from one another. To reduce lock contention, this execution strategy only acquires read locks on rows that match the WHERE clause of the statement. Additionally, the smaller per-partition transactions hold locks for less time. That said, Partitioned DML is not a drop-in replacement for standard DML used in ReadWrite transactions. - The DML statement must be fully-partitionable. Specifically, the statement must be expressible as the union of many statements which each access only a single row of the table. - The statement is not applied atomically to all rows of the table. Rather, the statement is applied atomically to partitions of the table, in independent transactions. Secondary index rows are updated atomically with the base table rows. - Partitioned DML does not guarantee exactly-once execution semantics against a partition. The statement will be applied at least once to each partition. It is strongly recommended that the DML statement should be idempotent to avoid unexpected results. For instance, it is potentially dangerous to run a statement such as `UPDATE table SET column = column + 1` as it could be run multiple times against some rows. - The partitions are committed automatically - there is no support for Commit or Rollback. If the call returns an error, or if the client issuing the ExecuteSql call dies, it is possible that some rows had the statement executed on them successfully. It is also possible that statement was never executed against other rows. - Partitioned DML transactions may only contain the execution of a single DML statement via ExecuteSql or ExecuteStreamingSql. - If any error is encountered during the execution of the partitioned DML operation (for instance, a UNIQUE INDEX violation, division by zero, or a value that cannot be stored due to schema constraints), then the operation is stopped at that point and an error is returned. It is possible that at this point, some partitions have been committed (or even committed multiple times), and other partitions have not been run at all. Given the above, Partitioned DML is good fit for large, database-wide, operations that are idempotent, such as deleting old rows from a very large table. */ export interface Schema$TransactionOptions { /** diff --git a/src/apis/sqladmin/index.ts b/src/apis/sqladmin/index.ts index 111ed12a7ed..2f5352da281 100644 --- a/src/apis/sqladmin/index.ts +++ b/src/apis/sqladmin/index.ts @@ -14,25 +14,34 @@ /*! THIS FILE IS AUTO-GENERATED */ import {AuthPlus, getAPI, GoogleConfigurable} from 'googleapis-common'; +import {sqladmin_v1} from './v1'; import {sqladmin_v1beta4} from './v1beta4'; export const VERSIONS = { + v1: sqladmin_v1.Sqladmin, v1beta4: sqladmin_v1beta4.Sqladmin, }; +export function sqladmin(version: 'v1'): sqladmin_v1.Sqladmin; +export function sqladmin(options: sqladmin_v1.Options): sqladmin_v1.Sqladmin; export function sqladmin(version: 'v1beta4'): sqladmin_v1beta4.Sqladmin; export function sqladmin( options: sqladmin_v1beta4.Options ): sqladmin_v1beta4.Sqladmin; -export function sqladmin( +export function sqladmin( this: GoogleConfigurable, - versionOrOptions: 'v1beta4' | sqladmin_v1beta4.Options + versionOrOptions: + | 'v1' + | sqladmin_v1.Options + | 'v1beta4' + | sqladmin_v1beta4.Options ) { return getAPI('sqladmin', versionOrOptions, VERSIONS, this); } const auth = new AuthPlus(); export {auth}; +export {sqladmin_v1}; export {sqladmin_v1beta4}; export { AuthPlus, diff --git a/src/apis/sqladmin/v1.ts b/src/apis/sqladmin/v1.ts new file mode 100644 index 00000000000..6f9869d8b3e --- /dev/null +++ b/src/apis/sqladmin/v1.ts @@ -0,0 +1,124 @@ +// Copyright 2020 Google LLC +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +/* eslint-disable @typescript-eslint/no-explicit-any */ +/* eslint-disable @typescript-eslint/class-name-casing */ +/* eslint-disable @typescript-eslint/no-unused-vars */ +/* eslint-disable @typescript-eslint/no-empty-interface */ +/* eslint-disable @typescript-eslint/no-namespace */ +/* eslint-disable no-irregular-whitespace */ + +import { + OAuth2Client, + JWT, + Compute, + UserRefreshClient, + BaseExternalAccountClient, + GaxiosPromise, + GoogleConfigurable, + createAPIRequest, + MethodOptions, + StreamMethodOptions, + GlobalOptions, + GoogleAuth, + BodyResponseCallback, + APIRequestContext, +} from 'googleapis-common'; +import {Readable} from 'stream'; + +export namespace sqladmin_v1 { + export interface Options extends GlobalOptions { + version: 'v1'; + } + + interface StandardParameters { + /** + * Auth client or API Key for the request + */ + auth?: + | string + | OAuth2Client + | JWT + | Compute + | UserRefreshClient + | BaseExternalAccountClient + | GoogleAuth; + + /** + * V1 error format. + */ + '$.xgafv'?: string; + /** + * OAuth access token. + */ + access_token?: string; + /** + * Data format for response. + */ + alt?: string; + /** + * JSONP + */ + callback?: string; + /** + * Selector specifying which fields to include in a partial response. + */ + fields?: string; + /** + * API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. + */ + key?: string; + /** + * OAuth 2.0 token for the current user. + */ + oauth_token?: string; + /** + * Returns response with indentations and line breaks. + */ + prettyPrint?: boolean; + /** + * Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. + */ + quotaUser?: string; + /** + * Legacy upload protocol for media (e.g. "media", "multipart"). + */ + uploadType?: string; + /** + * Upload protocol for media (e.g. "raw", "multipart"). + */ + upload_protocol?: string; + } + + /** + * Cloud SQL Admin API + * + * API for Cloud SQL database instance management + * + * @example + * ```js + * const {google} = require('googleapis'); + * const sqladmin = google.sqladmin('v1'); + * ``` + */ + export class Sqladmin { + context: APIRequestContext; + + constructor(options: GlobalOptions, google?: GoogleConfigurable) { + this.context = { + _options: options || {}, + google, + }; + } + } +} diff --git a/src/apis/transcoder/v1beta1.ts b/src/apis/transcoder/v1beta1.ts index 9d2a62cdba1..52156bb5e22 100644 --- a/src/apis/transcoder/v1beta1.ts +++ b/src/apis/transcoder/v1beta1.ts @@ -441,7 +441,7 @@ export namespace transcoder_v1beta1 { */ export interface Schema$Image { /** - * Target image opacity. Valid values: `1.0` (solid, default) to `0.0` (transparent). + * Target image opacity. Valid values are from `1.0` (solid, default) to `0.0` (transparent), exclusive. Set this to a value greater than `0.0`. */ alpha?: number | null; /** @@ -696,31 +696,31 @@ export namespace transcoder_v1beta1 { */ export interface Schema$OperationMetadata { /** - * [Output only] API version used to start the operation. + * Output only. API version used to start the operation. */ apiVersion?: string | null; /** - * [Output only] Identifies whether the user has requested cancellation of the operation. Operations that have successfully been cancelled have Operation.error value with a google.rpc.Status.code of 1, corresponding to `Code.CANCELLED`. + * Output only. Identifies whether the user has requested cancellation of the operation. Operations that have successfully been cancelled have Operation.error value with a google.rpc.Status.code of 1, corresponding to `Code.CANCELLED`. */ cancelRequested?: boolean | null; /** - * [Output only] The time the operation was created. + * Output only. The time the operation was created. */ createTime?: string | null; /** - * [Output only] The time the operation finished running. + * Output only. The time the operation finished running. */ endTime?: string | null; /** - * [Output only] Human-readable status of the operation, if any. + * Output only. Human-readable status of the operation, if any. */ statusDetail?: string | null; /** - * [Output only] Server-defined resource path for the target of the operation. + * Output only. Server-defined resource path for the target of the operation. */ target?: string | null; /** - * [Output only] Name of the verb executed by the operation. + * Output only. Name of the verb executed by the operation. */ verb?: string | null; } diff --git a/src/apis/translate/v3.ts b/src/apis/translate/v3.ts index 0713baec1b1..8fe782146ac 100644 --- a/src/apis/translate/v3.ts +++ b/src/apis/translate/v3.ts @@ -142,7 +142,7 @@ export namespace translate_v3 { */ labels?: {[key: string]: string} | null; /** - * Optional. The models to use for translation. Map's key is target language code. Map's value is model name. Value can be a built-in general model, or an AutoML Translation model. The value format depends on model type: - AutoML Translation models: `projects/{project-number-or-id\}/locations/{location-id\}/models/{model-id\}` - General (built-in) models: `projects/{project-number-or-id\}/locations/{location-id\}/models/general/nmt`, `projects/{project-number-or-id\}/locations/{location-id\}/models/general/base` If the map is empty or a specific model is not requested for a language pair, then default google model (nmt) is used. + * Optional. The models to use for translation. Map's key is target language code. Map's value is model name. Value can be a built-in general model, or an AutoML Translation model. The value format depends on model type: - AutoML Translation models: `projects/{project-number-or-id\}/locations/{location-id\}/models/{model-id\}` - General (built-in) models: `projects/{project-number-or-id\}/locations/{location-id\}/models/general/nmt`, If the map is empty or a specific model is not requested for a language pair, then default google model (nmt) is used. */ models?: {[key: string]: string} | null; /** @@ -483,7 +483,7 @@ export namespace translate_v3 { */ mimeType?: string | null; /** - * Optional. The `model` type requested for this translation. The format depends on model type: - AutoML Translation models: `projects/{project-number-or-id\}/locations/{location-id\}/models/{model-id\}` - General (built-in) models: `projects/{project-number-or-id\}/locations/{location-id\}/models/general/nmt`, `projects/{project-number-or-id\}/locations/{location-id\}/models/general/base` For global (non-regionalized) requests, use `location-id` `global`. For example, `projects/{project-number-or-id\}/locations/global/models/general/nmt`. If missing, the system decides which google base model to use. + * Optional. The `model` type requested for this translation. The format depends on model type: - AutoML Translation models: `projects/{project-number-or-id\}/locations/{location-id\}/models/{model-id\}` - General (built-in) models: `projects/{project-number-or-id\}/locations/{location-id\}/models/general/nmt`, For global (non-regionalized) requests, use `location-id` `global`. For example, `projects/{project-number-or-id\}/locations/global/models/general/nmt`. If not provided, the default Google model (NMT) will be used */ model?: string | null; /** @@ -726,7 +726,7 @@ export namespace translate_v3 { * const res = await translate.projects.getSupportedLanguages({ * // Optional. The language to use to return localized, human readable names of supported languages. If missing, then display names are not returned in a response. * displayLanguageCode: 'placeholder-value', - * // Optional. Get supported languages of this model. The format depends on model type: - AutoML Translation models: `projects/{project-number-or-id\}/locations/{location-id\}/models/{model-id\}` - General (built-in) models: `projects/{project-number-or-id\}/locations/{location-id\}/models/general/nmt`, `projects/{project-number-or-id\}/locations/{location-id\}/models/general/base` Returns languages supported by the specified model. If missing, we get supported languages of Google general base (PBMT) model. + * // Optional. Get supported languages of this model. The format depends on model type: - AutoML Translation models: `projects/{project-number-or-id\}/locations/{location-id\}/models/{model-id\}` - General (built-in) models: `projects/{project-number-or-id\}/locations/{location-id\}/models/general/nmt`, Returns languages supported by the specified model. If missing, we get supported languages of Google general NMT model. * model: 'placeholder-value', * // Required. Project or location to make a call. Must refer to a caller's project. Format: `projects/{project-number-or-id\}` or `projects/{project-number-or-id\}/locations/{location-id\}`. For global calls, use `projects/{project-number-or-id\}/locations/global` or `projects/{project-number-or-id\}`. Non-global location is required for AutoML models. Only models within the same region (have same location-id) can be used, otherwise an INVALID_ARGUMENT (400) error is returned. * parent: 'projects/my-project', @@ -1009,7 +1009,7 @@ export namespace translate_v3 { */ displayLanguageCode?: string; /** - * Optional. Get supported languages of this model. The format depends on model type: - AutoML Translation models: `projects/{project-number-or-id\}/locations/{location-id\}/models/{model-id\}` - General (built-in) models: `projects/{project-number-or-id\}/locations/{location-id\}/models/general/nmt`, `projects/{project-number-or-id\}/locations/{location-id\}/models/general/base` Returns languages supported by the specified model. If missing, we get supported languages of Google general base (PBMT) model. + * Optional. Get supported languages of this model. The format depends on model type: - AutoML Translation models: `projects/{project-number-or-id\}/locations/{location-id\}/models/{model-id\}` - General (built-in) models: `projects/{project-number-or-id\}/locations/{location-id\}/models/general/nmt`, Returns languages supported by the specified model. If missing, we get supported languages of Google general NMT model. */ model?: string; /** @@ -1506,7 +1506,7 @@ export namespace translate_v3 { * const res = await translate.projects.locations.getSupportedLanguages({ * // Optional. The language to use to return localized, human readable names of supported languages. If missing, then display names are not returned in a response. * displayLanguageCode: 'placeholder-value', - * // Optional. Get supported languages of this model. The format depends on model type: - AutoML Translation models: `projects/{project-number-or-id\}/locations/{location-id\}/models/{model-id\}` - General (built-in) models: `projects/{project-number-or-id\}/locations/{location-id\}/models/general/nmt`, `projects/{project-number-or-id\}/locations/{location-id\}/models/general/base` Returns languages supported by the specified model. If missing, we get supported languages of Google general base (PBMT) model. + * // Optional. Get supported languages of this model. The format depends on model type: - AutoML Translation models: `projects/{project-number-or-id\}/locations/{location-id\}/models/{model-id\}` - General (built-in) models: `projects/{project-number-or-id\}/locations/{location-id\}/models/general/nmt`, Returns languages supported by the specified model. If missing, we get supported languages of Google general NMT model. * model: 'placeholder-value', * // Required. Project or location to make a call. Must refer to a caller's project. Format: `projects/{project-number-or-id\}` or `projects/{project-number-or-id\}/locations/{location-id\}`. For global calls, use `projects/{project-number-or-id\}/locations/global` or `projects/{project-number-or-id\}`. Non-global location is required for AutoML models. Only models within the same region (have same location-id) can be used, otherwise an INVALID_ARGUMENT (400) error is returned. * parent: 'projects/my-project/locations/my-location', @@ -1952,7 +1952,7 @@ export namespace translate_v3 { */ displayLanguageCode?: string; /** - * Optional. Get supported languages of this model. The format depends on model type: - AutoML Translation models: `projects/{project-number-or-id\}/locations/{location-id\}/models/{model-id\}` - General (built-in) models: `projects/{project-number-or-id\}/locations/{location-id\}/models/general/nmt`, `projects/{project-number-or-id\}/locations/{location-id\}/models/general/base` Returns languages supported by the specified model. If missing, we get supported languages of Google general base (PBMT) model. + * Optional. Get supported languages of this model. The format depends on model type: - AutoML Translation models: `projects/{project-number-or-id\}/locations/{location-id\}/models/{model-id\}` - General (built-in) models: `projects/{project-number-or-id\}/locations/{location-id\}/models/general/nmt`, Returns languages supported by the specified model. If missing, we get supported languages of Google general NMT model. */ model?: string; /** diff --git a/src/apis/translate/v3beta1.ts b/src/apis/translate/v3beta1.ts index f85f9c0c1cb..307881f683f 100644 --- a/src/apis/translate/v3beta1.ts +++ b/src/apis/translate/v3beta1.ts @@ -156,7 +156,7 @@ export namespace translate_v3beta1 { */ inputConfigs?: Schema$BatchDocumentInputConfig[]; /** - * Optional. The models to use for translation. Map's key is target language code. Map's value is the model name. Value can be a built-in general model, or an AutoML Translation model. The value format depends on model type: - AutoML Translation models: `projects/{project-number-or-id\}/locations/{location-id\}/models/{model-id\}` - General (built-in) models: `projects/{project-number-or-id\}/locations/{location-id\}/models/general/nmt`, `projects/{project-number-or-id\}/locations/{location-id\}/models/general/base` If the map is empty or a specific model is not requested for a language pair, then default google model (nmt) is used. + * Optional. The models to use for translation. Map's key is target language code. Map's value is the model name. Value can be a built-in general model, or an AutoML Translation model. The value format depends on model type: - AutoML Translation models: `projects/{project-number-or-id\}/locations/{location-id\}/models/{model-id\}` - General (built-in) models: `projects/{project-number-or-id\}/locations/{location-id\}/models/general/nmt`, If the map is empty or a specific model is not requested for a language pair, then default google model (nmt) is used. */ models?: {[key: string]: string} | null; /** @@ -189,7 +189,7 @@ export namespace translate_v3beta1 { */ labels?: {[key: string]: string} | null; /** - * Optional. The models to use for translation. Map's key is target language code. Map's value is model name. Value can be a built-in general model, or an AutoML Translation model. The value format depends on model type: - AutoML Translation models: `projects/{project-number-or-id\}/locations/{location-id\}/models/{model-id\}` - General (built-in) models: `projects/{project-number-or-id\}/locations/{location-id\}/models/general/nmt`, `projects/{project-number-or-id\}/locations/{location-id\}/models/general/base` If the map is empty or a specific model is not requested for a language pair, then default google model (nmt) is used. + * Optional. The models to use for translation. Map's key is target language code. Map's value is model name. Value can be a built-in general model, or an AutoML Translation model. The value format depends on model type: - AutoML Translation models: `projects/{project-number-or-id\}/locations/{location-id\}/models/{model-id\}` - General (built-in) models: `projects/{project-number-or-id\}/locations/{location-id\}/models/general/nmt`, If the map is empty or a specific model is not requested for a language pair, then default google model (nmt) is used. */ models?: {[key: string]: string} | null; /** @@ -564,7 +564,7 @@ export namespace translate_v3beta1 { */ labels?: {[key: string]: string} | null; /** - * Optional. The `model` type requested for this translation. The format depends on model type: - AutoML Translation models: `projects/{project-number-or-id\}/locations/{location-id\}/models/{model-id\}` - General (built-in) models: `projects/{project-number-or-id\}/locations/{location-id\}/models/general/nmt`, `projects/{project-number-or-id\}/locations/{location-id\}/models/general/base` If not provided, the default Google model (NMT) will be used for translation. + * Optional. The `model` type requested for this translation. The format depends on model type: - AutoML Translation models: `projects/{project-number-or-id\}/locations/{location-id\}/models/{model-id\}` - General (built-in) models: `projects/{project-number-or-id\}/locations/{location-id\}/models/general/nmt`, If not provided, the default Google model (NMT) will be used for translation. */ model?: string | null; /** @@ -631,7 +631,7 @@ export namespace translate_v3beta1 { */ mimeType?: string | null; /** - * Optional. The `model` type requested for this translation. The format depends on model type: - AutoML Translation models: `projects/{project-number-or-id\}/locations/{location-id\}/models/{model-id\}` - General (built-in) models: `projects/{project-number-or-id\}/locations/{location-id\}/models/general/nmt`, `projects/{project-number-or-id\}/locations/{location-id\}/models/general/base` For global (non-regionalized) requests, use `location-id` `global`. For example, `projects/{project-number-or-id\}/locations/global/models/general/nmt`. If missing, the system decides which google base model to use. + * Optional. The `model` type requested for this translation. The format depends on model type: - AutoML Translation models: `projects/{project-number-or-id\}/locations/{location-id\}/models/{model-id\}` - General (built-in) models: `projects/{project-number-or-id\}/locations/{location-id\}/models/general/nmt`, For global (non-regionalized) requests, use `location-id` `global`. For example, `projects/{project-number-or-id\}/locations/global/models/general/nmt`. If not provided, the default Google model (NMT) will be used */ model?: string | null; /** @@ -874,7 +874,7 @@ export namespace translate_v3beta1 { * const res = await translate.projects.getSupportedLanguages({ * // Optional. The language to use to return localized, human readable names of supported languages. If missing, then display names are not returned in a response. * displayLanguageCode: 'placeholder-value', - * // Optional. Get supported languages of this model. The format depends on model type: - AutoML Translation models: `projects/{project-number-or-id\}/locations/{location-id\}/models/{model-id\}` - General (built-in) models: `projects/{project-number-or-id\}/locations/{location-id\}/models/general/nmt`, `projects/{project-number-or-id\}/locations/{location-id\}/models/general/base` Returns languages supported by the specified model. If missing, we get supported languages of Google general base (PBMT) model. + * // Optional. Get supported languages of this model. The format depends on model type: - AutoML Translation models: `projects/{project-number-or-id\}/locations/{location-id\}/models/{model-id\}` - General (built-in) models: `projects/{project-number-or-id\}/locations/{location-id\}/models/general/nmt`, Returns languages supported by the specified model. If missing, we get supported languages of Google general NMT model. * model: 'placeholder-value', * // Required. Project or location to make a call. Must refer to a caller's project. Format: `projects/{project-number-or-id\}` or `projects/{project-number-or-id\}/locations/{location-id\}`. For global calls, use `projects/{project-number-or-id\}/locations/global` or `projects/{project-number-or-id\}`. Non-global location is required for AutoML models. Only models within the same region (have same location-id) can be used, otherwise an INVALID_ARGUMENT (400) error is returned. * parent: 'projects/my-project', @@ -1157,7 +1157,7 @@ export namespace translate_v3beta1 { */ displayLanguageCode?: string; /** - * Optional. Get supported languages of this model. The format depends on model type: - AutoML Translation models: `projects/{project-number-or-id\}/locations/{location-id\}/models/{model-id\}` - General (built-in) models: `projects/{project-number-or-id\}/locations/{location-id\}/models/general/nmt`, `projects/{project-number-or-id\}/locations/{location-id\}/models/general/base` Returns languages supported by the specified model. If missing, we get supported languages of Google general base (PBMT) model. + * Optional. Get supported languages of this model. The format depends on model type: - AutoML Translation models: `projects/{project-number-or-id\}/locations/{location-id\}/models/{model-id\}` - General (built-in) models: `projects/{project-number-or-id\}/locations/{location-id\}/models/general/nmt`, Returns languages supported by the specified model. If missing, we get supported languages of Google general NMT model. */ model?: string; /** @@ -1802,7 +1802,7 @@ export namespace translate_v3beta1 { * const res = await translate.projects.locations.getSupportedLanguages({ * // Optional. The language to use to return localized, human readable names of supported languages. If missing, then display names are not returned in a response. * displayLanguageCode: 'placeholder-value', - * // Optional. Get supported languages of this model. The format depends on model type: - AutoML Translation models: `projects/{project-number-or-id\}/locations/{location-id\}/models/{model-id\}` - General (built-in) models: `projects/{project-number-or-id\}/locations/{location-id\}/models/general/nmt`, `projects/{project-number-or-id\}/locations/{location-id\}/models/general/base` Returns languages supported by the specified model. If missing, we get supported languages of Google general base (PBMT) model. + * // Optional. Get supported languages of this model. The format depends on model type: - AutoML Translation models: `projects/{project-number-or-id\}/locations/{location-id\}/models/{model-id\}` - General (built-in) models: `projects/{project-number-or-id\}/locations/{location-id\}/models/general/nmt`, Returns languages supported by the specified model. If missing, we get supported languages of Google general NMT model. * model: 'placeholder-value', * // Required. Project or location to make a call. Must refer to a caller's project. Format: `projects/{project-number-or-id\}` or `projects/{project-number-or-id\}/locations/{location-id\}`. For global calls, use `projects/{project-number-or-id\}/locations/global` or `projects/{project-number-or-id\}`. Non-global location is required for AutoML models. Only models within the same region (have same location-id) can be used, otherwise an INVALID_ARGUMENT (400) error is returned. * parent: 'projects/my-project/locations/my-location', @@ -2416,7 +2416,7 @@ export namespace translate_v3beta1 { */ displayLanguageCode?: string; /** - * Optional. Get supported languages of this model. The format depends on model type: - AutoML Translation models: `projects/{project-number-or-id\}/locations/{location-id\}/models/{model-id\}` - General (built-in) models: `projects/{project-number-or-id\}/locations/{location-id\}/models/general/nmt`, `projects/{project-number-or-id\}/locations/{location-id\}/models/general/base` Returns languages supported by the specified model. If missing, we get supported languages of Google general base (PBMT) model. + * Optional. Get supported languages of this model. The format depends on model type: - AutoML Translation models: `projects/{project-number-or-id\}/locations/{location-id\}/models/{model-id\}` - General (built-in) models: `projects/{project-number-or-id\}/locations/{location-id\}/models/general/nmt`, Returns languages supported by the specified model. If missing, we get supported languages of Google general NMT model. */ model?: string; /** diff --git a/src/index.ts b/src/index.ts index 3d2270e5196..7b16841645b 100644 --- a/src/index.ts +++ b/src/index.ts @@ -260,6 +260,7 @@ export {mybusinessplaceactions_v1} from './apis/mybusinessplaceactions/v1'; export {networkconnectivity_v1alpha1} from './apis/networkconnectivity/v1alpha1'; export {networkmanagement_v1} from './apis/networkmanagement/v1'; export {networkmanagement_v1beta1} from './apis/networkmanagement/v1beta1'; +export {networksecurity_v1beta1} from './apis/networksecurity/v1beta1'; export {notebooks_v1} from './apis/notebooks/v1'; export {oauth2_v2} from './apis/oauth2/v2'; export {ondemandscanning_v1} from './apis/ondemandscanning/v1'; @@ -342,6 +343,7 @@ export {speech_v1} from './apis/speech/v1'; export {speech_v1p1beta1} from './apis/speech/v1p1beta1'; export {speech_v2beta1} from './apis/speech/v2beta1'; export {sql_v1beta4} from './apis/sql/v1beta4'; +export {sqladmin_v1} from './apis/sqladmin/v1'; export {sqladmin_v1beta4} from './apis/sqladmin/v1beta4'; export {storage_v1} from './apis/storage/v1'; export {storage_v1beta2} from './apis/storage/v1beta2';